Embedded - EJB deployment problems
pmuir Dec 4, 2007 2:43 PMI'm seeing two problems currently (apart from hibernate being able to scan for Entities). Both of these were working in my checkout from Friday
1)
[testng] ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Parse: name=vfsfile:/Users/pmuir/workspace/jboss-seam/examples/booking/test-build/ state=Not Installed mode=Manual requiredState=Parse [testng] org.jboss.deployers.spi.DeploymentException [testng] at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49) [testng] at org.jboss.deployment.JBossEjbParsingDeployer.getStandardMetaData(JBossEjbParsingDeployer.java:180) [testng] at org.jboss.deployment.JBossEjbParsingDeployer.createMetaData(JBossEjbParsingDeployer.java:89) [testng] at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.deploy(AbstractParsingDeployerWithOutput.java:162) [testng] at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:169) [testng] at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:853) [testng] at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:794) [testng] at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327) [testng] at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309) [testng] at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734) [testng] at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862) [testng] at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784) [testng] at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622) [testng] at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411) [testng] at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:498) [testng] at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:506) [testng] at org.jboss.embedded.DeploymentGroup.process(DeploymentGroup.java:127) [testng] at org.jboss.embedded.Bootstrap.deployResourceBases(Bootstrap.java:289) [testng] at org.jboss.seam.mock.EmbeddedBootstrap.startAndDeployResources(EmbeddedBootstrap.java:16) [testng] at org.jboss.seam.mock.BaseSeamTest.startJbossEmbeddedIfNecessary(BaseSeamTest.java:1006) [testng] at org.jboss.seam.mock.BaseSeamTest.init(BaseSeamTest.java:930) [testng] at org.jboss.seam.mock.SeamTest.init(SeamTest.java:42) [testng] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [testng] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [testng] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [testng] at java.lang.reflect.Method.invoke(Method.java:585) [testng] at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:604) [testng] at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:394) [testng] at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142) [testng] at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:79) [testng] at org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:165) [testng] at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:103) [testng] at org.testng.TestRunner.runWorkers(TestRunner.java:678) [testng] at org.testng.TestRunner.privateRun(TestRunner.java:624) [testng] at org.testng.TestRunner.run(TestRunner.java:495) [testng] at org.testng.SuiteRunner.runTest(SuiteRunner.java:300) [testng] at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:295) [testng] at org.testng.SuiteRunner.privateRun(SuiteRunner.java:275) [testng] at org.testng.SuiteRunner.run(SuiteRunner.java:190) [testng] at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:792) [testng] at org.testng.TestNG.runSuitesLocally(TestNG.java:765) [testng] at org.testng.TestNG.run(TestNG.java:699) [testng] at org.testng.TestNG.privateMain(TestNG.java:824) [testng] at org.testng.TestNG.main(TestNG.java:802) [testng] Caused by: java.net.MalformedURLException [testng] at java.net.URL.<init>(URL.java:601) [testng] at java.net.URL.<init>(URL.java:464) [testng] at java.net.URL.<init>(URL.java:413) [testng] at org.jboss.deployment.JBossEjbParsingDeployer.getStandardMetaData(JBossEjbParsingDeployer.java:170) [testng] ... 42 more
This is caused by getStandardMetaData assuming that the SERVER_CONFIG_URL system property is set (Embedded doesn't set this). I have worked around this in Embedded bootstrap by setting the property (and adding standardjboss.xml to the bootstrap/conf directory), but I don't know if this is the correct solution.
2) Having done this, I find that no EJBs from WEB-INF/lib/jboss-seam.jar are being deployed so transaction synchronization fails. This may of course be due to my fix to (1).