1 2 Previous Next 17 Replies Latest reply on Mar 23, 2014 3:26 PM by Thomas Andolf

    Questions about testing EAR maven multi module project

    Thomas Andolf Newbie

      Hi...

       

      So.. i am not a very good programmer, need to say that first, and wanted to learn how to do tests with arquillian. So i did all the "getting started" tutorials on the web page and got them all to work. But now im working with a maven multi module project consisting of an EAR that has en EJB-archive and a WAR-archive in 2 separate maven modules.

       

      I can't find any simple documentation about how to deploy this in the easiest way possible. I have read up on Maven resolver that i need it to resolve my dependencies and i managed to resolve some of my dependencies for my EJB. I managed to package and deploy my ejb-module in an EAR and deploy and test stuff, but when it comes to the WAR in the "same" EAR i have no clue. Thing is i have my testclass(with the deployment method) in my EJB-modules test package so it finds all the classes to add and the pom.xml to resolve in the same module. But how do i create an WarArchive and add stuff to the WAR with classes that another module? (this might be a stupid question but im sorry if it is). I have seen people that import the final zipfile, extract the war, add the testclasses and then manipulate the application.xml but that feels like it is way to complicated for me. I have no clue where to even start...

       

      are there any decent tutorials out there for ear packaging?

       

      And "where" should i actually "create" my deployment? all the examples i have found are either simple with 3 classes, simple deployment and simple tests, OR people doing super complicated stuff with special pom.xmls or advanced workarounds. I feel very stupid working with arquillian... its a super useful tool for integration tests and i really would like to learn and the basic tutorials where awesome! but right about now im stumbling in the dark.

       

      Any advice for in what i should read/check out?

        • 1. Re: Questions about testing EAR maven multi module project
          Karel Piwko Master

          Hi Thomas,

           

          thank you using Arquillian! As for EAR support, it is not really ideal. Let me enumerate what options you have:

           

          1/ Move tests to integration-test phase and consume EAR archive from filesystem using ZipImporter from ShrinkWrap

          2/ Construct your EAR on your own. It boils down to following steps:

           

          * Construct (EJB) JAR - you can use ShrinkWrap Resolver MavenImporter and let ShrinkWrap build it from pom.xml

          * Construct WAR - you can use ShrinkWrap Resolver MavenImporter and let ShrinkWrap build it from pom.xml

          * Add libraries - you can use ShrinkWrap Resolver to resolver libraries from EAR submodule

          * Add manifest - you are on your own here - likely the best way is to prepare it on filesystem and configure Maven to use it instead of generate it

           

          As for ShrinkWrap Resolver, documentation is here: resolver/README.asciidoc at master · shrinkwrap/resolver · GitHub . You should be looking for Maven Importer for EJB and WAR submodules, and Resolving artifacts defined in POM files, option 2. for EAR.

           

           

          3/ Wait until we provide EAR support in ShrinkWrap Resolver - [SHRINKRES-98] Add support of EAR in MavenImporter - JBoss Issue Tracker

           

          Some people are creating an extra test submodule in Maven, some are putting integration tests next to EAR. Both options are viable, it's up to you. Option 1/ is likely the easiest but viable only for CI. For development, it is complicated as you need to ensure that your EAR on filesystem is always the latest and greatest. Option 2/ is the most flexible and represents what would be implemented in future in option 3/.

           

          Just a note, it does not matter whether you ask your question in ShrinkWrap or Arquillian forums as most people read both of them. There is no reason to cross-post :-)

           

          Regards,

           

          Karel

          1 of 1 people found this helpful
          • 2. Re: Questions about testing EAR maven multi module project
            Thomas Andolf Newbie

            Hi Karel!

             

            Thank you for the good answer. First of all let me apologize for the double post. I wrote this first and then thought it might had to be in the ShrinkWrap forum but i will remove the other one

             

            What you have written is pretty much what i have figured out... sort of... with a lot of trial and error.... but i have to be honest, i have wanted to trow out the computer through the window a couple of times.

             

            I agree with you on option 1, i have seen people import it from the filesystem, end then have to add the testclasses, and manipulate the manifest and such and that seems like a bad option. You have to keep the ear updated at all times and no... not for me. I am using option 2 but the big problem for em is that i have no idea what im sort of doing there are no references, and all the documentation are showing a single usage. Tutorials on arquillians webpage shows a simple project with 2-3 classes, no libraries, and no guidence. I know its all in the early stages, but as for the "no-ear-support" i didn't even know of! it doesn't say anywhere. I think Arquillian is an amazing tool, its really really useful and i have great respect for you guys that are developing it, but it could use some more "how to's" with some actual projects and some "good practices".

             

            i don't want to flame or anything... i am sorry if it sounds like it. i really think this tool is very useful!

             

            im gonna try the mavenImporter cause atm. i have added all my classes manually.

             

            Update:

             

            MavenImporter worked good for the war, but when using it for the ejb it throws me a "UnsupportedOperationException No packaging for for ejb packaging was found". So apparently there is no support for pom.xml with packagingtype ejb, probably only jar.

            • 3. Re: Re: Questions about testing EAR maven multi module project
              jee-developer Newbie

              I have a related problem with a multi-module project. I want to test my web module which uses the ejb module. The ejb module is declared as a dependency in the war-pom. In option 2. you suggested :

              * Construct (EJB) JAR - you can use ShrinkWrap Resolver MavenImporter and let ShrinkWrap build it from pom.xml

              And here is my problem. How can i construct such a jar file. I guess the MavenImporter should be used in this way?

              JavaArchive jar = ShrinkWrap.create(MavenImporter.class).loadPomFromFile("pom.xml").importBuildOutput().as(JavaArchive.class);
              

               

              But which pom should be used here? The pom of the ejb module? But its in another module. Should i copy the file in my web module in a resources folder? Or is there another method? Or is this way wrong?

              • 4. Re: Re: Questions about testing EAR maven multi module project
                Thomas Andolf Newbie

                hi fabian

                 

                when you are constructing your EAR it consists usually of 3 maybe up to 4 pom.xml.

                 

                it all depends on where you have your deployment class.

                 

                my EAR consists of:

                 

                EAR

                --lib

                --jar(ejb)

                --war

                 

                my deployment class is in my WAR so to build and deploy it i first create an EAR, then i resolve my WAR with the pom in the same context so straight up "pom.xml". After that i resolve my JAR (my ejb but it has to be a jar cause maven importer doesn't support the explicit type ejb". When i resolve it i use the pom.xml from the jar directory. So i do a path to from the module im in to the other module its in like so:

                 

                "../ejb/pom.xml"

                 

                depending on your folder structure is you have to write it your way. But besides that i use the exact same line of code you have written above.

                 

                this seems to work for me it resolves and builds correctly. But i do agree there are very few working examples out there. Building and deploying an ear should maybe be a part of the guides hence its one of the most common ways of deploying nowdays.

                • 5. Re: Re: Questions about testing EAR maven multi module project
                  jee-developer Newbie

                  Thanks Thomas for your reply. First i like to check if i understood your suggestion:

                  You said it is importand where my deployment class is located. What is meant with the deployment class? The example.ear data? Your ear which consists lib, jar and war is your packaged example.ear data, isn't it?

                  My example, described above, was a step before the ear module. First i like to test the web module including the ejb module. But it is right, that i like to test the whole application for system or acceptancetests later so i will use the same steps for creating an ear including web and ejb module for tests in the ear module.

                   

                  So i will describe my projectstructure, like netbeans created it:

                   

                  Example

                  --pom.xml (has module tags of all 3 modules)

                  --example-ear

                  -----pom.xml

                  -----src

                  -----target

                  --exampl-ejb

                  -----pom.xml

                  -----src

                  -----target

                  --example-web

                  -----pom.xml

                  -----src

                  -----target

                   

                  When i write a test in the web module, is the following path the right path to the ejb pom.xml: "../exampl-ejb/pom.xml" ?

                  • 6. Re: Re: Re: Questions about testing EAR maven multi module project
                    Thomas Andolf Newbie

                    Your deployment class is what i meant by your class that contains your deployment method. the class that has the method that is annotated with "@Deployment".

                     

                    Så depending on where you have this class with your deployment method, the path to your pom will change.

                     

                    your top pom.xml is your master pom. this one as you say contains all the fact about the modules and stuff. Then you have one pom.xml for each part of your deployment (ear, ejb, war). Lets say we place your testclass with your deployment method in your war's src/test folder you should be able to find your war's pom.xml by only specifying "pom.xml". But when you are building your jar file you have to have the correct path to find it. So you have to go out of your war directory, into your ejb-directory and get it there. so "../exampl-ejb/pom.xml" should be correct.

                     

                    here is a copy of my deployment method for reference of how have packaged and buildt my ear. It is placed in my war module in folder "src/test/java" folder. Hope someone else can use this as there are few examples out there. And remember im a newbie too at this so i dont know if im doing it right either:

                     

                     

                    @RunWith(Arquillian.class)
                    public class IntegrationTests {
                    
                      @Deployment
                      public static Archive<?> createDeployment() {
                    
                        //create ear archive
                        EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class);
                    
                        //resolve and add ejbDependencies to ear lib
                        File[] ejbDependencies = Maven.resolver().loadPomFromFile("../ejb/pom.xml").importRuntimeDependencies().resolve().withTransitivity().asFile(); 
                        for (File archive : ejbDependencies) {
                          ear.addAsLibrary(archive);
                        } 
                    
                        //resolve ejb (actually jar file cause as of now mavenimporter doesn't support ejb-types ony war and jars so don't be fooled by my naming convention)
                        //then add some external resources, and an empty beans.xml for CDI to work
                        JavaArchive ejb = ShrinkWrap.create(MavenImporter.class).loadPomFromFile("../ejb/pom.xml", "myAmazingProfileIfIHaveOne").importBuildOutput().as(JavaArchive.class);
                        ejb.addAsResource("someAmazing.properties").addAsManifestResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml"));
                    
                        //resolv war and add beans.xml and my html files manually
                        WebArchive war = ShrinkWrap.create(MavenImporter.class).loadPomFromFile("pom.xml", "myAmazingProfileIfIHaveOne").importBuildOutput().as(WebArchive.class);
                        war.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml");
                        war.addAsWebResource(new File("src/main/webapp", "index.xhtml"));
                    
                        //add buildt modules to ear and my application.xml
                        ear.addAsModule(ejb);
                        ear.addAsModule(war);
                        ear.setApplicationXML("application.xml");
                    
                        //print all deployments
                        System.out.println(ejb.toString(true));
                        System.out.println();
                        System.out.println(war.toString(true));
                        System.out.println();
                        System.out.println(ear.toString(true));
                        System.out.println();
                    
                        //export ear to root of module to have a reference to check if something is wrong. Flag "true" for write-over.
                        ear.as(ZipExporter.class).exportTo(new File("Multisearch-ear.zip"), true);
                    
                        return ear;
                      }
                    

                     

                    hope it helps!

                    • 7. Re: Re: Re: Re: Questions about testing EAR maven multi module project
                      jee-developer Newbie

                      In your resolve for the ejb archive you added a resource. Should the persistence.xml, arquillian.xml and for example the glassfish-resources.xml be such properties data? The follwoing code is my example:

                       

                      //resolve ejb (actually jar file cause as of now mavenimporter doesn't support ejb-types ony war and jars so don't be fooled by my naming convention)
                              //then add some external resources, and an empty beans.xml for CDI to work
                              JavaArchive ejb = ShrinkWrap.create(MavenImporter.class).loadPomFromFile("../example-ejb/pom.xml", "arquillian-glassfish-embedded").importBuildOutput().as(JavaArchive.class);
                              ejb.addAsResource(new File("../example-ejb/src/test/resources/test-persistence.xml")).
                                      addAsResource(new File("../example-ejb/src/test/resources/arquillian.xml")).
                                      addAsResource(new File("../example-ejb/src/test/resources-glassfish-embedded/glassfish-resources.xml")).addAsManifestResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml"));
                      

                       

                      But i get a packaging exception. So what kind of property files could or should be indluded?

                      • 8. Re: Questions about testing EAR maven multi module project
                        Thomas Andolf Newbie

                        the ""someAmazing.properties" that i added is specific for my projekt. when you add something as a resource it will end up in the root of your project. What resources you need for your project is up to you too add. I don't know what resources you need to make your project run. i haven't needed to add the "arquillian.xml" for example im not really sure when it comes to that file and im running arquillian on jBoss so the glassfish resources, i have no clue.

                         

                        what exception do you get? i have found that when you get the exception... scroll down a bit, it usually says a bit down what kind of error you've got.

                        • 9. Re: Re: Questions about testing EAR maven multi module project
                          jee-developer Newbie

                          For running test cases in th ejb module, i need the resources declared above. They are stored in the test/resources and test/resources-glassfish-embedded folders. This are the standard folders in many tutorials. The persistence.xml is necessary to get a database connection.

                           

                          Ok that is the exception from the surefire report, i get for the ejb packacking:

                          -------------------------------------------------------------------------------
                          Test set: de.integrationtests.BookBeanITTest
                          -------------------------------------------------------------------------------
                          Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.267 sec <<< FAILURE!
                          de.integrationtests.BookBeanITTest  Time elapsed: 4.266 sec  <<< ERROR!
                          java.lang.RuntimeException: Could not invoke deployment method: public static org.jboss.shrinkwrap.api.spec.WebArchive de.integrationtests.BookBeanITTest.createDeployment()
                              at org.jboss.shrinkwrap.resolver.spi.maven.archive.packaging.PackagingProcessors.find(PackagingProcessors.java:56)
                              at org.jboss.shrinkwrap.resolver.impl.maven.archive.importer.MavenImporterImpl.loadPomFromFile(MavenImporterImpl.java:137)
                              at de.integrationtests.BookBeanITTest.createDeployment(BookBeanITTest.java:47)
                          
                          

                           

                           

                          Edit: Ok the eception is thrown in the first line of my ejb packaging, with the profiles. But i have the profile with the id "arquillian-glassfish-embedded" in the ejb pom. So that isn't be the cause, is it?

                          • 10. Re: Re: Questions about testing EAR maven multi module project
                            Thomas Andolf Newbie

                            okey, i know what the files do and i know that they are standard locations when running maven projects. But what you have posted is the exception thrown from maven telling us that the create deployment failed by Junit when you ran the tests.

                             

                            This is not the actual exception. You need to check what Junit has thrown, i dont know how to do that in netbeans but in Eclipse you open up the Junit window and in there you shall se that junit has thrown an exception. You need to find the "cause" of the thrown exception its usually a bit way down, i need to see the full stack trace.

                            • 11. Re: Re: Re: Questions about testing EAR maven multi module project
                              jee-developer Newbie

                              You mean the exception shown from the JUnit perspective view? I guess you mean s.th. like that in the attachment. Thats the same view like in Eclipse if i click on Window>Show View>Junit.

                               

                              But thats the exception i posted before. So i thought it's the full stacktrace.

                               

                               

                              Edit: Ok i found, that surefire trimm the stacktrace at default. I configured the plugin and this is the whole stacktrace i get

                               

                              Test set: de.integrationtests.BookBeanITTest
                              -------------------------------------------------------------------------------
                              Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.394 sec <<< FAILURE!
                              de.integrationtests.BookBeanITTest  Time elapsed: 4.394 sec  <<< ERROR!
                              java.lang.RuntimeException: Could not invoke deployment method: public static org.jboss.shrinkwrap.api.spec.WebArchive de.integrationtests.BookBeanITTest.createDeployment()
                                  at org.jboss.arquillian.container.test.impl.client.deployment.AnnotationDeploymentScenarioGenerator.invoke(AnnotationDeploymentScenarioGenerator.java:177)
                                  at org.jboss.arquillian.container.test.impl.client.deployment.AnnotationDeploymentScenarioGenerator.generateDeployment(AnnotationDeploymentScenarioGenerator.java:99)
                                  at org.jboss.arquillian.container.test.impl.client.deployment.AnnotationDeploymentScenarioGenerator.generate(AnnotationDeploymentScenarioGenerator.java:62)
                                  at org.jboss.arquillian.container.test.impl.client.deployment.DeploymentGenerator.generateDeployment(DeploymentGenerator.java:79)
                                  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:597)
                                  at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
                                  at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
                                  at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
                                  at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
                                  at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:115)
                                  at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
                                  at org.jboss.arquillian.container.test.impl.client.ContainerEventController.execute(ContainerEventController.java:100)
                                  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:597)
                                  at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
                                  at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
                                  at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
                                  at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:84)
                                  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:597)
                                  at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
                                  at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
                                  at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:65)
                                  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:597)
                                  at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
                                  at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
                                  at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
                                  at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:115)
                                  at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.beforeClass(EventTestRunnerAdaptor.java:80)
                                  at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:182)
                                  at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:314)
                                  at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:46)
                                  at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:199)
                                  at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
                                  at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:147)
                                  at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
                                  at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
                                  at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
                                  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:597)
                                  at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)
                                  at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:158)
                                  at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:86)
                                  at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
                                  at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:95)
                              Caused by: java.lang.reflect.InvocationTargetException
                                  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:597)
                                  at org.jboss.arquillian.container.test.impl.client.deployment.AnnotationDeploymentScenarioGenerator.invoke(AnnotationDeploymentScenarioGenerator.java:173)
                                  ... 56 more
                              Caused by: java.lang.UnsupportedOperationException: No packaging processor for ejb packaging was found. Supported processors are: class org.jboss.shrinkwrap.resolver.impl.maven.archive.packaging.WarPackagingProcessor, class org.jboss.shrinkwrap.resolver.impl.maven.archive.packaging.JarPackagingProcessor
                                  at org.jboss.shrinkwrap.resolver.spi.maven.archive.packaging.PackagingProcessors.find(PackagingProcessors.java:56)
                                  at org.jboss.shrinkwrap.resolver.impl.maven.archive.importer.MavenImporterImpl.loadPomFromFile(MavenImporterImpl.java:125)
                                  at de.integrationtests.BookBeanITTest.createDeployment(BookBeanITTest.java:48)
                                  ... 61 more
                              
                              

                               

                              Edit2: It is the problem we talked earlier. So do i have to change my example.pom.xml  package tag to jar instead of ejb? Is this the only solution?

                              • 12. Re: Re: Re: Questions about testing EAR maven multi module project
                                Thomas Andolf Newbie

                                Exactly, as you can see, maven resolver doesn't support ejb. Så you need to change the packaging in the ejb pom.xml to jar, and the the <type> in the ear pom.xml to jar and such.

                                • 13. Re: Re: Re: Questions about testing EAR maven multi module project
                                  jee-developer Newbie

                                  OK many thanks for your help. I guess i can add the module with such workthrough. I have still problems with the resources but that is unimportant for the moment and i can copy-paste them in the web module (dirty methode).

                                  • 14. Re: Re: Re: Re: Questions about testing EAR maven multi module project
                                    jee-developer Newbie

                                    @Thomas Andolf:

                                    OK i have a little problem with the building of the project and i think its related to the workthrough, so i post it here.

                                    With the described solution i don' have compiling problems with the test files. But the big problem is, that the web module is not building anymore. I guess it is problematic with the ejb module, that is necessary and in the web module pom.xml. With the workaround described above i changed the type in the web pom.xml:

                                     

                                    <dependency>
                                                <groupId>${project.groupId}</groupId>
                                                <artifactId>Example-ejb</artifactId>
                                                <version>${project.version}</version>
                                                <type>ejb</type>
                                                <scope>provided</scope>
                                     </dependency>
                                    

                                    and in the ejb pom.xml:

                                    <groupId>de</groupId>
                                        <artifactId>Example-ejb</artifactId>
                                        <version>1.0</version>
                                        <packaging>jar</packaging>
                                    

                                    If i return the type to ejb and the ejb module to ejb package, then i can build my web project, but i have the problems with my tests.

                                     

                                    So my question is how did you make it work for you in your project? Or do you always switch the type when testing?

                                    1 2 Previous Next