[jboss-user] [EJB 3.0] - Re: EJB 3.1 Embeddable
jaikiran
do-not-reply at jboss.com
Thu Nov 6 09:57:52 EST 2008
I tried this on a sample project with EJB3.1 embedded and ran into the same error:
-------------------------------------------------------------------------------
| Test set: jaikiran.ejb3_1.client.EJBClientTestCase
| -------------------------------------------------------------------------------
| Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 3.328 sec <<< FAILURE!
| testLookup(jaikiran.ejb3_1.client.EJBClientTestCase) Time elapsed: 3.157 sec <<< ERROR!
| java.lang.IllegalStateException: Incompletely deployed:
|
| *** DEPLOYMENTS IN ERROR: Name -> Error
| BeanMetaDataDeployer -> java.lang.IllegalArgumentException: Wrong arguments. new for target java.lang.reflect.Constructor expected=[org.jboss.dependency.spi.Controller] actual=[org.jboss.kernel.Kernel]
|
| at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.internalValidate(AbstractKernelDeployer.java:290)
| at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.validate(AbstractKernelDeployer.java:186)
| at org.jboss.ejb3.embedded.JBossEJBContainer.deploy(JBossEJBContainer.java:127)
| at org.jboss.ejb3.embedded.JBossEJBContainer.deploy(JBossEJBContainer.java:120)
| at org.jboss.ejb3.embedded.JBossEJBContainer.<init>(JBossEJBContainer.java:73)
| at org.jboss.ejb3.embedded.JBossEJBContainerProvider.createEJBContainer(JBossEJBContainerProvider.java:56)
| at javax.ejb.EJBContainer.createEJBContainer(EJBContainer.java:99)
| at jaikiran.ejb3_1.client.EJBClientTestCase.testLookup(EJBClientTestCase.java:37)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
| at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
| at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
| at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
| at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
| at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
| at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
| at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
| at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
| at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
| at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
| at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
| at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
| at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
| at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
| at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338)
| at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997)
|
|
Based on what i saw from Ales' comment in the JIRA https://jira.jboss.org/jira/browse/JBMICROCONT-176, i changed the embedded-bootstrap-beans.xml in the jboss-ejb3-embedded-1.0.0-SNAPSHOT.jar to use this:
<!-- POJO Deployment -->
| <bean name="BeanDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanDeployer"/>
| <bean name="KernelDeploymentDeployer" class="org.jboss.deployers.vfs.deployer.kernel.KernelDeploymentDeployer"/>
| <bean name="BeanMetaDataDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer">
| <constructor><parameter><inject bean="jboss.kernel:service=KernelController"/></parameter></constructor>
| </bean>
Earlier it was using
<constructor><parameter><inject bean="jboss.kernel:service=Kernel"/></parameter></constructor>
After this change, the test case passed.
P.S: I don't have much idea about the Kernel, so i am not sure if i did this right :-)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4187369#4187369
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4187369
More information about the jboss-user
mailing list