2015-01-13 14:18 GMT+03:00 Peter Lavin <[email protected]>: > > Hi all, I have deployed a simple (Eclipse developed) webservice in a Tomcat7 > container which is running on Debian, details as follows... > > The error is as follows... (abridged, but it is complaining about missing a > file called pulse-java.jar) > > INFO: Deploying web application archive > /var/lib/tomcat7/webapps/SecureServiceExample.war > Jan 12, 2015 3:03:01 PM org.apache.catalina.startup.TldConfig tldScanJar > WARNING: Failed to process JAR > [jar:file:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext/pulse-java.jar!/] > for TLD files > java.io.FileNotFoundException: > /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext/pulse-java.jar (No such file > or directory) > at java.util.zip.ZipFile.open(Native Method) > at java.util.zip.ZipFile.<init>(ZipFile.java:215) > at java.util.zip.ZipFile.<init>(ZipFile.java:145)
1) It is a warning, not an error. 2) If Tomcat attempts to scan the file, it means that the file is listed by the System classloader (or some other classloader in classloader hierarchy). I do not know how system classpath is configured on your system. It is either auto-detected (and thus the file exists, but maybe it is not readable), or there is some system configuration file for java that has a stale value. E.g. if you are launching it from within Eclipse IDE it may be listed in your Java Runtime configuration. Some versions of Java 7 certainly do have pulse-java.jar. It is in "ext" directory, so it is not part of the core JRE, but an extension. Maybe there is a separate package that installs it? Quick googling finds a mention that it was removed between 7u51 and 7u71. https://bugs.launchpad.net/ubuntu/+source/openjdk-7/+bug/1389493 3) Consider upgrading your Tomcat version. https://wiki.apache.org/tomcat/FAQ/Linux_Unix#Q5 Current versions of Tomcat 7 do not scan pulse-java.jar for TLDs. A) since 7.0.30 (r1377297) pulse-java.jar is explicitly included into tomcat.util.scan.DefaultJarScanner.jarsToSkip value in catalina.properties B) since 7.0.38 (r1448831) Tomcat skips scanning of all JRE JARs as a whole. 4) The warning message and OOM are different errors. They are likely not related. You have not cited the actual OOM message. Though unneeded scanning of some large jar files is a waste of time and may require a lot of memory. You can configure what files are skipped via above mentioned "tomcat.util.scan.DefaultJarScanner.jarsToSkip" setting. > > I'm using a Debian GNU Linux 7 VM, running version.sh of Tomcat7 yields... > > Using CATALINA_BASE: /usr/share/tomcat7 > Using CATALINA_HOME: /usr/share/tomcat7 > Using CATALINA_TMPDIR: /usr/share/tomcat7/temp > Using JRE_HOME: /usr/lib/jvm/java-7-openjdk-amd64 > Using CLASSPATH: > /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar > Server version: Apache Tomcat/7.0.28 > Server built: Apr 8 2014 08:47:08 > Server number: 7.0.28.0 > OS Name: Linux > OS Version: 3.2.0-4-amd64 > Architecture: amd64 > JVM Version: 1.7.0_65-b32 > JVM Vendor: Oracle Corporation > > Tomcat7 was installed using apt-get. With the default memory settings > (around line 271 in catalina.sh) as follows... > > CATALINA_OPTS="$CATALINA_OPTS $JPDA_OPTS" > > The above error occurs. > > When I made the following changes... (below) the error goes away > > CATALINA_OPTS="-server $CATALINA_OPTS -Xms512m -Xms2048m > -XX:MaxPermSize=512m -Dcom.sun.management.jmxremote" > > My question... pulse-java.jar does not exist in Java 7 although it did in > Java 6. In Java 7, it is provided by a different file. It appears that the > shortage of allocated memory manifests itself as a missing file. Has anyone > else found anything like this or used a different solution to fix it? Best regards, Konstantin Kolinko --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
