簡體   English   中英

無法將帶有ejb的jar文件部署到glassfish 3.1.1

[英]Cannot deploy jar file with ejb to glassfish 3.1.1

我嘗試從Andrew Lee Rubinger,Bill Burke撰寫的Enterprise JavaBeans 3.1(第6版)的ejb的第一個示例中部署結果jar文件

到glassfish 3.1.1,並得到以下異常:

由以下原因引起:java.lang.IllegalStateException:方法'public abstract int org.jboss.ejb3.examples.ch04.firstejb.CalculatorCommonBusiness.add(int [])'必須引發至少一個java.rmi.RemoteException類型的異常或一個com.sun.corba.ee.impl.presentation.rmi.IDLNameTranslatorImpl。(IDLNameTranslatorImpl.java:232)上的超類的詳細信息,com.sun.corba.ee.impl.presentation.rmi.IDLNameTranslatorImpl。(IDLNameTranslatorImpl.java :65)com.sun.corba.ee.impl.presentation.rmi.IDLNameTranslatorImpl $ 2.run(IDLNameTranslatorImpl.java:169)com.sun.corba.ee.impl.presentation.rmi.IDLNameTranslatorImpl $ 2.run(IDLNameTranslatorImpl .java:167),位於com.sun.corba.ee的com.sun.corba.ee.impl.presentation.rmi.IDLNameTranslatorImpl.get(IDLNameTranslatorImpl.java:166)的java.security.AccessController.doPrivileged(本機方法) .impl.presentation.rmi.PresentationManagerImpl $ ClassDataImpl。(PresentationManagerImpl.java:153)位於com.sun.corba.ee.impl.presentation.rmi.PresentationManagerImpl $ 1.lookup(Presentat 見com.sun.corba.ee.impl.presentation.rmi上的ionManagerImpl.java:103).com.sun.corba.ee.spi.orbutil.misc.WeakCache.get上的PresentationManagerImpl $ 1.lookup(PresentationManagerImpl.java:100) (WeakCache.java:114)在com.sun.corba.ee.impl.presentation.rmi.PresentationManagerImpl.getClassData(PresentationManagerImpl.java:131)在com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie.setTarget (ReflectiveTie.java:101)在org.glassfish.enterprise.iiop.impl.POAProtocolMgr.validateTargetObjectInterfaces(POAProtocolMgr.java:315)在com.sun.ejb.containers.BaseContainer.initializeHome(BaseContainer.java:1248)在com。 org.glassfish.ejb.startup.EjbApplication.loadContainers(jb)上的sun.ejb.containers.StatelessSessionContainer.initializeHome(StatelessSessionContainer.java:202)在com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:167) java:230)... 55更多原因:com.sun.corba.ee.impl.presentation.rmi.IDLTypeException:方法'public abstract int org.jboss.ejb3 .examples.ch04.firstejb.CalculatorCommonBusiness.add(int [])'必須拋出至少一個java.rmi.RemoteException類型的異常或其在com.sun.corba.ee.impl.presentation.rmi中的超類之一com.sun.corba.ee.impl.presentation.rmi.IDLTypesUtil.validateExceptions(IDLTypesUtil.java:476)com.sun.corba.ee.impl.presentation.rmi的IDLTypesUtil.validateRemoteInterface(IDLTypesUtil.java:100) .IDLNameTranslatorImpl。(IDLNameTranslatorImpl.java:226)...還有71個|#]

但是CommonBusiness只是一個接口,為什么它必須引發任何異常?!

產生的jar僅包含帶注釋的Bean,不包含ejb-jar.xml或某些glassfish特定的xml文件(但據我了解,javaee6不需要任何ejb-jar.xml或服務器特定的文件...)

這個jar已成功部署到JBoss AS7,所以我不知道在哪里挖...

我還使用arquillian-glassfish-managed-3.1觸發了問題,並已將其發送給glassfish ejb負責人。

但是,我需要使用其他方法來確認該問題,以判斷是由玻璃魚還是本地人造成的。

我無法在單個源代碼的頁面之間導航。

但是您必須為該方法拋出RemoteException

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM