我搜索了很多,但找不到我的问题的解决方案。我使用wsimport从wsdl生成存根,并添加到我的项目中。以下是我尝试从存根中初始化类MyServiceEp时出现的错误。我认为这可能是可能是j-boss 7问题。但我是服务器的新手,并不知道解决方法。我尝试添加
<property name="org.jboss.osgi.system.modules.extra">
javax.xml.ws
</property>
到我的standalone.xml,因为我在另一个论坛中读到这是解决此问题的方法,但无法解决问题..
10:49:23,351 ERROR [org.springframework.web.portlet.DispatcherPortlet] (MSC service thread 1-2) Context initialization failed: org.springframework.beans.factory
.BeanCreationException: Error creating bean with name 'MyServiceImpl': Injection of autowired dependencies failed; nested exception is java.lang.NoClassDefFoundError: org/abc/bcd/MyServiceEp
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java
:288) [spring-beans-3.2.0.RELEASE.jar:3.2.0.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1120) [spring-beans
-3.2.0.RELEASE.jar:3.2.0.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:522) [spring-beans-
3.2.0.RELEASE.jar:3.2.0.RELEASE]
at
].................................
..............................
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
Caused by: java.lang.NoClassDefFoundError: org/abc/bcd/MyServiceEp
at org.xx.portal.ws.client.MyServiceImpl.setMyClient(MyServiceImpl.java:37) [classes:]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_25]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_25]
at
... 53 more
我正在使用 Liferay 6.2 - jboss 7.1.1最终捆绑版本并使用 spring MVC 。存根中的自动生成的类发生NoClassDefFound错误。如果需要,我会发布更多细节。
更新
我使用verbose:class运行服务器并且还得到以下错误..
12:31:00,501 WARN [org.jboss.modules] (MSC service thread 1-4) Failed to define class gov.or.hix.wsdl.ee.individualcaseservice.IndividualCaseServiceEp in Modul
e "deployment.My-Portlet-1.0.0.war:main" from Service Module Loader: java.lang.LinkageError: Failed to link org/abc/bcd/MyServiceEp (Module "deployment.My-Portlet-1.0.0.war:main" from Service Module Loader)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:396) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:243) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:73) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.Module.loadModuleClass(Module.java:517) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:182) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468) [jboss-modules.jar:1.1.1.GA]
at
..................................
................................
com.liferay.portal.kernel.util.BasePortalLifecycle.registerPortalLifecycle(BasePortalLifecycle.java:54) [portal-service.jar:]
at com.liferay.portal.kernel.servlet.PluginContextListener.contextInitialized(PluginContextListener.java:116) [portal-service.jar:]
at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3392) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3850) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
Caused by: java.lang.NoClassDefFoundError: javax/xml/ws/Service
at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.7.0_25]
at java.lang.ClassLoader.defineClass(ClassLoader.java:792) [rt.jar:1.7.0_25]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) [rt.jar:1.7.0_25]
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:327) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:391) [jboss-modules.jar:1.1.1.GA]
... 70 more
Caused by: java.lang.ClassNotFoundException: javax.xml.ws.Service from [Module "deployment.My-Portlet-1.0.0.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398) [jboss-modules.jar:1.1.1.GA]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120) [jboss-modules.jar:1.1.1.GA]
... 75 more
答案 0 :(得分:1)
您可能正在使用 Eclipse IDE 。根据此假设,请尝试以下步骤:
右键点击您的项目&gt; 属性&gt; Java构建路径&gt; 找到来源标签&gt; 点击链接来源&gt; 从目录结构中找到 webservices 的路径
再次点击确定和确定。
现在尝试导入有关你的铆钉的课程。
这肯定对你有用,因为它适用于我的情况。
答案 1 :(得分:0)
我能够解决这个问题。这是一个问题,因为jboss 7. Jboss 7没有javax.xml.ws.Service的文件,因此错误。我通过在项目中添加以下依赖项来解决此问题。
<dependency>
<groupId>javax.xml.ws</groupId>
<artifactId>jaxws-api</artifactId>
<version>2.2.8</version>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.1.4</version>
</dependency>
添加此解决了java.lang.NoClassDefFoundError:javax / xml / ws / Service错误,因此问题已得到解决。