0

我有一个奇怪的错误,我使用 gin、Presenter 和 dispatcher 创建了一个 Web 应用程序,然后我成功部署在 JBoss 中,但是当我尝试在进程服务器中部署时,我按照相同的方式复制了 war 文件夹并包含了正在运行的 application.xml在jboss下我收到错误

配置类 com.wellsfargo.coredevelopment.server.guice.MyGuiceServletConfig java.lang.NoClassDefFoundError: com/google/inject/servlet/ GuiceServletContextListener at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader 的应用程序侦听器时出错.defineClassCond(ClassLoader.java:632) at java.lang.ClassLoader.defineClass(ClassLoader.java:616) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java: 141) at java.net.URLClassLoader.defineClass(URLClassLoader. java:283) 在 java.net.URLClassLoader.access$000(URLClassLoader.java:58) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:197) 在 java.security.AccessController.doPrivileged(Native Method) 在 java .net.URLClassLoader.findClass(URLClassLoader.java:190) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:307) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:296) 在 org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java : 190) at org.jboss.mx.loading.ClassLoadingTask $ThreadTask.run(ClassLoadingTask.java:131) at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399) at org.jboss.mx。 loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java: 517) at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java: 405) at java.lang.ClassLoader.loadClass(ClassLoader.java:296) at java.net .FactoryURLClassLoader.loadClass(URLClassLoader.java:627) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:296) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:248) 在 org.apache。catalina.core.StandardContext.listenerStart(StandardContext.java: 3711) at org.apache.catalina.core.StandardContext.start(StandardContext.java: 4211) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java: 759) 在 org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java: 739) 在 org.apache.catalina.core.StandardHost.addChild(StandardHost.java: 524) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native方法)在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在org.apache.commons.modeler.BaseModelMBean.invoke(BaseModelMBean.java: 503) 在 org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164) 在 org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) 在 org.apache.catalina.core.StandardContext.init(StandardContext.java: 5052) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native方法)在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在org.apache.commons.modeler.BaseModelMBean.invoke(BaseModelMBean.java: 503) at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java: 164) at org.jboss.mx.server.MBeanServerImpl.invoke( MBeanServerImpl.java: 659) 在 org.jboss.web.tomcat.tc5.TomcatDeployer.performDeployInternal(TomcatDeployer.java: 297) 在 org.jboss.web.tomcat.tc5.TomcatDeployer。performDeploy(TomcatDeployer.java: 103) at org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java: 371) at org.jboss.web.WebModule.startModule(WebModule.java:83) at org.jboss.web.WebModule .startService(WebModule.java:61) 在 org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java: 289) 在 org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java: 245) 在 sun.reflect.GeneratedMethodAccessor11。在 org.jboss.mx.interceptor.ReflectedDispatcher.invoke( ReflectedDispatcher.java: 155) 在 org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) 在 org.jboss.mx.server.Invocation。在 org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) 在 org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) 在 org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java: 264) 调用(Invocation.java:86) .system.ServiceController $ServiceProxy.invoke(ServiceController.java:978) at $Proxy0.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java: 417) at sun.reflect.GeneratedMethodAccessor17.invoke( Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) at java.lang.reflect.Method.invoke(Method.java:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher. java: 155) 在 org.jboss.mx.server.Invocation.invoke(Invocation.java:86) 在 org.jboss.mx 的 org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)。server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java: 264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)在 $Proxy29.start(Unknown Source) at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java: 466) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java : 39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher. java: 155)在 org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) 在 org.jboss.mx.interceptor.AbstractInterceptor。在 org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java: 142) 在 org.jboss.invoke(Invocation.java:88) 调用(AbstractInterceptor.java: 133) .mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java: 97) at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java: 238) at org.jboss.ws.integration.jboss.DeployerInterceptor.start(DeployerInterceptor.java : 92) 在 org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java: 95) 在 org.jboss.mx.server.Invocation 的 org.jboss.deployment.SubDeployerInterceptorSupport $XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)。在 org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.invoke) 调用(Invocation.java:88)。java: 264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy30.start(Unknown Source ) 在 org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015) 在 org.jboss.deployment.MainDeployer.deploy(MainDeployer.java: 819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at sun.reflect.GeneratedMethodAccessor55.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) at java.lang .reflect.Method.invoke(Method.java:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java: 155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) 在 org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java: 133) 在 org.jboss.mx.server.Invocation.invoke(Invocation.java:88) 在 org.jboss.mx.interceptor.ModelMBeanOperationInterceptor .invoke(ModelMBeanOperationInterceptor.java: 142) 在 org.jboss.mx.server.Invocation.invoke(Invocation.java:88) 在 org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java: 264) 在 org. jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy9.deploy(Unknown Source) at org.jboss.deployment .scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java: 421) 在 org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java: 634) 在 org.jboss.deployment.scanner。AbstractDeploymentScanner $ScannerThread.doScan(AbstractDeploymentScanner.java:263) at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java: 336) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java: 289) at org .jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java: 245) 在 sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) 在 java.lang.reflect.Method .invoke(Method.java:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java: 155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org. jboss.mx.server.Invocation.invoke(Invocation.java:86) 在 org.jboss.mx.server。AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java: 264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) at org.jboss.system.ServiceController $ServiceProxy.invoke(ServiceController.java:978) at $ sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25 的 org.jboss.system.ServiceController.start(ServiceController.java: 417) ) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java: 155) 在 org.jboss.mx.server.Invocation.dispatch( Invocation.java:94) 在 org.jboss.mx.server.Invocation.invoke(Invocation.java:86) 在 org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java: 264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java: 659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy4.start(Unknown Source ) 在 org.jboss.deployment.SARDeployer.start(SARDeployer.java:302) 在 org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) 在 org.jboss.deployment.MainDeployer.deploy(MainDeployer.java: 819) 在 org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) 在 org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) at java.lang.reflect.Method.invoke(Method.java:597) 在 org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java: 155) 在 org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) 在 org.jboss.mx.interceptor.AbstractInterceptor .invoke(AbstractInterceptor.java: 133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java: 142) at org. jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java: 264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl. java: 659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy5.deploy(Unknown Source) at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482 ) 在 org.jboss。system.server.ServerImpl.start(ServerImpl.java:362) 在 org.jboss.Main.boot(Main.java:200) 在 org.jboss.Main$1.run(Main.java:490) 在 java.lang。 Thread.run(Thread.java:662) 引起:java.lang.ClassNotFoundException: com.google.inject.servlet.GuiceServletContextListener at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController .doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java :301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:248)lang.ClassNotFoundException:com.google.inject.servlet.GuiceServletContextListener at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass( URLClassLoader.java:190) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:307) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java :248)lang.ClassNotFoundException:com.google.inject.servlet.GuiceServletContextListener at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass( URLClassLoader.java:190) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:307) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java :248)loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:248)loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:248)

我的库中的 jar 文件夹是 aopalliance.jar gin.jar guice-2.0.jar guice-servlet-2.0.jar gwt-dispatch-1.0.0-snapshot.jar gwt-log-2.6.2.jar gwt-presenter-1.0 .0-snapshot.jar gwt-servlet.jar

我用google提供的greeting的示例应用程序进行了测试,它成功部署在我的进程服务器中......

并且类结构是

导入 com.google.inject.Guice;导入 com.google.inject.Injector;导入 com.google.inject.servlet.GuiceServletContextListener;

公共类 MyGuiceServletConfig 扩展 GuiceServletContextListener {

@Override
protected Injector getInjector() {
    return Guice.createInjector(new ServerModule(), new

DispatchServletModule()); } }

4

1 回答 1

0

您是否确保您列出的课程实际上是

  • 在战争文件 WEB-INF/lib/ 文件夹中
  • 或在 appservers 实例的 lib 文件夹中(例如 server/default/lib )?
于 2011-03-16T13:07:02.743 回答