错误提示:
<2003-2-17 下午01时11分59秒> <Info> <HTTP> <101047> <[ServletContext(id=560901,n
ame=DefaultWebApp,context-path=)] AuServlet: init>
<2003-2-17 下午01时11分59秒> <Error> <HTTP> <101017> <[ServletContext(id=560901,
name=DefaultWebApp,context-path=)] Root cause of ServletException
java.lang.NoClassDefFoundError: devejb5/AuHome
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:493)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:11
1)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(Generic
ClassLoader.java:390)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClass
Loader.java:152)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAw
areClassLoader.java:65)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAw
areClassLoader.java:43)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:195)
at weblogic.utils.classfile.utils.CodeGenerator.generateClass(CodeGenera
tor.java:71)
at weblogic.rmi.internal.StubGenerator.getStubClass(StubGenerator.java:6
27)
at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:6
46)
at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:6
41)
at weblogic.rmi.extensions.StubFactory.getStub(StubFactory.java:59)
at weblogic.common.internal.RemoteObjectReplacer.resolveObject(RemoteObj
ectReplacer.java:208)
at weblogic.common.internal.WLObjectInputStreamBase2.resolveObject(WLObj
ectInputStreamBase2.java:45)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:399)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
at weblogic.rmi.internal.CBVInputStream.readObjectInternal(CBVInputStrea
m.java:62)
at weblogic.rmi.internal.CBVInputStream.readObject(CBVInputStream.java:5
6)
at weblogic.rmi.internal.ServerRequest.unmarshalReturn(ServerRequest.jav
a:90)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteR
ef.java:263)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteR
ef.java:229)
at weblogic.jndi.internal.ServerNamingNode_WLStub.lookup(Unknown Source) at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:338)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:333)
at javax.naming.InitialContext.lookup(InitialContext.java:350)
at AuServlet.doPost(AuServlet.java:26)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:945)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:332)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:242)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:5363)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:721)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:3043)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
>
<2003-2-17 下午01时11分59秒> <Info> <HTTP> <101047> <[ServletContext(id=560901,n
ame=DefaultWebApp,context-path=)] AuServlet: init>
<2003-2-17 下午01时11分59秒> <Error> <HTTP> <101017> <[ServletContext(id=560901,
name=DefaultWebApp,context-path=)] Root cause of ServletException
java.lang.NoClassDefFoundError: devejb5/AuHome
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:493)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:11
1)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(Generic
ClassLoader.java:390)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClass
Loader.java:152)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAw
areClassLoader.java:65)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAw
areClassLoader.java:43)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:195)
at weblogic.utils.classfile.utils.CodeGenerator.generateClass(CodeGenera
tor.java:71)
at weblogic.rmi.internal.StubGenerator.getStubClass(StubGenerator.java:6
27)
at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:6
46)
at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:6
41)
at weblogic.rmi.extensions.StubFactory.getStub(StubFactory.java:59)
at weblogic.common.internal.RemoteObjectReplacer.resolveObject(RemoteObj
ectReplacer.java:208)
at weblogic.common.internal.WLObjectInputStreamBase2.resolveObject(WLObj
ectInputStreamBase2.java:45)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:399)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
at weblogic.rmi.internal.CBVInputStream.readObjectInternal(CBVInputStrea
m.java:62)
at weblogic.rmi.internal.CBVInputStream.readObject(CBVInputStream.java:5
6)
at weblogic.rmi.internal.ServerRequest.unmarshalReturn(ServerRequest.jav
a:90)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteR
ef.java:263)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteR
ef.java:229)
at weblogic.jndi.internal.ServerNamingNode_WLStub.lookup(Unknown Source) at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:338)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:333)
at javax.naming.InitialContext.lookup(InitialContext.java:350)
at AuServlet.doPost(AuServlet.java:26)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
(ServletStubImpl.java:945)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:332)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:242)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:5363)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
eManager.java:721)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:3043)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
>
我觉得你是不是在servlet中cast了lookup返回的对象,而client的servlet中没有包含devejb5.AuHome.java这个类.
String url = "t3://fileserver:7001"; //EJB容器的路径,你的代码里没有啊
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
try {
Context context = new InitialContext(properties);
Object ref = context.lookup("HelloBean");
helloHome = (HelloHome) PortableRemoteObject.narrow(ref, HelloHome.class);
create();
String retValue = hello();
lbResult.setText(retValue);
remove();
set CLASSPATH=%JAVA_HOME%\lib\tools.jar;%WL_HOME%\server\lib\weblogic_sp.jar;%WL_HOME%\server\lib\weblogic.jar;%WL_HOME%\server\lib\webservices.jar;%CLASSPATH%;d:\bea\weblogic700\server\lib\mm.mysql-2.0.2-bin.jar;D:\bea\user_projects\mydomain\myserver\upload\Tian1\Tian1.jar;D:\bea\user_projects\mydomain\myserver\upload\AuBean\AuBean.jarset PATH=%WL_HOME%\server\bin;%JAVA_HOME%\bin;%PATH%;d:\bea\weblogic700\server\lib\mm.mysql-2.0.2-bin.jar;D:\bea\user_projects\mydomain\myserver\upload\Tian1\Tian1.jar
我的电脑中的classpath=
;%JAVA_HOME%\lib;c:\Program Files\Microsoft SQL Server 2000 JDBC\lib;d:\jbuilder7\jakarta-tomcat-4.0.3\common\lib\servlet.jar;C:\Program Files\Java\j2re1.4.1_01\bin;d:\jbuilder7\jdk1.3.1\bin;;D:\bea\user_projects\mydomain\myserver\upload\AuBean\AuBean.jar
原因是因为我是在setEnv.cmd中设了Classpath应该在startWls.cmd加上AuBean.jar