Ho un codice di esempio in questo modo:javax.naming.NameNotFoundException nel molo ma non in Tomcat. Come risolvere?
ConnectionPool.dataSource = (DataSource) initialContext.lookup("java:comp/env/jdbc/murach");
e in webapp/META-INF/context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="jdbc/murach"
auth="Container"
type="javax.sql.DataSource"
username="root"
--- Rest of the text ---/>
</Context>
Quando schiero questa applicazione Web per Tomcat, connessione DB va bene , tuttavia quando provo con molo utilizzando Jetty Plugin con: pontile: run-guerra
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.2.1.v20140609</version>
<configuration>
<scanIntervalSeconds>2</scanIntervalSeconds>
<httpConnector>
<port>8082</port>
</httpConnector>
<webApp>
<contextPath>/</contextPath>
</webApp>
</configuration>
</plugin>
sto ottenendo:
javax.naming.NameNotFoundException; remaining name 'jdbc/murach'
Come posso fare questo lavoro con molo come bene?
Ho anche provato ad aggiungere
<resource-ref>
<description>murach</description>
<res-ref-name>jdbc/murach</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
a web.xml, ma ora sto ottenendo:
java.lang.IllegalStateException: Nothing to bind for name javax.sql.DataSource/default
Questa origine dati è definita per il server Jetty? [https://wiki.eclipse.org/Jetty/Howto/Configure_JNDI_Datasource](https://wiki.eclipse.org/Jetty/Howto/Configure_JNDI_Datasource) –
@Koray Tugay Vedi la risposta di m.hassaballah sotto. Stai definendo la tua origine dati nel tuo file web.xml come una risorsa, non solo in Context.xml. –
Voglio solo sapere ...La mia risposta è stata utile o ci sono dei problemi nell'usare l'approccio suggerito? – svaor