You must import the classes you use in your JSP :

<%@ page import="{package.class | package.*}, ..." ...

Arnaud
 

> -----Message d'origine-----
> De : Greg Brownell [mailto:[EMAIL PROTECTED] 
> Envoyé : mercredi 8 juin 2005 21:34
> À : tomcat-user@jakarta.apache.org
> Objet : Tomcat 5.5.9: NamingException cannot be resolved or 
> is not a type - JNDI, MySQL
> 
> I get the error below when trying to compile/execute a jsp 
> that wants to connect to a MySQL db named
> 
> testdb.  Here's the code snippet from testdb.jsp:
> 
>       InitialContext initCtx = null;
>       DataSource ds = null;
>       Connection conn = null;
>       Statement stmt = null;
>       ResultSet rset = null;
>       try {
>               initCtx = new InitialContext();
> 
>               ds = 
> (DataSource)initCtx.lookup("java:comp/env/jdbc/testdb");
>               conn = ds.getConnection();
>               
>               stmt = conn.createStatement();
>               rset = stmt.executeQuery("select * from subscriber");
> 
> It fails on the lookup with:
> 
> org.apache.jasper.JasperException: Unable to compile class for JSP
> 
> An error occurred at line: 52 in the jsp file: /testdb.jsp 
> Generated servlet error:
> NamingException cannot be resolved or is not a type
> 
> 
>       
> org.apache.jasper.compiler.DefaultErrorHandler.javacError(Defa
> ultErrorHandler.java:84)
>       
> org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDis
> patcher.java:328)
>       
> org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompil
> er.java:397)
>       org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
>       org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
>       org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
>       
> org.apache.jasper.JspCompilationContext.compile(JspCompilation
> Context.java:556)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.java:293)
>       
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:291)
>       
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> 
> I am using MySQL 4.1.12a (Windows nt), Connector/J v 3.1.8 
> Connector/j stuff moved to common/lib
> 
> Tomcat: under webapps, app name testdb.
> testdb/WEB-INF/web.xml:
> <?xml version="1.0" encoding="ISO-8859-1"?> <web-app 
> xmlns="http://java.sun.com/xml/ns/j2ee";
>    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd";
>    version="2.4">
> 
> <display-name>testdb</display-name>
>    <description>
>      db test site
>    </description>
> 
> <resource-ref>
>       <description>Tomcat DBCP</description>
>       <res-ref-name>jdbc/testdb</res-ref-name>
>       <res-type>javax.sql.DataSource</res-type>
>       <res-auth>Container</res-auth>
> </resource-ref>
> </web-app>
> 
> conf/Catalina/localhost/testdb.xml:
> <?xml version="1.0" encoding="UTF-8"?>
> <Context
>   path="/Search"   docBase="Search"
>   debug="1"    crossContext="true"
>    reloadable="true">
> <ResourceLink name="jdbc/testdb" type="javax.sql.DataSource" 
> global="jdbc/testdb"/> </Context>
> 
> conf/server.xml:
>  <GlobalNamingResources>
>    <Environment
>      name="simpleValue"
>      type="java.lang.Integer"
>      value="30"/>
>    <Resource
>      auth="Container"
>      description="User database that can be updated and saved"
>      name="UserDatabase"
>      type="org.apache.catalina.UserDatabase"
>      pathname="conf/tomcat-users.xml"
>      factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>
>  <Resource
>    name="jdbc/testdb"
>    auth="Container"
>    type="javax.sql.DataSource"
>    factory="org.apache.commons.dbcp.BasicDataSourceFactory"
>    username="xxxx"
>    password="yyyy"
>    removeAbandonedTimeout="60"
>    maxActive="4"
>    maxIdle="2"
>    removeAbandoned="true"
>    driverClassName="com.mysql.jdbc.Driver"
>    url="jdbc:mysql://localhost:3306/testdb?autoReconnect=true"/>
>  </GlobalNamingResources>
> 
> Any ideas why this doesn't work?
> 
> By the way, I've tried moving the Resource lines in 
> server.xml to testdb.xml (the context file) and replaced the 
> resource-link.  Same error.
> 
> Thanks in advance.
> 
> Greg.
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to