You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2003/04/11 21:26:45 UTC

DO NOT REPLY [Bug 18970] New: - fails to compile an import if it is in the unnamed package

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=18970>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=18970

fails to compile an import if it is in the unnamed package

           Summary: fails to compile an import if it is in the unnamed
                    package
           Product: Tomcat 4
           Version: 4.1.24
          Platform: PC
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Jasper 2
        AssignedTo: tomcat-dev@jakarta.apache.org
        ReportedBy: bert@gildrum.com


Looks like the java compiler included in Tomcat 4.x is failing to compile 
an import statement if the class it refers to belongs to the "unnamed package"

see 
http://java.sun.com/docs/books/jls/second_edition/html/packages.doc.html#26639
for info on "unnamed package"

- see the various supporting info below.
- note that ACJJspBean is a public class in the "unnamed package"
- also FYI the ACJJspBean.class file is in <context>/WEB-INF/classes

As far as I can tell, this is supposed to be a legal use of an import statement.
And yes, it is from an example piece of code from a 3rd party package

------------- version and environment stuff ---------

JVM: Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_02-b06)
OS: Win2K professional 5.00.2195 Service Pack 3
CPU: Intel(R) Celeron(R) CPU 1.70GHz AT/AT COMPATIBLE
Tomcat: jakarta-tomcat-4.1.24-LE-jdk14 (downloaded on 20030411)
Memory: 646,640 KB RAM

------------ snippet from input JSP file -----------
<%@ page import = "ACJJspBean" %>

<jsp:useBean id="erwbean" class="ACJJspBean" scope="session"/>

------------ snippet from generated java file -----------
package org.apache.jsp;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import org.apache.jasper.runtime.*;
import ACJJspBean;

public class acjjspdemo_jsp extends HttpJspBase {


  private static java.util.Vector _jspx_includes;

  public java.util.List getIncludes() {
    return _jspx_includes;
  }

  public void _jspService(HttpServletRequest request, HttpServletResponse 
response)
        throws java.io.IOException, ServletException {

----------- error reported on html output to browser ----------------
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] Since fork is true, ignoring compiler setting.
    [javac] Compiling 1 source file
    [javac] Since fork is true, ignoring compiler setting.
    [javac] C:\jakarta-tomcat-4.1.24-LE-jdk14
\work\Standalone\localhost\test\acjjspdemo_jsp.java:7: '.' expected
    [javac] import ACJJspBean;
    [javac]                  ^
    [javac] C:\jakarta-tomcat-4.1.24-LE-jdk14
\work\Standalone\localhost\test\acjjspdemo_jsp.java:44: cannot resolve symbol
    [javac] symbol  : class ACJJspBean 
    [javac] location: class org.apache.jsp.acjjspdemo_jsp
    [javac]       ACJJspBean erwbean = null;
    [javac]       ^
    [javac] C:\jakarta-tomcat-4.1.24-LE-jdk14
\work\Standalone\localhost\test\acjjspdemo_jsp.java:46: cannot resolve symbol
    [javac] symbol  : class ACJJspBean 
    [javac] location: class org.apache.jsp.acjjspdemo_jsp
    [javac]         erwbean = (ACJJspBean) pageContext.getAttribute("erwbean", 
PageContext.SESSION_SCOPE);
    [javac]                    ^
    [javac] C:\jakarta-tomcat-4.1.24-LE-jdk14
\work\Standalone\localhost\test\acjjspdemo_jsp.java:49: cannot resolve symbol
    [javac] symbol  : class ACJJspBean 
    [javac] location: class org.apache.jsp.acjjspdemo_jsp
    [javac]             erwbean = (ACJJspBean) java.beans.Beans.instantiate
(this.getClass().getClassLoader(), "ACJJspBean");
    [javac]                        ^
    [javac] 4 errors



	at org.apache.jasper.compiler.DefaultErrorHandler.javacError
(DefaultErrorHandler.java:130)
	at org.apache.jasper.compiler.ErrorDispatcher.javacError
(ErrorDispatcher.java:293)
	at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:353)
	at org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
	at org.apache.jasper.JspCompilationContext.compile
(JspCompilationContext.java:473)
	at org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:190)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:295)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:256)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:191)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2415)
	at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:180)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
	at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:171)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:641)
	at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:172)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:641)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:174)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at org.apache.coyote.tomcat4.CoyoteAdapter.service
(CoyoteAdapter.java:223)
	at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:594)
	at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnectio
n(Http11Protocol.java:392)
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:565)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:619)
	at java.lang.Thread.run(Thread.java:536)

------------ error in Catalina NT console --------------------
Compile failed; see the compiler error output for details.
        at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:842)
        at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:682)
        at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:317)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
        at org.apache.jasper.JspCompilationContext.compile
(JspCompilationContext.java:473)
        at org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:190)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:295)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:256)
        at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:191)
        at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2415)
        at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:180)
        at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:171)
        at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:641)
        at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:172)
        at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:641)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:174)
        at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNex
t(StandardPipeline.java:643)
        at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service
(CoyoteAdapter.java:223)
        at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:594)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnectio
n(Http11Protocol.java:392)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:565)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:619)
        at java.lang.Thread.run(Thread.java:536)

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org