[JAVA / JNDI] Name JDBC is nout bound in this context

Pagina: 1
Acties:

  • Creatinus
  • Registratie: September 2004
  • Laatst online: 13-02 20:36
Hopelijk heeft er iemand hier meer verstand van JNDI, Apache Tomcat en Java dan ik, want ik kom er niet uit. Volgens alles documentatie op de Tomcat site en andere pagina's die ik heb opgezocht met google zou het moeten werken.... maar ik snap er niets meer van, vandaar dat ik hier kom voor de hulp.

allereerst hier de relevante code:

Server.xm van Tomcat
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<Context path="/cs" docBase="cs" debug="5" reloadable="true" crossContext="true">
  <Resource name="jdbc/jsk" auth="Container" type="javax.sql.DataSource" />
 <ResourceParams name="jdbc/jsk">
 <parameter>
  <name>factory</name> 
  <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> 
  </parameter>
 <parameter>
  <name>driverClassName</name> 
  <value>com.sybase.jdbc2.jdbc.SybDriver</value> 
  </parameter>
 <parameter>
  <name>driverName</name> 
  <value>jdbc:sybase:Tds:localhost:2638/jsk</value> 
  </parameter>
 <parameter>
  <name>url</name> 
  <value>jdbc:sybase:Tds:localhost:2638/jsk</value> 
  </parameter>
 <parameter>
  <name>username</name> 
  <value>csuser</value> 
  </parameter>
 <parameter>
  <name>password</name> 
  <value>csuser</value> 
  </parameter>
 <parameter>
  <name>maxActive</name> 
  <value>20</value> 
  </parameter>
 <parameter>
  <name>maxIdle</name> 
  <value>10</value> 
  </parameter>
 <parameter>
  <name>maxWait</name> 
  <value>-1</value> 
  </parameter>
  </ResourceParams>
</Context>


web.xml van de applicatie
code:
1
2
3
4
5
6
7
8
9
<web-app>
  <description>AssemblerApp</description>
  <resource-ref>
      <description>DB Connection</description>
      <res-ref-name>jdbc/jsk</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
  </resource-ref>
</web-app>


en de Java code uit de betreffende DB Connection Manager class
code:
1
2
3
4
5
6
7
8
9
public Connection getConnection() throws Exception
    {
        InitialContext              ctx     =       new InitialContext();
        ConnectionPoolDataSource    cpds    =       (ConnectionPoolDataSource)ctx.lookup("java:comp/env/jdbc/jsk");
        PooledConnection            pc      =       cpds.getPooledConnection();
        Connection                  conn    =       pc.getConnection();
       
        return conn;
    }


Het probleem is dat ik op mijn betreffende JSP pagina de foutmelding krijg:
Name JDBC is not bound in this context
Echter is bovenstaande code toch de code volgens de conventies en in de juiste bestanden zou ik zeggen, maar blijkbaar toch niet want..... 'hij doet het nieeeeet'... Volgens mij heb ik geen tikfouten gemaakt, maar wie weet ziet een frisse geest die in een oogopslag...

Iemand zin in dit probleem? Ik blijf zelf ook zoeken, maar ik denk dat ik het hele internet al 2x gehad heb! 8)7

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Je moet je datasource nog toevoegen aan je conf/context.xml
XML:
1
<ResourceLink global="jdbc/jsk" name="jdbc/jsk" type="javax.sql.DataSource"/> 

en dan Tomcat even herstarten..