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 2005/05/20 21:22:04 UTC

DO NOT REPLY [Bug 34993] New: - Missing Class-Path entries are ignored, spec violation

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

http://issues.apache.org/bugzilla/show_bug.cgi?id=34993

           Summary: Missing Class-Path entries are ignored, spec violation
           Product: Tomcat 5
           Version: 5.5.9
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
        AssignedTo: tomcat-dev@jakarta.apache.org
        ReportedBy: timshadel@pobox.com


I think this behavior violates the Servlet spec (see below).  If I'm reading it
right, Class-Path entries in the MANIFEST.MF files for *both* WAR files and JAR
files in the WEB-INF/lib must cause the container to reject the application.

>From http://jakarta.apache.org/tomcat/tomcat-5.0-doc/changelog.html
Under 5.0.6: 

"Tomcat will now ignore a non existent classpath JAR (remm)"

>From servlet-2_4-fr-spec.pdf, 9.7.1:

"The application developer depending on such an extension or extensions must
provide a META-INF/MANIFEST.MF entry in the WAR file listing all extensions
needed by theWAR. The format of the manifest entry should follow standard JAR
manifest format. During deployment of the Web application, the Web container
must make the correct versions of the extensions available to the application
following the rules defined by the Optional Package Versioning mechanism (http:/
/java.sun.com/j2se/1.4/docs/guide/extensions/)."

"Web containers must also be able to recognize declared dependencies
expressed in the manifest entry of any of the library JARs under the WEB-INF/lib
entry in a WAR."

"If a Web container is not able to satisfy the dependencies declared in this
manner, it should reject the application with an informative error message."

-----

I found the bug when Tomcat logged a ClassNotFoundException for a class that is
found in a jar listed in the Class-Path entry for my WAR's manifest.  This jar
should have been placed in the TC_HOME\shared\lib directory, but was overlooked
and not copied there.  It would be helpful if Tomcat rejected the WAR with an
informative error message so that the administrator quickly realized that the
environment was not configured properly.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

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