Maybe try adding openejb-javaagent on the test jvm in your test configuration (and surefire args if it works).
Le dim. 24 juin 2018 14:27, Matthew Broadhead <[email protected]> a écrit : > if i comment out fetch then it works! hooray! > Root<QuoteType> quoteType = cq.from(QuoteType.class); > // quoteType.fetch("quoteTypeCategories", JoinType.LEFT); > > is there any way to make fetch work or do you think i have a mapping > error somewhere? i have never had any problems so far > > On 24/06/18 13:58, Matthew Broadhead wrote: > > i am loading the PU with a producer like > > @ApplicationScoped > > public class EntityManagerProducer { > > > > @PersistenceUnit(unitName = "sales") > > private EntityManagerFactory entityManagerFactory; > > > > @Produces > > @Default > > @RequestScoped > > public EntityManager create() { > > return this.entityManagerFactory.createEntityManager(); > > } > > > > public void dispose(@Disposes @Default EntityManager entityManager) { > > if (entityManager.isOpen()) { > > entityManager.close(); > > } > > } > > } > > > > On 24/06/18 13:46, Matthew Broadhead wrote: > >> i changed > >> @Descriptors(@Descriptor(name = "persistence.xml", path = > >> META-INF/persistence.xml")) > >> to > >> @Descriptors(@Descriptor(name = "persistence.xml", path = > >> "src/main/resources/META-INF/persistence.xml")) > >> and now it is loading the persistence.xml > >> > >> i still get the same error. if i turn logging up to TRACE i get the > >> below. is there any way to find the particular mapping might be > >> causing the problem? > >> > >> org.apache.openejb.OpenEJBException: Creating application failed: > >> /home/matthew/git/case-management/sales/QuoteGeneratorTest: > >> org.apache.openejb.OpenEJBRuntimeException: > >> <openjpa-2.4.2-r422266:1777108 fatal general error> > >> org.apache.openjpa.persistence.PersistenceException: There was an > >> error when invoking the static newInstance method on the named > >> factory class "org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory". See > >> the nested exception for details.: <openjpa-2.4.2-r422266:1777108 > >> fatal general error> > >> org.apache.openjpa.persistence.PersistenceException: There was an > >> error when invoking the static newInstance method on the named > >> factory class "org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory". See > >> the nested exception for details. > >> at > >> > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:1042) > >> at > >> > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:718) > >> at > >> > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:714) > >> at > >> > org.apache.openejb.testing.ApplicationComposers.deployApp(ApplicationComposers.java:724) > >> at > >> > org.apache.openejb.testing.ApplicationComposers.before(ApplicationComposers.java:386) > >> at > >> > org.apache.openejb.testing.ApplicationComposers.evaluate(ApplicationComposers.java:1068) > >> at > >> > org.apache.openejb.junit.DeployApplication.evaluate(DeployApplication.java:40) > >> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) > >> at > >> > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) > >> at > >> > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) > >> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) > >> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) > >> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) > >> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) > >> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) > >> at org.junit.runners.ParentRunner.run(ParentRunner.java:363) > >> at > >> > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) > >> at > >> > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > >> at > >> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:538) > >> at > >> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:760) > >> at > >> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:460) > >> at > >> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206) > >> Caused by: org.apache.openejb.OpenEJBException: > >> org.apache.openejb.OpenEJBRuntimeException: > >> <openjpa-2.4.2-r422266:1777108 fatal general error> > >> org.apache.openjpa.persistence.PersistenceException: There was an > >> error when invoking the static newInstance method on the named > >> factory class "org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory". See > >> the nested exception for details.: <openjpa-2.4.2-r422266:1777108 > >> fatal general error> > >> org.apache.openjpa.persistence.PersistenceException: There was an > >> error when invoking the static newInstance method on the named > >> factory class "org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory". See > >> the nested exception for details. > >> at > >> > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:873) > >> ... 21 more > >> Caused by: org.apache.openejb.OpenEJBRuntimeException: > >> <openjpa-2.4.2-r422266:1777108 fatal general error> > >> org.apache.openjpa.persistence.PersistenceException: There was an > >> error when invoking the static newInstance method on the named > >> factory class "org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory". See > >> the nested exception for details. > >> at > >> > org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.createDelegate(ReloadableEntityManagerFactory.java:136) > >> at > >> > org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.<init>(ReloadableEntityManagerFactory.java:105) > >> at > >> > org.apache.openejb.assembler.classic.PersistenceBuilder.createEntityManagerFactory(PersistenceBuilder.java:157) > >> at > >> > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:867) > >> ... 21 more > >> Caused by: <openjpa-2.4.2-r422266:1777108 fatal general error> > >> org.apache.openjpa.persistence.PersistenceException: There was an > >> error when invoking the static newInstance method on the named > >> factory class "org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory". See > >> the nested exception for details. > >> at > >> org.apache.openjpa.kernel.Bootstrap.newBrokerFactory(Bootstrap.java:73) > >> at > >> > org.apache.openjpa.persistence.PersistenceProviderImpl.getBrokerFactory(PersistenceProviderImpl.java:149) > >> at > >> > org.apache.openjpa.persistence.PersistenceProviderImpl.createContainerEntityManagerFactory(PersistenceProviderImpl.java:191) > >> at > >> > org.apache.openjpa.persistence.PersistenceProviderImpl.createContainerEntityManagerFactory(PersistenceProviderImpl.java:63) > >> at > >> > org.apache.openejb.assembler.classic.EntityManagerFactoryCallable.call(EntityManagerFactoryCallable.java:109) > >> at > >> > org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.createDelegate(ReloadableEntityManagerFactory.java:134) > >> ... 24 more > >> Caused by: java.lang.IllegalStateException: On a thread without an > >> initialized context nor a classloader mapping a deployed app > >> at > >> > org.apache.openejb.cdi.ThreadSingletonServiceImpl.get(ThreadSingletonServiceImpl.java:287) > >> at > >> > org.apache.openejb.cdi.ThreadSingletonServiceImpl.getContext(ThreadSingletonServiceImpl.java:263) > >> at > >> > org.apache.openejb.cdi.ThreadSingletonServiceImpl.get(ThreadSingletonServiceImpl.java:298) > >> at > >> > org.apache.openejb.cdi.ThreadSingletonServiceImpl.get(ThreadSingletonServiceImpl.java:60) > >> at > >> > org.apache.webbeans.config.WebBeansFinder.getSingletonInstance(WebBeansFinder.java:51) > >> at > >> > org.apache.webbeans.config.WebBeansContext.getInstance(WebBeansContext.java:185) > >> at > >> > org.apache.webbeans.config.WebBeansContext.currentInstance(WebBeansContext.java:203) > >> at > >> > org.apache.openejb.assembler.classic.EntityManagerFactoryCallable$BmHandler.findBm(EntityManagerFactoryCallable.java:170) > >> at > >> > org.apache.openejb.assembler.classic.EntityManagerFactoryCallable$BmHandler.invoke(EntityManagerFactoryCallable.java:158) > >> at com.sun.proxy.$Proxy38.toString(Unknown Source) > >> at java.lang.String.valueOf(String.java:2994) > >> at java.lang.StringBuilder.append(StringBuilder.java:131) > >> at java.util.AbstractMap.toString(AbstractMap.java:559) > >> at java.text.MessageFormat.subformat(MessageFormat.java:1280) > >> at java.text.MessageFormat.format(MessageFormat.java:865) > >> at java.text.Format.format(Format.java:157) > >> at java.text.MessageFormat.format(MessageFormat.java:841) > >> at > >> > org.apache.openjpa.lib.util.Localizer$Message.getMessage(Localizer.java:282) > >> at > >> > org.apache.openjpa.lib.util.Localizer$Message.toString(Localizer.java:309) > >> at > >> org.apache.openjpa.lib.log.AbstractLog.toString(AbstractLog.java:138) > >> at org.apache.openjpa.lib.log.AbstractLog.trace(AbstractLog.java:72) > >> at org.apache.openjpa.lib.log.AbstractLog.trace(AbstractLog.java:67) > >> at > >> > org.apache.openjpa.persistence.PersistenceProductDerivation$ConfigurationProviderImpl.setInto(PersistenceProductDerivation.java:764) > >> at > >> > org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newInstance(JDBCBrokerFactory.java:60) > >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >> at > >> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >> at > >> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >> at java.lang.reflect.Method.invoke(Method.java:498) > >> at > >> org.apache.openjpa.kernel.Bootstrap.invokeFactory(Bootstrap.java:131) > >> at > >> org.apache.openjpa.kernel.Bootstrap.newBrokerFactory(Bootstrap.java:65) > >> ... 29 more > >> > >> On 24/06/18 13:02, Romain Manni-Bucau wrote: > >>> mapping error in your model it seems or bad persistence unit > >>> definition if > >>> you dont use scanning. > >>> > >>> Romain Manni-Bucau > >>> @rmannibucau <https://twitter.com/rmannibucau> | Blog > >>> <https://rmannibucau.metawerx.net/> | Old Blog > >>> <http://rmannibucau.wordpress.com> | Github > >>> <https://github.com/rmannibucau> | > >>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book > >>> < > https://www.packtpub.com/application-development/java-ee-8-high-performance> > > >>> > >>> > >>> > >>> Le dim. 24 juin 2018 à 12:52, Matthew Broadhead > >>> <[email protected]> a écrit : > >>> > >>>> thanks. removing the @Jars helped. it is now injecting CDI bean fine. > >>>> but now i get OpenJPA NPE on > >>>> List<QuoteType> quoteTypeList = query.getResultList(); > >>>> > >>>> <openjpa-2.4.2-r422266:1777108 nonfatal general error> > >>>> org.apache.openjpa.persistence.PersistenceException: null > >>>> at > >>>> org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:1029) > >>>> at > >>>> org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:928) > >>>> at > >>>> > >>>> > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.load(JDBCStoreManager.java:1032) > > >>>> > >>>> at > >>>> > org.apache.openjpa.jdbc.sql.AbstractResult.load(AbstractResult.java:280) > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.jdbc.sql.SelectImpl$SelectResult.load(SelectImpl.java:2382) > > >>>> > >>>> at > >>>> > org.apache.openjpa.jdbc.sql.AbstractResult.load(AbstractResult.java:274) > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.jdbc.kernel.InstanceResultObjectProvider.getResultObject(InstanceResultObjectProvider.java:59) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.kernel.QueryImpl$PackingResultObjectProvider.getResultObject(QueryImpl.java:2080) > > >>>> > >>>> at > >>>> > org.apache.openjpa.lib.rop.EagerResultList.<init>(EagerResultList.java:35) > >>>> > >>>> at > >>>> org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1257) > >>>> at > >>>> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1013) > >>>> at > >>>> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:869) > >>>> at > >>>> org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:800) > >>>> at > >>>> > org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:541) > >>>> > >>>> at > >>>> org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:274) > >>>> at > >>>> > org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:290) > >>>> > >>>> at > >>>> > uk.me.kissy.sales.dao.QuoteTypeDao.selectQuoteTypes(QuoteTypeDao.java:51) > >>>> > >>>> at > >>>> > >>>> > uk.me.kissy.sales.dao.QuoteTypeDao$$OwbNormalScopeProxy0.selectQuoteTypes(uk/me/kissy/sales/dao/QuoteTypeDao.java) > > >>>> > >>>> at > >>>> > uk.me.kissy.sales.test.QuoteGeneratorTest.test1(QuoteGeneratorTest.java:96) > >>>> > >>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>> at > >>>> > >>>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > >>>> > >>>> at > >>>> > >>>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > >>>> > >>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>> at > >>>> > >>>> > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) > > >>>> > >>>> at > >>>> > >>>> > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) > > >>>> > >>>> at > >>>> > >>>> > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) > > >>>> > >>>> at > >>>> > >>>> > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openejb.junit.DeployApplication$1.call(DeployApplication.java:44) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openejb.junit.DeployApplication$1.call(DeployApplication.java:40) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openejb.testing.ApplicationComposers.evaluate(ApplicationComposers.java:1070) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openejb.junit.DeployApplication.evaluate(DeployApplication.java:40) > > >>>> > >>>> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) > >>>> at > >>>> > >>>> > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) > > >>>> > >>>> at > >>>> > >>>> > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) > > >>>> > >>>> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) > >>>> at > >>>> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) > >>>> at > >>>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) > >>>> at > >>>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) > >>>> at > >>>> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) > >>>> at org.junit.runners.ParentRunner.run(ParentRunner.java:363) > >>>> at > >>>> > >>>> > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) > > >>>> > >>>> at > >>>> > >>>> > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > > >>>> > >>>> at > >>>> > >>>> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:538) > > >>>> > >>>> at > >>>> > >>>> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:760) > > >>>> > >>>> at > >>>> > >>>> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:460) > > >>>> > >>>> at > >>>> > >>>> > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206) > > >>>> > >>>> Caused by: java.lang.NullPointerException > >>>> at > >>>> > >>>> > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.setInverseRelation(JDBCStoreManager.java:452) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initializeState(JDBCStoreManager.java:412) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initialize(JDBCStoreManager.java:305) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:112) > > >>>> > >>>> at > >>>> > >>>> > org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57) > > >>>> > >>>> at > >>>> org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:1048) > >>>> at > >>>> org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:1006) > >>>> ... 45 more > >>>> > >>>> > >>>> On 24/06/18 12:18, Romain Manni-Bucau wrote: > >>>>> you don't need @Jars for that > >>>>> > >>>>> why you get an exception is cause appcomposers knows mysql has no EE > >>>>> classes so it is excluded from the "find" logic. @Jars means "grab > >>>>> the > >>>> jars > >>>>> matching this prefix and scan them to include them in the deployed > >>>>> app". > >>>>> > >>>>> Romain Manni-Bucau > >>>>> @rmannibucau <https://twitter.com/rmannibucau> | Blog > >>>>> <https://rmannibucau.metawerx.net/> | Old Blog > >>>>> <http://rmannibucau.wordpress.com> | Github < > >>>> https://github.com/rmannibucau> | > >>>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book > >>>>> < > >>>> > https://www.packtpub.com/application-development/java-ee-8-high-performance > >>>> > >>>>> > >>>>> > >>>>> Le dim. 24 juin 2018 à 12:15, Matthew Broadhead > >>>>> <[email protected]> a écrit : > >>>>> > >>>>>> i tried adding test scope to pom.xml > >>>>>> <dependency> > >>>>>> <groupId>mysql</groupId> > >>>>>> <artifactId>mysql-connector-java</artifactId> > >>>>>> <version>${mysql.connector.version}</version> > >>>>>> <scope>test</scope> > >>>>>> </dependency> > >>>>>> > >>>>>> also added mysql-connector-java-5.1.33.jar to the root of > >>>>>> src/test/resources but i still get > >>>>>> java.lang.IllegalArgumentException: mysql not found in classpath > >>>>>> at > >>>>>> > >>>>>> > >>>> > org.apache.openejb.testing.ApplicationComposers.findFiles(ApplicationComposers.java:1020) > > >>>> > >>>>>> at > >>>>>> > >>>>>> > >>>> > org.apache.openejb.testing.ApplicationComposers.addWebApp(ApplicationComposers.java:899) > > >>>> > >>>>>> at > >>>>>> > >>>>>> > >>>> > org.apache.openejb.testing.ApplicationComposers.deployApp(ApplicationComposers.java:651) > > >>>> > >>>>>> > >>>>>> On 24/06/18 12:01, Romain Manni-Bucau wrote: > >>>>>>> Appcopposer loads classes in the classpath so add it as a test > >>>>>> dependency. > >>>>>>> Le dim. 24 juin 2018 11:37, Matthew Broadhead > >>>>>>> <[email protected]> a écrit : > >>>>>>> > >>>>>>>> not much luck with arquillian. i am trying ApplicationComposer > >>>>>>>> again. > >>>>>>>> now i understand the properties format > >>>>>>>> @ContainerProperties({ @ContainerProperties.Property(name = > >>>>>>>> "sales", > >>>>>>>> value = "new://Resource?type=DataSource"), > >>>>>>>> @ContainerProperties.Property(name = > >>>>>>>> "sales.JdbcDriver", > >>>> value > >>>>>>>> = "com.mysql.jdbc.Driver"), > >>>>>>>> @ContainerProperties.Property(name = "sales.JdbcUrl", > >>>> value = > >>>>>>>> "jdbc:mysql://localhost:3306/sales"), > >>>>>>>> @ContainerProperties.Property(name = "sales.Username", > >>>> value = > >>>>>>>> "admin"), > >>>>>>>> @ContainerProperties.Property(name = "sales.Password", > >>>> value = > >>>>>>>> "blahblah") }) > >>>>>>>> > >>>>>>>> but now i get > >>>>>>>> org.apache.xbean.propertyeditor.PropertyEditorException: Unable to > >>>>>>>> resolve class com.mysql.jdbc.Driver > >>>>>>>> at > >>>>>>>> > >>>>>>>> > >>>> > org.apache.xbean.propertyeditor.ClassEditor.toObjectImpl(ClassEditor.java:43) > > >>>> > >>>>>>>> at > >>>>>>>> > >>>>>>>> > >>>> > org.apache.xbean.propertyeditor.AbstractConverter.toObject(AbstractConverter.java:86) > > >>>> > >>>>>>>> how to bundle the mysql driver? i tried > >>>>>>>> @Jars("mysql") > >>>>>>>> > >>>>>>>> On 23/06/18 21:58, Romain Manni-Bucau wrote: > >>>>>>>>> You need all your tested app needs (this is why classpath > >>>>>>>>> deploypent > >>>>>>>>> solutions are easier to maintain). > >>>>>>>>> > >>>>>>>>> Maybe import our ziplock lib and use Mvn.Builder class if you are > >>>> maven > >>>>>>>>> based. It can help. > >>>>>>>>> > >>>>>>>>> Le sam. 23 juin 2018 20:09, Matthew Broadhead > >>>>>>>>> <[email protected]> a écrit : > >>>>>>>>> > >>>>>>>>>> ah ok. i found > >>>>>>>>>> .addAsManifestResource(new > >>>>>> ClassLoaderAsset("META-INF/persistence.xml"), > >>>>>>>>>> "persistence.xml") > >>>>>>>>>> > >>>>>>>>>> in > >>>>>>>>>> > >>>>>>>>>> > >>>> > http://svn.apache.org/repos/asf/tomee/tomee/trunk/examples/arquillian-jpa/src/test/java/org/superbiz/arquillian/test/persistence/PersistenceTest.java > >>>> > >>>>>>>>>> but now i am back to > >>>>>>>>>> SEVERE - CDI Beans module deployment failed > >>>>>>>>>> org.apache.webbeans.exception.WebBeansDeploymentException: > >>>>>>>>>> javax.enterprise.inject.UnsatisfiedResolutionException: Api type > >>>>>>>>>> [uk.me.kissy.sales.dao.QuoteTypeDao] is not found with the > >>>> qualifiers > >>>>>>>>>> Qualifiers: [@javax.enterprise.inject.Default()] > >>>>>>>>>> for injection into Field Injection Point, field name : > >>>>>>>>>> quoteTypeDao, > >>>>>>>>>> Bean Owner : [QuoteGeneratorArquillian, WebBeansType:ENTERPRISE, > >>>>>>>>>> Name:null, API > >>>>>>>>>> > >>>> > Types:[uk.me.kissy.sales.test.QuoteGeneratorArquillian,java.lang.Object], > >>>> > >>>> > Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any]] > >>>> > >>>>>>>>>> at > >>>>>>>>>> > >>>>>> > org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:327) > >>>>>> > >>>>>>>>>> so i must have missed a required class somewhere > >>>>>>>>>> > >>>>>>>>>> On 23/06/18 18:53, Matthew Broadhead wrote: > >>>>>>>>>>> do i need to copy the persistence.xml to > >>>> src/test/resources/META-INF? > >>>>>>>>>>> or can i specify its location somewhere in config? > >>>>>>>>>>> > >>>>>>>>>>> SEVERE - FAIL ... sales: Missing required persistence.xml > >>>>>>>>>>> for > >>>>>>>>>>> @PersistenceUnit ref "entityManagerFactory" to unit "sales" > >>>>>>>>>>> SEVERE - Invalid EjbModule(name=sales, > >>>>>>>>>>> > >>>> > path=/home/matthew/git/case-management/sales/target/working-dir/0/sales) > >>>> > >>>>>>>>>>> SEVERE - FAIL ... sales: Missing required persistence.xml > >>>>>>>>>>> for > >>>>>>>>>>> @PersistenceUnit ref "entityManagerFactory" to unit "sales" > >>>>>>>>>>> SEVERE - Invalid WebModule(name=sales, > >>>>>>>>>>> > >>>> > path=/home/matthew/git/case-management/sales/target/working-dir/0/sales) > >>>> > >>>>>>>>>>> INFO - Set the 'openejb.validation.output.level' system > >>>>>>>>>>> property to > >>>>>>>>>>> VERBOSE for increased validation details. > >>>>>>>>>>> SEVERE - Unable to deploy collapsed ear in war > >>>>>>>>>>> > >>>> > StandardEngine[Catalina].StandardHost[localhost].StandardContext[/sales] > >>>> > >>>>>>>>>>> org.apache.openejb.config.ValidationFailedException: Module > >>>>>>>>>>> failed > >>>>>>>>>>> validation. AppModule(name=sales) > >>>>>>>>>>> at > >>>>>>>>>>> > >>>> > org.apache.openejb.config.ReportValidationResults.deploy(ReportValidationResults.java:88) > > >>>> > >>>>>>>>>>> at > >>>>>>>>>>> > >>>>>> > org.apache.openejb.config.AppInfoBuilder.build(AppInfoBuilder.java:322) > >>>>>> > >>>>>>>>>>> On 23/06/18 13:30, Romain Manni-Bucau wrote: > >>>>>>>>>>>> You can but you need to add all the object graph in the > >>>>>>>>>>>> archive. > >>>>>> Here > >>>>>>>>>>>> you > >>>>>>>>>>>> miss an injection it seems (in your dao?). > >>>>>>>>>>>> > >>>>>>>>>>>> Side note: operatesondeployment and naming your archive is not > >>>>>> needed > >>>>>>>>>>>> here. > >>>>>>>>>>>> It is useful when you deploy N > 1 archives. > >>>>>>>>>>>> > >>>>>>>>>>>> Le sam. 23 juin 2018 12:54, Matthew Broadhead > >>>>>>>>>>>> <[email protected]> a écrit : > >>>>>>>>>>>> > >>>>>>>>>>>>> i got the sample configuration from > >>>>>>>>>>>>> > http://tomee.apache.org/developer/testing/arquillian/index.html > >>>>>>>>>>>>> > >>>>>>>> under > >>>>>>>>>>>>> remote section. > >>>>>>>>>>>>> > >>>>>>>>>>>>> now my problem is that i can't inject the CDI bean > >>>>>>>>>>>>> SEVERE - CDI Beans module deployment failed > >>>>>>>>>>>>> org.apache.webbeans.exception.WebBeansDeploymentException: > >>>>>>>>>>>>> javax.enterprise.inject.UnsatisfiedResolutionException: > >>>>>>>>>>>>> Api type > >>>>>>>>>>>>> [uk.me.kissy.sales.dao.QuoteTypeDao] is not found with the > >>>>>> qualifiers > >>>>>>>>>>>>> Qualifiers: [@javax.enterprise.inject.Default()] > >>>>>>>>>>>>> for injection into Field Injection Point, field name : > >>>>>> quoteTypeDao, > >>>>>>>>>>>>> Bean Owner : [QuoteGeneratorArquillian, > >>>>>>>>>>>>> WebBeansType:ENTERPRISE, > >>>>>>>>>>>>> Name:null, API > >>>>>>>>>>>>> > >>>> > Types:[uk.me.kissy.sales.test.QuoteGeneratorArquillian,java.lang.Object], > >>>> > >>>> > Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any]] > >>>> > >>>>>>>>>>>>> at > >>>>>>>>>>>>> > >>>> > org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:327) > >>>> > >>>>>>>>>>>>> at > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>> > org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) > > >>>> > >>>>>>>>>>>>> i created the @Deployment using > >>>>>>>>>>>>> @Inject > >>>>>>>>>>>>> private QuoteTypeDao quoteTypeDao; > >>>>>>>>>>>>> > >>>>>>>>>>>>> @Deployment(name = "archive") > >>>>>>>>>>>>> public static WebArchive war() { > >>>>>>>>>>>>> return ShrinkWrap.create(WebArchive.class, > >>>>>>>>>>>>> "test.war").addAsWebInfResource(EmptyAsset.INSTANCE, > >>>>>>>>>>>>> "beans.xml") > >>>>>>>>>>>>> .addClasses(QuoteTypeDao.class); > >>>>>>>>>>>>> } > >>>>>>>>>>>>> > >>>>>>>>>>>>> @Test > >>>>>>>>>>>>> @OperateOnDeployment("archive") > >>>>>>>>>>>>> public void test1() { > >>>>>>>>>>>>> Quote quote = new Quote(); > >>>>>>>>>>>>> Promotion promotion = null; > >>>>>>>>>>>>> List<QuoteType> quoteTypeList = > >>>>>>>>>>>>> quoteTypeDao.selectQuoteTypes(promotion, true); > >>>>>>>>>>>>> System.out.println("Quote type list size: " + > >>>>>>>>>>>>> quoteTypeList.size()); > >>>>>>>>>>>>> for (QuoteType quoteType : quoteTypeList) { > >>>>>>>>>>>>> System.out.println(quoteType.getName()); > >>>>>>>>>>>>> // quoteGeneratorDao.generateQuote(quote, > >>>>>> promotion, > >>>>>>>>>>>>> // quoteType.getQuoteTypeCategories(), > >>>>>> quoteQuestions, > >>>>>>>>>>>>> // quoteInit, true); > >>>>>>>>>>>>> assertEquals(0, 1); > >>>>>>>>>>>>> } > >>>>>>>>>>>>> assertEquals(0, 1); > >>>>>>>>>>>>> } > >>>>>>>>>>>>> > >>>>>>>>>>>>> can i not inject a CDI bean into the test using > >>>>>>>>>>>>> arquillian-tomee-remote? > >>>>>>>>>>>>> > >>>>>>>>>>>>> On 23/06/18 10:17, Romain Manni-Bucau wrote: > >>>>>>>>>>>>>> It is not needed at all bit it appears in your stack. If > >>>>>>>>>>>>>> it is a > >>>>>>>> copy > >>>>>>>>>>>>> paste > >>>>>>>>>>>>>> just drop it ;) > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Le sam. 23 juin 2018 10:05, Matthew Broadhead > >>>>>>>>>>>>>> <[email protected]> a écrit : > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>> hi, i checked > >>>>>>>>>>>>>>> http://incubator.apache.org/projects/sirona.html > >>>>>>>> but i > >>>>>>>>>>>>>>> couldn't find any documentation. is sirona a > >>>>>>>>>>>>>>> requirement for > >>>>>>>>>>>>>>> arquillian-tomee-remote? i.e. is it necessary to monitor > >>>> tests? > >>>>>>>>>>>>>>> if so, > >>>>>>>>>>>>>>> then how do i exclude the mysql lib from the configuration? > >>>>>>>>>>>>>>> <!-- we monitor the test with sirona --> > >>>>>>>>>>>>>>> <property name="javaagent"> > >>>>>>>>>>>>>>> > >>>> mvn:org.apache.sirona:sirona-javaagent:0.2-incubating:jar:shaded > >>>>>>>>>>>>>>> </property> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> On 23/06/18 08:15, Romain Manni-Bucau wrote: > >>>>>>>>>>>>>>>> Exclude mysql from sirona instrumentation. Its bytecode > >>>>>>>>>>>>>>>> is not > >>>>>>>> safe. > >>>>>>>>>>>>>>>> Le sam. 23 juin 2018 01:03, Matthew Broadhead > >>>>>>>>>>>>>>>> <[email protected]> a écrit : > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> thanks i added it using > >>>>>>>>>>>>>>>>> <property > >>>>>>>>>>>>>>>>> > >>>> name="additionalLibs">mvn:mysql:mysql-connector-java:5.1.33</property> > >>>>>>>>>>>>>>>>> but i get these errors (which don't seem to stop > >>>>>>>>>>>>>>>>> execution) > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> fail to transform > >>>>>>>>>>>>> class:com/mysql/jdbc/AbandonedConnectionCleanupThread, > >>>>>>>>>>>>>>>>> JSR/RET are not supported with computeFrames > >>>>>>>>>>>>>>>>> optionjava.lang.RuntimeException: JSR/RET are not > >>>>>>>>>>>>>>>>> supported > >>>>>> with > >>>>>>>>>>>>>>>>> computeFrames option > >>>>>>>>>>>>>>>>> at org.apache.sirona.asm.Frame.a(Unknown > >>>>>>>>>>>>>>>>> Source) > >>>>>>>>>>>>>>>>> at > >>>>>>>> org.apache.sirona.asm.MethodWriter.visitJumpInsn(Unknown > >>>>>>>>>>>>>>> Source) > >>>>>>>>>>>>>>>>> SEVERE - Can't create DataSource > >>>>>>>>>>>>>>>>> java.lang.LinkageError: loader (instance of > >>>>>>>>>>>>>>>>> java/net/URLClassLoader): > >>>>>>>>>>>>>>>>> attempted duplicate class definition for name: > >>>>>>>>>>>>>>>>> "com/mysql/jdbc/ConnectionImpl" > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> but this one is a stopper > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> SEVERE - CDI Beans module deployment failed > >>>>>>>>>>>>>>>>> > org.apache.webbeans.exception.WebBeansDeploymentException: > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> javax.enterprise.inject.UnsatisfiedResolutionException: > >>>>>>>>>>>>>>>>> Api > >>>>>> type > >>>>>>>>>>>>>>>>> [uk.me.kissy.sales.dao.QuoteTypeDao] is not found with > >>>>>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>> qualifiers > >>>>>>>>>>>>>>>>> Qualifiers: [@javax.enterprise.inject.Default()] > >>>>>>>>>>>>>>>>> for injection into Field Injection Point, field name : > >>>>>>>>>>>>>>>>> quoteTypeDao, > >>>>>>>>>>>>>>>>> Bean Owner : [QuoteGeneratorArquillian, > >>>>>> WebBeansType:ENTERPRISE, > >>>>>>>>>>>>>>>>> Name:null, API > >>>>>>>>>>>>>>>>> Types:[java.lang.Object,uk.me > >>>>>>>>>>>>>>> .kissy.sales.test.QuoteGeneratorArquillian], > >>>>>>>>>>>>>>> > >>>> > Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any]] > >>>> > >>>>>>>>>>>>>>>>> i tried enabling remote support as i am trying remote not > >>>>>>>> embedded > >>>>>>>>>>>>>>>>> tomee.remote.support = true > >>>>>>>>>>>>>>>>> # tomee.serialization.class.blacklist = * > >>>>>>>>>>>>>>>>> tomee.serialization.class.whitelist = * > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> On 22/06/18 18:44, Romain Manni-Bucau wrote: > >>>>>>>>>>>>>>>>>> You can add it in libs property of arquillian container > >>>>>> config. > >>>>>>>>>>>>>>>>>> Just > >>>>>>>>>>>>>>>>> prefix > >>>>>>>>>>>>>>>>>> the coords with mvn:. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Ex: mvn:mysql:mysql-connector-jav:version > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> It is a multiline property so you can add N libs to > >>>>>>>>>>>>>>>>>> tomee > >>>> lib > >>>>>>>> this > >>>>>>>>>>>>> way > >>>>>>>>>>>>>>>>>> Le ven. 22 juin 2018 18:13, Matthew Broadhead > >>>>>>>>>>>>>>>>>> <[email protected]> a écrit : > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> INFO: Downloading > >>>>>> org.apache.tomee:apache-tomee:7.0.3:zip:plus > >>>>>>>>>>>>> please > >>>>>>>>>>>>>>>>>>> wait... > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> i have an arquillian test running up ok but it is > >>>> complaining > >>>>>>>>>>>>>>>>>>> SEVERE - FATAL ERROR: Unknown error in Assembler. > >>>>>>>>>>>>>>>>>>> Please > >>>> send > >>>>>>>> the > >>>>>>>>>>>>>>>>>>> following stack trace and this message to > >>>>>>>>>>>>>>>>>>> [email protected] : > >>>>>>>>>>>>>>>>>>> > org.apache.xbean.propertyeditor.PropertyEditorException: > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>> Unable to > >>>>>>>>>>>>>>>>>>> resolve class com.mysql.jdbc.Driver > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> is there any way to directly bring in the mysql > >>>>>>>>>>>>>>>>>>> driver from > >>>>>>>> maven > >>>>>>>>>>>>>>>>>>> central? or do i need to download manually and put > >>>>>>>>>>>>>>>>>>> it into > >>>>>>>>>>>>>>>>>>> src/test/tomee/lib? > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> On 22/06/18 10:03, Romain Manni-Bucau wrote: > >>>>>>>>>>>>>>>>>>>> You can theorically but I'd recommand you to write > >>>>>>>>>>>>>>>>>>>> it in > >>>> the > >>>>>>>>>>>>>>>>>>>> final > >>>>>>>>>>>>>>>>> module > >>>>>>>>>>>>>>>>>>>> instead of trying to use the parent which will be > >>>>>>>>>>>>>>>>>>>> executed > >>>>>>>>>>>>>>>>>>>> before > >>>>>>>>>>>>> any > >>>>>>>>>>>>>>>>>>> other > >>>>>>>>>>>>>>>>>>>> modules. > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> If A depends on B which depends on C then write > >>>>>>>>>>>>>>>>>>>> your tests > >>>>>> in > >>>>>>>>>>>>>>>>>>>> A for > >>>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>>> complete app tests and write unit tests in B and C > >>>>>>>> (potentially > >>>>>>>>>>>>> using > >>>>>>>>>>>>>>>>>>>> arquillian, appcomposer or even other solutions). > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> For reference: > >>>>>>>>>>>>>>>>>>>> > >>>>>>>> http://tomee.apache.org/developer/testing/arquillian/index.html > >>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>> http://tomee.apache.org/developer/testing/index.html > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> Romain Manni-Bucau > >>>>>>>>>>>>>>>>>>>> @rmannibucau <https://twitter.com/rmannibucau> | > Blog > >>>>>>>>>>>>>>>>>>>> <https://rmannibucau.metawerx.net/> | Old Blog > >>>>>>>>>>>>>>>>>>>> <http://rmannibucau.wordpress.com> | Github < > >>>>>>>>>>>>>>>>>>> https://github.com/rmannibucau> | > >>>>>>>>>>>>>>>>>>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> > >>>>>>>>>>>>>>>>>>>> | Book > >>>>>>>>>>>>>>>>>>>> < > >>>> > https://www.packtpub.com/application-development/java-ee-8-high-performance > >>>> > >>>>>>>>>>>>>>>>>>>> Le ven. 22 juin 2018 à 09:42, Matthew Broadhead > >>>>>>>>>>>>>>>>>>>> <[email protected]> a écrit : > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> it sounds like Arquillian might be the best fit in my > >>>> case. > >>>>>>>> can > >>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>>>> tests inject CDI beans from the webapps or does > >>>> everything > >>>>>>>>>>>>>>>>>>>>> need to > >>>>>>>>>>>>>>> be > >>>>>>>>>>>>>>>>>>>>> done through http? looking at > >>>>>>>>>>>>>>>>>>>>> https://tomee.apache.org/refcard/refcard.html > "Simple > >>>>>>>>>> Arquilian > >>>>>>>>>>>>>>> Test" > >>>>>>>>>>>>>>>>>>> it > >>>>>>>>>>>>>>>>>>>>> looks as if beans can be injected... > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> is it possible to create the tests (or at least TomEE > >>>>>>>> instance) > >>>>>>>>>>>>> in a > >>>>>>>>>>>>>>>>>>>>> parent pom? i need to run several webapps at once > >>>>>>>>>>>>>>>>>>>>> which > >>>>>> are > >>>>>>>>>>>>>>>>>>>>> all > >>>>>>>>>>>>>>>>> modules > >>>>>>>>>>>>>>>>>>>>> of the parent. i think code is discouraged in parent > >>>>>>>> project. > >>>>>>>>>>>>>>>>>>>>> On 22/06/18 09:18, Romain Manni-Bucau wrote: > >>>>>>>>>>>>>>>>>>>>>> You can set the property openejb.location (or the > >>>>>>>>>>>>>>>>>>>>>> other > >>>>>>>>>>>>>>>>>>>>>> ones we > >>>>>>>>>>>>>>> have) > >>>>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>> point to an openejb.xml if you want. The > >>>>>>>>>>>>>>>>>>>>>> advantage of > >>>> the > >>>>>>>>>>>>>>> properties > >>>>>>>>>>>>>>>>> is > >>>>>>>>>>>>>>>>>>>>>> that it is filtered during the test and doesnt > >>>>>>>>>>>>>>>>>>>>>> require a > >>>>>>>> maven > >>>>>>>>>>>>>>> build > >>>>>>>>>>>>>>>>>>> but > >>>>>>>>>>>>>>>>>>>>> it > >>>>>>>>>>>>>>>>>>>>>> is up to you and depends the project setup. > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> Arquillian is great to test complete > >>>>>>>>>>>>>>>>>>>>>> application*s* in a > >>>>>>>> real > >>>>>>>>>>>>>>> server, > >>>>>>>>>>>>>>>>>>>>>> ApplicationComposer is good to test small parts of > >>>>>>>>>>>>>>>>>>>>>> applications > >>>>>>>>>>>>> or > >>>>>>>>>>>>>>>>>>>>>> frameworks, TomEE, > >>>>>>>>>>>>>>>>>>>>>> TomEEEmbeddedSingleRunner is great to test a real > >>>>>>>>>>>>>>>>>>>>>> app > >>>>>>>> (single > >>>>>>>>>>>>>>>>>>> deployment > >>>>>>>>>>>>>>>>>>>>>> from the classpath + single test setup) and will > >>>>>>>>>>>>>>>>>>>>>> save a > >>>>>> lot > >>>>>>>> of > >>>>>>>>>>>>>>> time. > >>>>>>>>>>>>>>>>>>>>>> Romain Manni-Bucau > >>>>>>>>>>>>>>>>>>>>>> @rmannibucau <https://twitter.com/rmannibucau> | > >>>>>>>>>>>>>>>>>>>>>> Blog > >>>>>>>>>>>>>>>>>>>>>> <https://rmannibucau.metawerx.net/> | Old Blog > >>>>>>>>>>>>>>>>>>>>>> <http://rmannibucau.wordpress.com> | Github < > >>>>>>>>>>>>>>>>>>>>> https://github.com/rmannibucau> | > >>>>>>>>>>>>>>>>>>>>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> > | > >>>> Book > >>>>>>>>>>>>>>>>>>>>>> < > >>>> > https://www.packtpub.com/application-development/java-ee-8-high-performance > >>>> > >>>>>>>>>>>>>>>>>>>>>> Le ven. 22 juin 2018 à 09:03, Matthew Broadhead > >>>>>>>>>>>>>>>>>>>>>> <[email protected]> a écrit : > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> i am trying to use ApplicationComposer to create > >>>>>>>>>>>>>>>>>>>>>>> some > >>>>>>>> tests. > >>>>>>>>>>>>> CDI > >>>>>>>>>>>>>>> is > >>>>>>>>>>>>>>>>>>>>>>> scanning the classes correctly but i am a little > >>>>>> uncertain > >>>>>>>>>>>>>>>>>>>>>>> about > >>>>>>>>>>>>>>> how > >>>>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>>> load a test database. > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> i was going to start by just loading the > >>>>>>>>>>>>>>>>>>>>>>> database as > >>>>>>>>>>>>>>>>>>>>>>> normal as > >>>>>>>>>>>>> it > >>>>>>>>>>>>>>>>> is a > >>>>>>>>>>>>>>>>>>>>>>> copy of production database. but how do i > >>>>>>>>>>>>>>>>>>>>>>> specify the > >>>>>>>>>>>>>>>>>>>>>>> username > >>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>>>> password or any other properties that are needed to > >>>>>>>>>>>>>>>>>>>>>>> connect to > >>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>> db? > >>>> @ContainerProperties(@ContainerProperties.Property(name = > >>>>>>>>>>>>> "mydb", > >>>>>>>>>>>>>>>>>>> value > >>>>>>>>>>>>>>>>>>>>>>> = "jdbc:mysql://localhost:3306/mydb")) > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> is there a way to specify the resource in an xml > >>>>>>>>>>>>>>>>>>>>>>> file? > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> another question...is it better to start with > >>>> Arquillian > >>>>>> or > >>>>>>>>>>>>>>>>>>>>>>> ApplicationComposer? > >>>>>>>>>>>>>>>>>>>>>>> > >>>> > >> > > > > > > > > >
