- This topic has 6 replies, 3 voices, and was last updated 19 years, 1 month ago by
SEanLon11.
-
AuthorPosts
-
SEanLon11MemberI am trying to import a jar that I have created (contactmanager.jar) into my JSP page so that I can access its functionallity. Here is what I have so far for my imports:
<%@ page language="java" %> <%@ page import="java.sql.*" %> <%@ page import="java.util.Date" %> <%@ page import="contactmanager.dbclasses.clients" %> <%@ page errorPage="error.jsp" %>
I have an error on the contactmanager.dbclasses.clients import. Any help would be appreciated.
Thanks,
Sean
zambizziMemberWhat is the error? Is it telling you that the class can’t be found? Did you add a reference to the jar in the project preferences?
SEanLon11MemberThere error is as follows:
HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: Unable to compile class for JSP An error occurred at line: 38 in the jsp file: /createClient.jsp Generated servlet error: [javac] Compiling 1 source file C:\tomcat\work\Catalina\localhost\contactmanager1\org\apache\jsp\createClient_jsp.java:8: package contactmanager.contact does not exist import contactmanager.contact.Contact; ^ C:\tomcat\work\Catalina\localhost\contactmanager1\org\apache\jsp\createClient_jsp.java:109: cannot find symbol symbol : class Contact location: class org.apache.jsp.createClient_jsp Contact c = new Contact(); ^ An error occurred at line: 38 in the jsp file: /createClient.jsp Generated servlet error: C:\tomcat\work\Catalina\localhost\contactmanager1\org\apache\jsp\createClient_jsp.java:109: cannot find symbol symbol : class Contact location: class org.apache.jsp.createClient_jsp Contact c = new Contact(); ^
My project name is ContactManager1, and I have placed my contactmanager.jar into the ContactManager1/web-inf/lib directory.
SEanLon11MemberI have changed my import to the following:
<%@ import="contactmanager.src.dbclasses.contacts.Contact" %>
However, now I get a new error, which appears to mean that Tomcat does not recognize the directory of the import.
Here is the error in Tomcat:
HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: /createClient.jsp(4,4) Invalid directive org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:83) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:402) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:126) org.apache.jasper.compiler.Parser.parseDirective(Parser.java:546) org.apache.jasper.compiler.Parser.parseElements(Parser.java:1577) org.apache.jasper.compiler.Parser.parse(Parser.java:171) org.apache.jasper.compiler.ParserController.doParse(ParserController.java:258) org.apache.jasper.compiler.ParserController.parse(ParserController.java:139) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:237) org.apache.jasper.compiler.Compiler.compile(Compiler.java:456) org.apache.jasper.compiler.Compiler.compile(Compiler.java:439) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:553) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:291) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248) javax.servlet.http.HttpServlet.service(HttpServlet.java:856) note The full stack trace of the root cause is available in the Tomcat logs.
Any help would be appreciated.
SEanLon11MemberOk, I fixed the above problem (at least got around that problem) with the following:
<%@ page import="dbclasses.contacts.Contact" %>
But now, I have a new problem: Whenever I try to create a new Contact, it blows up pretty bad. Here is the logfile:
The server log shows: 2006-03-19 15:40:59 StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception org.apache.jasper.JasperException: Unable to compile class for JSP An error occurred at line: -1 in the jsp file: null Generated servlet error: [javac] Compiling 1 source file C:\tomcat\work\Catalina\localhost\contactmanager1\org\apache\jsp\createClient_jsp.java:8: package dbclassess.contacts does not exist import dbclassess.contacts.Contact; ^ Note: C:\tomcat\work\Catalina\localhost\contactmanager1\org\apache\jsp\createClient_jsp.java uses or overrides a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: C:\tomcat\work\Catalina\localhost\contactmanager1\org\apache\jsp\createClient_jsp.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. 1 error at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:127) at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:351) at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:415) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:458) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:439) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:553) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:291) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688) at java.lang.Thread.run(Thread.java:595)
It appears that my fix of <%@ page import=”dbclasses.contacts.Contact” %> may not have exactly worked b/c Tomcat apparently does not recognize the package.
I’ve been stuck a while, so if you see anything obvious, or any suggestions, please let me know.
Thanks,
Sean
Riyad KallaMemberSean,
It looks like you are getting started with Java as well as doing JSPs, a tricky combination. If you look at your original post and then you last one, your package has changed. open up your Contact Java file, look at the top for the package BLAHBLAH; statement, whatever that BLAH BLAH is, put it in your jsp page like this:
<%@ page import=”BLAHBLAH.Contact” %>the problem si your package is invalid.
SEanLon11MemberI found the problem. In my Ant build script, I told it to also include the .jar’s in the project /lib directory. However, for some unknown reason, these jars were not being accessed within Tomcat. I simply put ALL of the jars (in addition to my contactmanager.jar) into the /web-inf/lib directory.
I would still like to know why Tomcat did not recognize the jars within my jar, but I’ll look at that later.
Thanks for your help,
Sean -
AuthorPosts