Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#507 closed defect (invalid)

sealing violation: can't seal package javax.servlet: already loaded

Reported by: killyourtv Owned by:
Priority: major Milestone: 0.8.8
Component: apps/console Version: 0.8.7
Keywords: Cc:
Parent Tickets: Sensitive: no

Description

From #i2p:

<fox> <stepkrav> hello all. i have installed i2p on debian stable. Service is running and i am able to visit sites. Although I cant get anything from i2p on localhost. Such as http://localhost:7657/config.jsp . Heres my i2p/wrapper.log, in case it clarifies the case. http://pastebin.com/NPhFALEU
<fox> <preforce> Title: i2p/wrapper.log - Pastebin.com (at pastebin.com)

Since the user is on Debian stable, most likely OpenJDK 6b18-1.8.7-2~squeeze1 and kernel version 2.6.32+29 are being used.

2011/08/20 xx:43:53 | --> Wrapper Started as Daemon
2011/08/20 xx:43:53 | Java Service Wrapper Community Edition 64-bit 3.5.10
2011/08/20 xx:43:53 |   Copyright (C) 1999-2011 Tanuki Software, Ltd. All Rights Reserved.
2011/08/20 xx:43:53 |     http://wrapper.tanukisoftware.com
2011/08/20 xx:43:53 | 
2011/08/20 xx:43:53 | Launching a JVM...
2011/08/20 xx:44:03 | WrapperManager: Initializing...
2011/08/20 xx:44:04 | Starting I2P 0.8.7-0deb5
2011/08/20 xx:44:05 | INFO: Native CPUID library jcpuid-x86-linux loaded from file
2011/08/20 xx:44:05 | INFO: Locally optimized native BigInteger library loaded from file
2011/08/20 xx:44:13 | CRIT  [uter Console] uter.startup.LoadClientAppsJob: Error starting up the client class net.i2p.router.web.RouterConsoleRunner
2011/08/20 xx:44:13 | java.lang.reflect.InvocationTargetException
2011/08/20 xx:44:13 | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2011/08/20 xx:44:13 | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
2011/08/20 xx:44:13 | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2011/08/20 xx:44:13 | 	at java.lang.reflect.Method.invoke(Method.java:616)
2011/08/20 xx:44:13 | 	at net.i2p.router.startup.LoadClientAppsJob$RunApp.run(LoadClientAppsJob.java:238)
2011/08/20 xx:44:13 | 	at java.lang.Thread.run(Thread.java:636)
2011/08/20 xx:44:13 | 	at net.i2p.util.I2PThread.run(I2PThread.java:77)
2011/08/20 xx:44:13 | Caused by: java.lang.SecurityException: sealing violation: can't seal package javax.servlet: already loaded
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader.defineClass(URLClassLoader.java:252)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
2011/08/20 xx:44:13 | 	at java.security.AccessController.doPrivileged(Native Method)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
2011/08/20 xx:44:13 | 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.defineClass1(Native Method)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
2011/08/20 xx:44:13 | 	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
2011/08/20 xx:44:13 | 	at java.security.AccessController.doPrivileged(Native Method)
2011/08/20 xx:44:13 | 	at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
2011/08/20 xx:44:13 | 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
2011/08/20 xx:44:13 | 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
2011/08/20 xx:44:13 | 	at net.i2p.router.web.RouterConsoleRunner.startConsole(RouterConsoleRunner.java:285)
2011/08/20 xx:44:13 | 	at net.i2p.router.web.RouterConsoleRunner.main(RouterConsoleRunner.java:134)
2011/08/20 xx:44:13 | 	... 7 more

Subtickets

Change History (3)

comment:1 Changed 8 years ago by killyourtv

I cannot reproduce this error in a freshly installed Debian stable vm.
The user cannot reproduce it on another box running Debian stable.

The java version is what I suspected:
<fox> <stepkrav> OpenJDK Runtime Environment (IcedTea6 1.8.7) (6b18-1.8.7-2~squeeze1)
<fox> <stepkrav> OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)

comment:2 Changed 8 years ago by killyourtv

Resolution: invalid
Status: newclosed

<fox> <stepkrav> trying to install i2p on debian stable
<fox> <stepkrav> i run "java -jar i2pinstall_0.8.7.exe"
<fox> <stepkrav> and gives me error
<fox> <stepkrav> Exception in thread "main" java.lang.AbstractMethodError?: org.apache.xerces.dom.DocumentImpl?.setXmlVersion(Ljava/lang/String;)V
<fox> <stepkrav> instead of that i installed by ppa deb package
<fox> <stepkrav> and service runs ok, but i have those problem with localhost
<fox> <stepkrav> its natural that i cant reach 127.0.0.1:7657 because on wrapper.log there is no line "INFO: Started SocketListener? on 127.0.0.1:7657"
<fox> <stepkrav> on the other debian box, installed by ppa deb package and works without any problem

Since the .exe installer is failing, that isn't something on "our end".

Similar reports at
http://mymaconsnow.blogspot.com/2010/01/java-problems.html
http://trac.jajuk.info/ticket/1549

comment:3 Changed 8 years ago by zzz

The javax.servlet.jar that we ship (from Jetty 5.1.15) is "sealed", meaning there can't be any other javax.servlet classes elsewhere. You must have javax.servlet classes elsewhere in your classpath. Either remove those, or remove $I2P/lib/javax.servlet.jar. Removing the I2P jar may not work if the classes you have installed aren't compatible.

Perhaps we should unseal the jar that we ship?

Note: See TracTickets for help on using tickets.