我正在使用EJB3.0 WAS8和Spring 3.我在Web服务器上有我的Web组件,并且已在应用程序服务器上部署了EAR。 我的Web组件工作正常,直到它必须执行上下文查找。 当我去InitialContext的,我得到以下异常:初始上下文Websphere 8.0
type Exception report
message Handler processing failed; nested exception is java.lang.NoClassDefFoundError: com.ibm.ws.exception.WsException
description The server encountered an internal error (Handler processing failed; nested exception is java.lang.NoClassDefFoundError: com.ibm.ws.exception.WsException) that prevented it from fulfilling this request.
exception
org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.NoClassDefFoundError: com.ibm.ws.exception.WsException
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:812)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:709)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:613)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:536)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
root cause
java.lang.NoClassDefFoundError: com.ibm.ws.exception.WsException
java.lang.ClassLoader.defineClassImpl(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:275)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:74)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2901)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
java.lang.ClassLoader.defineClassImpl(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:275)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:74)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2901)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
java.lang.J9VMInternals.verifyImpl(Native Method)
java.lang.J9VMInternals.verify(J9VMInternals.java:72)
java.lang.J9VMInternals.initialize(J9VMInternals.java:134)
com.ibm.websphere.naming.WsnInitialContextFactory.<clinit>(WsnInitialContextFactory.java:68)
java.lang.J9VMInternals.initializeImpl(Native Method)
java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
java.lang.Class.forNameImpl(Native Method)
java.lang.Class.forName(Class.java:174)
javax.naming.spi.NamingManager$3.run(NamingManager.java:873)
javax.naming.spi.NamingManager$3.run(NamingManager.java:870)
java.security.AccessController.doPrivileged(AccessController.java:228)
javax.naming.spi.NamingManager.factoryForName(NamingManager.java:869)
javax.naming.spi.NamingManager.factoryForName(NamingManager.java:820)
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:246)
javax.naming.InitialContext.initializeDefaultInitCtx(InitialContext.java:318)
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:348)
javax.naming.InitialContext.internalInit(InitialContext.java:286)
javax.naming.InitialContext.<init>(InitialContext.java:211)
com.paam.util.ServiceLocator.getInitialContext(ServiceLocator.java:43)
com.paam.util.RemoteObjectCall.remoteObj(RemoteObjectCall.java:14)
com.paam.delegates.PAAMDelegate.InsertPAAMDetails(PAAMDelegate.java:18)
com.paam.controllers.NewPaamController.newpaamsubmit(NewPaamController.java:77)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.doInvokeMethod(HandlerMethodInvoker.java:626)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:150)
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:354)
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:342)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:763)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:709)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:613)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:536)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
root cause
java.lang.ClassNotFoundException: com.ibm.ws.exception.WsException
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
java.lang.ClassLoader.defineClassImpl(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:275)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:74)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2901)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
java.lang.ClassLoader.defineClassImpl(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:275)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:74)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2901)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1170)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
java.lang.J9VMInternals.verifyImpl(Native Method)
java.lang.J9VMInternals.verify(J9VMInternals.java:72)
java.lang.J9VMInternals.initialize(J9VMInternals.java:134)
com.ibm.websphere.naming.WsnInitialContextFactory.<clinit>(WsnInitialContextFactory.java:68)
java.lang.J9VMInternals.initializeImpl(Native Method)
java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
java.lang.Class.forNameImpl(Native Method)
java.lang.Class.forName(Class.java:174)
javax.naming.spi.NamingManager$3.run(NamingManager.java:873)
javax.naming.spi.NamingManager$3.run(NamingManager.java:870)
java.security.AccessController.doPrivileged(AccessController.java:228)
javax.naming.spi.NamingManager.factoryForName(NamingManager.java:869)
javax.naming.spi.NamingManager.factoryForName(NamingManager.java:820)
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:246)
javax.naming.InitialContext.initializeDefaultInitCtx(InitialContext.java:318)
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:348)
javax.naming.InitialContext.internalInit(InitialContext.java:286)
javax.naming.InitialContext.<init>(InitialContext.java:211)
com.paam.util.ServiceLocator.getInitialContext(ServiceLocator.java:43)
com.paam.util.RemoteObjectCall.remoteObj(RemoteObjectCall.java:14)
com.paam.delegates.PAAMDelegate.InsertPAAMDetails(PAAMDelegate.java:18)
com.paam.controllers.NewPaamController.newpaamsubmit(NewPaamController.java:77)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.doInvokeMethod(HandlerMethodInvoker.java:626)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:150)
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:354)
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:342)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:763)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:709)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:613)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:536)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
PS:我不是在我的定义日志得到这个例外。本地主机日志文件在我的tomcat日志目录中生成。并在那里打印错误。
如果有人对什么是问题有所了解,请为此提出解决方案。
我们使用的架构是TOMCAT - WAS - DB。问题已经解决了。我一直在瘦客户端jar放在我的WEB-INF/lib文件夹而不是tomcat/lib。但将它放在tomcat/lib文件夹后,我没有收到这个错误。事实上,当放在WEB-INF/lib中时,TOMCAT甚至不会启动propery。感谢您的帮助:) – Toral