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
> � : [email protected]
> 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]