2014-11-01 22 views
1

我用Wildfly 8 SDK 1.7,和IntelliJ IDE,並設法使基本的EJB服務器。Wildfly 8個主機EJB 3.x的應用問題

我做這包含兩個子模塊項目:界面和服務器。

接口:

package testing; 
... 
@Remote 
public interface Test { 
public void sayHi(); 
} 

服務器:

package srv; 
... 
import testing.Test; 

@Stateless 
public class TestBean implements Test { 

    @Override 
    public void sayHi() 
    { 
     System.out.println("Hi"); 
    } 
} 

的依賴是javax.ejb.jar兩個模塊和jboss-client +我interface服務器之一。一切都很好。

所以,我試圖server:ejb神器部署到Wildfly,但它是不成功的:

ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.deployment.unit."server_ejb.jar".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."server_ejb.jar".POST_MODULE: JBAS018733: Failed to process phase POST_MODULE of deployment "server_ejb.jar" 
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:166) [wildfly-server-8.1.0.Final.jar:8.1.0.Final] 
... 
Caused by: java.lang.LinkageError: Failed to link srv/TestBean (Module "deployment.server_ejb.jar:main" from Service Module Loader) 
... 
Caused by: java.lang.NoClassDefFoundError: testing/Test 
at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.7.0_67] 
at java.lang.ClassLoader.defineClass(ClassLoader.java:800) [rt.jar:1.7.0_67] 
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) [jboss-modules.jar:1.3.3.Final] 
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) [jboss-modules.jar:1.3.3.Final] 
... 19 more 

的哪些錯誤?

回答

1

的EJB JAR包含一個或多個的EJB,包括它們的接口定義,正在使用的EJB的任何相關的Java類,並說明這些EJB部署描述符。

鑑於此異常:

Caused by: java.lang.NoClassDefFoundError: testing/Test 

server_ejb.jar不包括測試界面,您必須在您的部署。

我希望這個幫助。