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 2017/02/20 17:05:49 UTC

[Bug 60753] New: After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

            Bug ID: 60753
           Summary: After upgrade from 8.0.39 to 8.0.41,
                    StandardJarScanner complains about missing jars
           Product: Tomcat 8
           Version: 8.0.41
          Hardware: PC
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: listcraigs86@yahoo.com
  Target Milestone: ----

After an upgrade from Tomcat 8.0.39 to 8.0.41, an application no longer starts.
In the catalina log file, there are many exceptions of the type:

WARNING [localhost-startStop-1] org.apache.tomcat.util.
scan.StandardJarScanner.scan Failed to scan
[file:/usr/share/java/tomcat8/javax.
annotation-api.jar] from classloader hierarchy
 java.io.FileNotFoundException:
/usr/share/java/tomcat8/javax.annotation-api.jar
 (No such file or directory)

The files complained about belong to jaxws-ri. Even after copying all 23 jars
from the jaxws-ri 2.2.10 lib directory to the Tomcat lib directory (per the
documentation of jaxws-ri), exceptions for additional jars apparently
referenced by jaxws-ri (and some with very specific build versions) persist:
jaxb-core-2.2.10-b140802.1033.jar
jaxb-api-2.2.12-b140109.1041.jar
istack-commons-runtime-2.19.jar
txw2-2.2.10-b140802.1033.jar
hk2-core.jar
class-model.jar
config.jar
auto-depends.jar
javax.inject.jar
hk2-api.jar
osgi-resource-locator.jar
tiger-types.jar
bean-validator.jar
jtype.jar

It looks like the jar scanner has suddenly become very picky about the presence
of all these files, even though the application works perfectly fine without
them. Please restore the more permissive operation of the scanner from 8.0.39.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

Remy Maucherat <re...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |NEEDINFO

--- Comment #3 from Remy Maucherat <re...@apache.org> ---
The addition of the scanManifest flag was made in 8.0.38, and the default was
already to scan the manifest (it was not possible to disable it), so there are
some issues somewhere with your statements. There has been no relevant update
of the skip list either.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

listcraigs86@yahoo.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|INVALID                     |---

--- Comment #6 from listcraigs86@yahoo.com ---
(In reply to Chuck Caldarale from comment #5)
> As stated previously, configuration discussions belong on the users' mailing
> list, not in bugzilla.  Post your query there.

Sorry, but I disagree. The default value is clearly *hard-coded* in Tomcat, and
it appears that the resulting behavior is different between versions 8.0.39 and
8.0.41, even though it is claimed to be the same. So, this is not a user
configuration issue per se, it is a code issue.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

listcraigs86@yahoo.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|INVALID                     |---
             Status|RESOLVED                    |REOPENED

--- Comment #2 from listcraigs86@yahoo.com ---
(In reply to Violeta Georgieva from comment #1)

In the context.xml of the existing Tomcat 8.0.39 installation on AWS, I do not
see this setting at all. The documentation for version 8.0.41 says the default
for this setting is true. This tells me that the default changed from false in
8.0.39 to true in 8.0.41. This is an unexpected change of behavior between
minor versions of Tomcat. I consider this a bug.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

Chuck Caldarale <ch...@unisys.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEEDINFO                    |RESOLVED
         Resolution|---                         |INVALID

--- Comment #5 from Chuck Caldarale <ch...@unisys.com> ---
As stated previously, configuration discussions belong on the users' mailing
list, not in bugzilla.  Post your query there.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

Violeta Georgieva <vi...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |INVALID
             Status|REOPENED                    |RESOLVED

--- Comment #7 from Violeta Georgieva <vi...@apache.org> ---
(In reply to listcraigs86 from comment #6)
> (In reply to Chuck Caldarale from comment #5)
> > As stated previously, configuration discussions belong on the users' mailing
> > list, not in bugzilla.  Post your query there.
> 
> Sorry, but I disagree. The default value is clearly *hard-coded* in Tomcat,
> and it appears that the resulting behavior is different between versions
> 8.0.39 and 8.0.41, even though it is claimed to be the same. So, this is not
> a user configuration issue per se, it is a code issue.

Ok

I did the following test
- downloaded Tomcat 8.0.39 from tomcat.apache.org (the official distribution)
- downloaded jaxws-ri 2.2.10 from https://jax-ws.java.net/2.2.10/
- copied the *.jar files from jaxws-ri/lib to <Tomcat-Home>/lib

The observed behavior is the same as with Tomcat 8.0.41

I'm closing this one. If you provide a clear step by step reproducible scenario
you can reopen it. 

Regards,
Violeta

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

--- Comment #4 from listcraigs86@yahoo.com ---
(In reply to Remy Maucherat from comment #3)
> The addition of the scanManifest flag was made in 8.0.38, and the default
> was already to scan the manifest (it was not possible to disable it), so
> there are some issues somewhere with your statements.

OK, so in /usr/share/java/tomcat8 of the existing installation, I issue the
following command:

java -cp catalina.jar org.apache.catalina.util.ServerInfo

and get the following output:

Server version: Apache Tomcat/8.0.39
Server built:   Dec 19 2016 19:32:05 UTC
Server number:  8.0.39.0
OS Name:        Linux
OS Version:     4.4.44-39.55.amzn1.x86_64
Architecture:   amd64
JVM Version:    1.8.0_121-b13
JVM Vendor:     Oracle Corporation

This is the content of context.xml (with the initial licensing comment
shortened for brevity):

<?xml version='1.0' encoding='utf-8'?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  ...
-->
<!-- The contents of this file will be loaded for each web application -->
<Context>

    <!-- Default set of monitored resources. If one of these changes, the   
-->
    <!-- web application will be reloaded.                                  
-->
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>

    <!-- Uncomment this to disable session persistence across Tomcat restarts
-->
    <!--
    <Manager pathname="" />
    -->

    <!-- Uncomment this to enable Comet connection tacking (provides events
         on session expiration as well as webapp lifecycle) -->
    <!--
    <Valve className="org.apache.catalina.valves.CometConnectionManagerValve"
/>
    -->
</Context>

As you see, this is Tomcat version 8.0.39 and there is no scanManifest setting
in context.xml, so a default value of this setting has to be used (you stated
that the setting was introduced in 8.0.38). If the default is true, then the
jar scan in 8.0.39 should result in the same exceptions as in 8.0.41. But it
does not -- the application starts and works perfectly fine.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 60753] After upgrade from 8.0.39 to 8.0.41, StandardJarScanner complains about missing jars

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=60753

Violeta Georgieva <vi...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 OS|                            |All
         Resolution|---                         |INVALID

--- Comment #1 from Violeta Georgieva <vi...@apache.org> ---
Hi,

Put in your context.xml the following configuration:

<Context>
  ...
  <JarScanner scanManifest="false"/>
  ...
</Context>

https://tomcat.apache.org/tomcat-8.0-doc/config/jar-scanner.html#Standard_Implementation

Please use tomcat users list when you need help for Tomcat configuration.

Best Regards,
Violeta Georgieva

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org