需要,因为我有一个测试@Singleton @LocalBean作为我的war文件的一部分,但是一旦我实现javax.ejb.SessionSynchronization,我得到以下无用的异常,这没有给我任何线索如何要解决这个问题。注意,当只是在jboss中转储时,ejb get的加载很好,但是然后liferay不知道portlet .. 由于osgi将在未来的野生动物版本中被删除,我认为现在最简单的就是摆脱它...
00:34:30,237 WARN [org.jboss.modules] (MSC service thread 1-8) Failed to define class com.example.ebr.db.TestSingleton1 in Module "deployment.ebr-eds-mdr-plugin.war:main" from Service Module Loader
: java.lang.LinkageError: Failed to link com/example/ebr/db/TestSingleton1 (Module "deployment.ebr-eds-mdr-plugin.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 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]
at java.lang.Class.forName0(Native Method) [rt.jar:1.7.0_25]
at java.lang.Class.forName(Class.java:270) [rt.jar:1.7.0_25]
at org.jboss.as.server.deployment.reflect.DeploymentClassIndex.classIndex(DeploymentClassIndex.java:54)
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:63) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.deploy(InterceptorAnnotationProcessor.java:55) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113)
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/ejb/SessionSynchronization
at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.7.0_25]
at java.lang.ClassLoader.defineClass(ClassLoader.java:788) [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]
... 19 more
Caused by: java.lang.ClassNotFoundException: javax.ejb.SessionSynchronization from [Module "deployment.ebr-eds-mdr-plugin.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]
... 24 more
我的META-INF / MANIFEST.MF看起来像这样:
Manifest-Version: 1.0
Bnd-LastModified: 1384910505626
Build-Jdk: 1.7.0_25
Built-By: amanica
Bundle-Description:
Bundle-DocURL: http://www.example.com/
Bundle-ManifestVersion: 2
Bundle-Name: ebr-eds-mdr-plugin
Bundle-SymbolicName: com.example.ebr-eds-mdr-plugin
Bundle-Vendor: Example
Bundle-Version: 0.0.1.SNAPSHOT
Created-By: Apache Maven Bundle Plugin
Export-Package: com.example.testvaadinportlet;uses:="com.vaadin.ui,javax
.naming,org.apache.log4j,com.example.ebr.db,javax.portlet,com.example
.ebr.report.db,com.vaadin.data,javax.sql,com.vaadin.server";version="
0.0.1.SNAPSHOT",com.example.ebr.db;uses:="javax.annotation,javax.ejb,
org.apache.log4j";version="0.0.1.SNAPSHOT",com.example.ebr.report;use
s:="com.thoughtworks.xstream.annotations,javax.xml.bind.annotation,org.
slf4j,com.example.ebr.report.config,com.vaadin.data,com.vaadin.ui,com
.vaadin.data.util,com.example.ebr.report.db,com.vaadin.server,org.apa
che.log4j,javax.portlet";version="0.0.1.SNAPSHOT",com.example.ebr.rep
ort.birt;uses:="com.lowagie.text.pdf.codec,org.eclipse.birt.report.engi
ne.api,com.example.ebr.report,org.apache.commons.io,org.eclipse.birt.
core.exception,org.eclipse.birt.core.framework,org.slf4j";version="0.0.
1.SNAPSHOT",com.example.ebr.report.config;uses:="com.vaadin.data,org.
slf4j,com.vaadin.ui,com.thoughtworks.xstream.annotations,com.example.
ebr.report.birt,com.example.ebr.report,com.vaadin.server,com.vaadin.s
hared.ui.label,org.eclipse.birt.core.exception,com.example.ebr.report
.db,org.apache.log4j,com.vaadin.addon.ipcforliferay.event,javax.portlet
,com.vaadin.addon.ipcforliferay,javax.xml.bind.annotation,org.apache.co
mmons.lang3";version="0.0.1.SNAPSHOT",com.example.ebr.report.db;uses:
="javax.naming,org.apache.log4j,javax.sql,com.thoughtworks.xstream,com.
example.ebr.report,com.example.ebr.report.config";version="0.0.1.SN
APSHOT"
Import-Package: com.lowagie.text.pdf.codec;version="[2.1,3)",com.thought
works.xstream,com.thoughtworks.xstream.annotations,com.vaadin.addon.ipc
forliferay,com.vaadin.addon.ipcforliferay.event,com.vaadin.data;version
="[7.1,8)",com.vaadin.data.util;version="[7.1,8)",com.vaadin.server;ver
sion="[7.1,8)",com.vaadin.shared.ui.label;version="[7.1,8)",com.vaadin.
ui;version="[7.1,8)",javax.annotation;version="[1.1,2)",javax.ejb;versi
on="[3.1,4)",javax.ejb.api,javax.naming,javax.portlet;version="[2.0,3)"
,javax.sql,javax.xml.bind.annotation;version="[2.2,3)",org.apache.commo
ns.io;version="[2.2,3)",org.apache.commons.lang3;version="[3.1,4)",org.
apache.log4j;version="[1.2,2)",org.eclipse.birt.core.exception,org.ecli
pse.birt.core.framework,org.eclipse.birt.report.engine.api,org.slf4j;ve
rsion="[1.7,2)"
Originally-Created-By: Apache Maven Bundle Plugin
Tool: Bnd-1.50.0
答案 0 :(得分:0)
打开standalone.xml(或您使用的任何配置)
并删除整个元素<subsystem xmlns="urn:jboss:domain:osgi:1.x">
或者您可以通过jboss-cli / jboss-admin连接到服务器并运行
/subsystem=osgi:remove
然后重新启动服务器。