L
li.fxwolf
hi experts .
When I access remote session bean from applet ,client side system
report error:
java.lang.ClassFormatError: Truncated class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at sun.rmi.server.LoaderHandler.loadClass(Unknown Source)
at sun.rmi.server.LoaderHandler.loadClass(Unknown Source)
at java.rmi.server.RMIClassLoader$2.loadClass(Unknown Source)
at java.rmi.server.RMIClassLoader.loadClass(Unknown Source)
at sun.rmi.server.MarshalInputStream.resolveClass(Unknown
Source)
at java.ibjectInputStream.readNonProxyDesc(Unknown Source)
at java.ibjectInputStream.readClassDesc(Unknown Source)
at java.ibjectInputStream.readOrdinaryObject(Unknown Source)
at java.ibjectInputStream.readObject0(Unknown Source)
at java.ibjectInputStream.defaultReadFields(Unknown Source)
at java.ibjectInputStream.readSerialData(Unknown Source)
at java.ibjectInputStream.readOrdinaryObject(Unknown Source)
at java.ibjectInputStream.readObject0(Unknown Source)
at java.ibjectInputStream.readObject(Unknown Source)
at java.rmi.MarshalledObject.get(Unknown Source)
at
org.jnp.interfaces.MarshalledValuePair.get(MarshalledValuePair.java:57)
at
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:637)
at
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:572)
at javax.naming.InitialContext.lookup(Unknown Source)
at finance.gcontroller.LogonApplet.getDBEJBean(Unknown Source)
at finance.gcontroller.LogonApplet.init(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
following is fragment applet code:
Properties prop = new Properties();
prop.setProperty(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
prop.setProperty(Context.PROVIDER_URL, getCodeBase().getHost());
try {
home = (testHome) PortableRemoteObject.narrow(
new
InitialContext(prop).lookup("ejb/testBean"),
testHome.class);//this row report error.
bean = home.create();
} catch (NamingException e) {
e.printStackTrace();
} catch (ClassCastException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
} catch (CreateException e) {
e.printStackTrace();
}
Have anybody solved this issue .Could you help me ,or give me a
fragment code which is success access remote session bean .
thanks advance .
james.li
When I access remote session bean from applet ,client side system
report error:
java.lang.ClassFormatError: Truncated class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at sun.rmi.server.LoaderHandler.loadClass(Unknown Source)
at sun.rmi.server.LoaderHandler.loadClass(Unknown Source)
at java.rmi.server.RMIClassLoader$2.loadClass(Unknown Source)
at java.rmi.server.RMIClassLoader.loadClass(Unknown Source)
at sun.rmi.server.MarshalInputStream.resolveClass(Unknown
Source)
at java.ibjectInputStream.readNonProxyDesc(Unknown Source)
at java.ibjectInputStream.readClassDesc(Unknown Source)
at java.ibjectInputStream.readOrdinaryObject(Unknown Source)
at java.ibjectInputStream.readObject0(Unknown Source)
at java.ibjectInputStream.defaultReadFields(Unknown Source)
at java.ibjectInputStream.readSerialData(Unknown Source)
at java.ibjectInputStream.readOrdinaryObject(Unknown Source)
at java.ibjectInputStream.readObject0(Unknown Source)
at java.ibjectInputStream.readObject(Unknown Source)
at java.rmi.MarshalledObject.get(Unknown Source)
at
org.jnp.interfaces.MarshalledValuePair.get(MarshalledValuePair.java:57)
at
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:637)
at
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:572)
at javax.naming.InitialContext.lookup(Unknown Source)
at finance.gcontroller.LogonApplet.getDBEJBean(Unknown Source)
at finance.gcontroller.LogonApplet.init(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
following is fragment applet code:
Properties prop = new Properties();
prop.setProperty(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
prop.setProperty(Context.PROVIDER_URL, getCodeBase().getHost());
try {
home = (testHome) PortableRemoteObject.narrow(
new
InitialContext(prop).lookup("ejb/testBean"),
testHome.class);//this row report error.
bean = home.create();
} catch (NamingException e) {
e.printStackTrace();
} catch (ClassCastException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
} catch (CreateException e) {
e.printStackTrace();
}
Have anybody solved this issue .Could you help me ,or give me a
fragment code which is success access remote session bean .
thanks advance .
james.li