2011-04-22 62 views
0

我想部署一個簡單的測試包含EAR和EJB項目到JBoss AS 6JBoss的不承認一個EAR內的EJB JAR

我我EAR文件複製到我的JBOSS_HOME /服務器/ default/deploy目錄目錄。我可以看到我的SUP.ear出現在JBoss AS 6管理控制檯的企業應用程序(EAR)下,但我沒有看到在嵌入式EJB3 JAR下顯示的EJB3 jar。我沒有看到JBoss控制檯中加載的bean,並且無法訪問它們。

我嘗試下載從www.manning.com/panda JBoss的教程和構建和部署第1章例子,這些bean加載很好,我可以沒有任何問題的客戶機訪問它們...

這裏是我的EAR文件的結構:

SUP.ear 
|--META-INF 
    |--application.xml 
    |--jboss-app.xml 
    |--MANIFEST.MF 
|--SUP-ejb.jar 
    |--com 
    |--tomtresansky 
     |--sup 
     |--server 
      |--ejb 
      |--CalculatorBean.class 
      |--CalculatorLocal.class 
      |--CalculatorRemote.class 
    |--META-INF 
    |--MANIFEST.MF 

的Application.xml:

<?xml version="1.0"?> 
<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN" "http://java.sun.com/j2ee/dtds/application_1_2.dtd"> 
<application> 
    <display-name>SUP</display-name> 
    <module> 
    <ejb>SUP-ejb.jar</ejb> 
    </module> 
</application> 

的jboss-app.xml中:

<!DOCTYPE jboss-app PUBLIC "-//JBoss//DTD J2EE Application 1.4//EN" "http://www.jboss.org/j2ee/dtd/jboss-app_4_0.dtd"> 
<jboss-app> 
    <loader-repository>SUP:app=ejb3</loader-repository> 
</jboss-app> 

兩個MANIFEST.MF文件看起來是這樣的:

Manifest-Version: 1.0 
Ant-Version: Apache Ant 1.8.2 
Created-By: 1.6.0_24-b07 (Sun Microsystems Inc.) 

課程從下面的源文件建立的:

CalculatorBean.java:

package com.tomtresansky.sup.server.ejb; 

import javax.ejb.Stateless; 

@Stateless 
public class CalculatorBean implements CalculatorRemote, CalculatorLocal { 
    @Override 
    public int add(final int x, final int y) { 
    return x + y; 
    } 

    @Override 
    public int subtract(final int x, final int y) { 
    return x - y; 
    } 
} 

CalculatorLocal.java:

package com.tomtresansky.sup.server.ejb; 

import javax.ejb.Local; 

import com.tomtresansky.sup.shared.Calculator; 

@Local 
public interface CalculatorLocal extends Calculator { 
} 

CalculatorRemote.java:

package com.tomtresansky.sup.server.ejb; 

import javax.ejb.Remote; 

import com.tomtresansky.sup.shared.Calculator; 

@Remote 
public interface CalculatorRemote extends Calculator { 

} 
+0

反正這可以在/ tmp目錄中涉及到壞的數據? – 2011-04-22 12:59:52

+0

我有同樣的問題,你可以與我分享你的測試應用程序。我有api jar,ejb和web模塊。我想讓耳塞包含api jar和ejb模塊,並且在application.xml中提到了,但它說的是:java.lang.RuntimeException:application.xml中列出的my-ejb.jar模塊不存在於其中。 ear vfs:///opt/jboss-6.0.0.Final/server/default/deploy/my-ear-1.0-SNAPSHOT.ear/ – Suraj 2011-04-28 05:12:26

+0

我用maven耳機插件 – Suraj 2011-04-28 07:58:10

回答

1

好了,找到了答案......我不包括在SUP-ejb.jar的com.tomtresansky.sup.shared.Calculator inferface。

這本來是很好,如果JBoss的已經爲缺少類型提供了一些類型的錯誤消息...

相關問題