= DeltaSpike Project Stage
:index-group: Testing Techniques
:jbake-type: page
:jbake-status: published

This example shows how to use https://deltaspike.apache.org/documentation/projectstage.html[DeltaSpike project stage^] within Arquillian tests running on TomEE.

== Example

[source, java]
----
import org.apache.deltaspike.core.api.projectstage.ProjectStage;

import javax.enterprise.inject.Produces;
import javax.inject.Inject;

public final class ManagerFactory {

    @Inject
    private ProjectStage projectStage; <1>

    @Produces
    public Manager currentManager() {
        if (ProjectStage.UnitTest.equals(projectStage)) {
            return new Manager("test");
        } else if (ProjectStage.Development.equals(projectStage)) {
            return new Manager("dev");
        }
        return new Manager(projectStage.toString());
    }
}
----
<1> Current project stage injected via CDI.

On the example above a `Manager` instance is created based on current ProjectStage.

== Setting the Project stage

There is a few ways to set current project stage, on this example we will use a https://deltaspike.apache.org/documentation/configuration.html#ProvidingconfigurationusingConfigSources[DeltaSpike config source^] which reads the project stage from a file named `project-stage.properties`:

.src/main/resources/project-stage.properties
----
org.apache.deltaspike.ProjectStage=Development
----

[tip]

TIP: Full source of our project stage producer can be https://github.com/apache/tomee/blob/master/examples/projectstage-demo/src/test/java/org/superbiz/projectstage/util/ProjectStageProducer.java[found here^].

=== Configuring project stage on tests

On our `Arquillian` test we have an utility which will create the `project-stage.properties` file and add on the test war:

[source,java]
----
@RunWith(Arquillian.class)
public abstract class BaseTestForProjectStage {

    @Inject
    protected Manager manager;

    protected static WebArchive war(final String projectStageName) {
        return ShrinkWrap.create(WebArchive.class)
                .addClasses(ProjectStageProducer.class, BaseTestForProjectStage.class, Manager.class, ManagerFactory.class)
                .addAsResource(new StringAsset("org.apache.deltaspike.ProjectStage = " + projectStageName), ArchivePaths.create(ProjectStageProducer.CONFIG_PATH))
                .addAsServiceProvider(ConfigSourceProvider.class, ProjectStageProducer.class)
                .addAsLibraries(JarLocation.jarLocation(ProjectStage.class))
                .addAsWebInfResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml"));
    }

    @Test
    public void checkManagerValue() {
        assertEquals(ProjectStageProducer.value("org.apache.deltaspike.ProjectStage"), manager.name());
    }
}
----

Now we can test our project with different ProjectStages, see for example how a test using `dev stage` look like:

[source,java]
----
public class DevProjectStageTest extends BaseTestForProjectStage {

    @Deployment
    public static WebArchive war() {
        return BaseTestForProjectStage.war(ProjectStage.Development.toString());
    }

    @Test
    @Override
    public void checkManagerValue() {
        assertEquals("dev", manager.name());
    }
}
----

== Running

[source,bash]
----
mvn clean test
----

=== Output
[source,bash]
----
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.superbiz.projectstage.ProductionProjectStageTest
dez 30, 2018 11:59:39 AM org.apache.openejb.arquillian.common.Setup findHome
INFO: Unable to find home in: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote
dez 30, 2018 11:59:39 AM org.apache.openejb.arquillian.common.MavenCache getArtifact
INFO: Downloading org.apache.tomee:apache-tomee:8.0.0-SNAPSHOT:zip:webprofile please wait...
dez 30, 2018 11:59:39 AM org.apache.openejb.arquillian.common.Zips unzip
INFO: Extracting '/home/rmpestano/.m2/repository/org/apache/tomee/apache-tomee/8.0.0-SNAPSHOT/apache-tomee-8.0.0-SNAPSHOT-webprofile.zip' to '/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote'
dez 30, 2018 11:59:39 AM org.apache.tomee.arquillian.remote.RemoteTomEEContainer configure
INFO: Downloaded container to: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:40.779 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Server version:        Apache Tomcat (TomEE)/9.0.12 (8.0.0-SNAPSHOT)
30-Dec-2018 11:59:40.779 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Server built:          Sep 4 2018 22:13:41 UTC
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Server number:         9.0.12.0
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke OS Name:               Linux
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke OS Version:            4.15.0-39-generic
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Architecture:          amd64
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Java Home:             /usr/lib/jvm/java-8-oracle/jre
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke JVM Version:           1.8.0_191-b12
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke JVM Vendor:            Oracle Corporation
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke CATALINA_BASE:         /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:40.780 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke CATALINA_HOME:         /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:40.781 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Command line argument: -XX:+HeapDumpOnOutOfMemoryError
30-Dec-2018 11:59:40.781 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Command line argument: -Xmx512m
30-Dec-2018 11:59:40.781 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Command line argument: -Xms256m
30-Dec-2018 11:59:40.781 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Command line argument: -XX:ReservedCodeCacheSize=64m
30-Dec-2018 11:59:40.784 INFO [main] sun.reflect.NativeMethodAccessorImpl.invoke Command line argument: -Dtomee.httpPort=20003
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=false
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dorg.apache.openejb.servlet.filters=org.apache.openejb.arquillian.common.ArquillianFilterRunner=/ArquillianServletRunner
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dopenejb.system.apps=true
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dtomee.remote.support=true
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Djava.util.logging.config.file=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/conf/logging.properties
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -javaagent:/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/lib/openejb-javaagent.jar
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Djava.io.tmpdir=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/temp
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dcatalina.base=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:40.785 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dcatalina.home=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:40.786 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dcatalina.ext.dirs=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/lib
30-Dec-2018 11:59:40.786 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -Dorg.apache.tomcat.util.http.ServerCookie.ALLOW_HTTP_SEPARATORS_IN_V0=true
30-Dec-2018 11:59:40.786 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Command line argument: -ea
30-Dec-2018 11:59:40.786 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib]
30-Dec-2018 11:59:40.989 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Initializing ProtocolHandler ["http-nio-20003"]
30-Dec-2018 11:59:41.007 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Using a shared selector for servlet write/read
30-Dec-2018 11:59:41.019 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Initializing ProtocolHandler ["ajp-nio-20002"]
30-Dec-2018 11:59:41.021 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Using a shared selector for servlet write/read
30-Dec-2018 11:59:41.284 INFO [main] org.apache.openejb.util.OptionsLog.info Using 'tomee.remote.support=true'
30-Dec-2018 11:59:41.296 INFO [main] org.apache.openejb.util.OptionsLog.info Using 'openejb.jdbc.datasource-creator=org.apache.tomee.jdbc.TomEEDataSourceCreator'
30-Dec-2018 11:59:41.402 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> ********************************************************************************
30-Dec-2018 11:59:41.402 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> OpenEJB http://tomee.apache.org/
30-Dec-2018 11:59:41.402 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> Startup: Sun Dec 30 11:59:41 BRST 2018
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> Copyright 1999-2018 (C) Apache OpenEJB Project, All Rights Reserved.
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> Version: 8.0.0-SNAPSHOT
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> Build date: 20181221
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> Build time: 07:57
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> ********************************************************************************
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> openejb.home = /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:41.403 INFO [main] org.apache.openejb.OpenEJB$Instance.<init> openejb.base = /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT
30-Dec-2018 11:59:41.406 INFO [main] org.apache.openejb.cdi.CdiBuilder.initializeOWB Created new singletonService org.apache.openejb.cdi.ThreadSingletonServiceImpl@53ca01a2
30-Dec-2018 11:59:41.407 INFO [main] org.apache.openejb.cdi.CdiBuilder.initializeOWB Succeeded in installing singleton service
30-Dec-2018 11:59:41.453 INFO [main] org.apache.openejb.config.ConfigurationFactory.init TomEE configuration file is '/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/conf/tomee.xml'
30-Dec-2018 11:59:41.557 INFO [main] org.apache.openejb.config.ConfigurationFactory.configureService Configuring Service(id=Tomcat Security Service, type=SecurityService, provider-id=Tomcat Security Service)
30-Dec-2018 11:59:41.559 INFO [main] org.apache.openejb.config.ConfigurationFactory.configureService Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
30-Dec-2018 11:59:41.562 INFO [main] org.apache.openejb.util.OptionsLog.info Using 'openejb.system.apps=true'
30-Dec-2018 11:59:41.565 INFO [main] org.apache.openejb.config.ConfigurationFactory.configureService Configuring Service(id=Default Singleton Container, type=Container, provider-id=Default Singleton Container)
30-Dec-2018 11:59:41.572 INFO [main] org.apache.openejb.assembler.classic.Assembler.createRecipe Creating TransactionManager(id=Default Transaction Manager)
30-Dec-2018 11:59:41.622 INFO [main] org.apache.openejb.assembler.classic.Assembler.createRecipe Creating SecurityService(id=Tomcat Security Service)
30-Dec-2018 11:59:41.643 INFO [main] org.apache.openejb.assembler.classic.Assembler.createRecipe Creating Container(id=Default Singleton Container)
30-Dec-2018 11:59:41.659 INFO [main] org.apache.openejb.assembler.classic.Assembler.createApplication Assembling app: openejb
30-Dec-2018 11:59:41.714 INFO [main] org.apache.openejb.util.OptionsLog.info Using 'openejb.jndiname.format={deploymentId}{interfaceType.openejbLegacyName}'
30-Dec-2018 11:59:41.724 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=openejb/DeployerBusinessRemote) --> Ejb(deployment-id=openejb/Deployer)
30-Dec-2018 11:59:41.724 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=global/openejb/openejb/openejb/Deployer!org.apache.openejb.assembler.Deployer) --> Ejb(deployment-id=openejb/Deployer)
30-Dec-2018 11:59:41.725 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=global/openejb/openejb/openejb/Deployer) --> Ejb(deployment-id=openejb/Deployer)
30-Dec-2018 11:59:41.726 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=openejb/ConfigurationInfoBusinessRemote) --> Ejb(deployment-id=openejb/ConfigurationInfo)
30-Dec-2018 11:59:41.726 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=global/openejb/openejb/openejb/Deployer!org.apache.openejb.assembler.classic.cmd.ConfigurationInfo) --> Ejb(deployment-id=openejb/ConfigurationInfo)
30-Dec-2018 11:59:41.729 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=MEJB) --> Ejb(deployment-id=MEJB)
30-Dec-2018 11:59:41.729 INFO [main] org.apache.openejb.assembler.classic.JndiBuilder.bind Jndi(name=global/openejb/openejb/openejb/Deployer!javax.management.j2ee.ManagementHome) --> Ejb(deployment-id=MEJB)
30-Dec-2018 11:59:41.738 INFO [main] org.apache.openejb.assembler.classic.Assembler.startEjbs Created Ejb(deployment-id=MEJB, ejb-name=openejb/Deployer, container=Default Singleton Container)
30-Dec-2018 11:59:41.740 INFO [main] org.apache.openejb.assembler.classic.Assembler.startEjbs Created Ejb(deployment-id=openejb/ConfigurationInfo, ejb-name=openejb/Deployer, container=Default Singleton Container)
30-Dec-2018 11:59:41.741 INFO [main] org.apache.openejb.assembler.classic.Assembler.startEjbs Created Ejb(deployment-id=openejb/Deployer, ejb-name=openejb/Deployer, container=Default Singleton Container)
30-Dec-2018 11:59:41.742 INFO [main] org.apache.openejb.assembler.classic.Assembler.startEjbs Started Ejb(deployment-id=MEJB, ejb-name=openejb/Deployer, container=Default Singleton Container)
30-Dec-2018 11:59:41.742 INFO [main] org.apache.openejb.assembler.classic.Assembler.startEjbs Started Ejb(deployment-id=openejb/ConfigurationInfo, ejb-name=openejb/Deployer, container=Default Singleton Container)
30-Dec-2018 11:59:41.742 INFO [main] org.apache.openejb.assembler.classic.Assembler.startEjbs Started Ejb(deployment-id=openejb/Deployer, ejb-name=openejb/Deployer, container=Default Singleton Container)
30-Dec-2018 11:59:41.747 INFO [main] org.apache.openejb.assembler.classic.Assembler.deployMBean Deployed MBean(openejb.user.mbeans:application=openejb,group=org.apache.openejb.assembler.monitoring,name=JMXDeployer)
30-Dec-2018 11:59:41.748 INFO [main] org.apache.openejb.assembler.classic.Assembler.createApplication Deployed Application(path=openejb)
30-Dec-2018 11:59:41.775 INFO [main] org.apache.openejb.server.ServiceManager.initServer Creating ServerService(id=cxf-rs)
30-Dec-2018 11:59:41.935 INFO [main] org.apache.openejb.server.SimpleServiceManager.start   ** Bound Services **
30-Dec-2018 11:59:41.935 INFO [main] org.apache.openejb.server.SimpleServiceManager.printRow   NAME                 IP              PORT
30-Dec-2018 11:59:41.936 INFO [main] org.apache.openejb.server.SimpleServiceManager.start -------
30-Dec-2018 11:59:41.936 INFO [main] org.apache.openejb.server.SimpleServiceManager.start Ready!
30-Dec-2018 11:59:41.936 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Initialization processed in 1584 ms
30-Dec-2018 11:59:41.961 INFO [main] org.apache.tomee.catalina.OpenEJBNamingContextListener.bindResource Importing a Tomcat Resource with id 'UserDatabase' of type 'org.apache.catalina.UserDatabase'.
30-Dec-2018 11:59:41.961 INFO [main] org.apache.openejb.assembler.classic.Assembler.createRecipe Creating Resource(id=UserDatabase)
30-Dec-2018 11:59:41.979 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Starting service [Catalina]
30-Dec-2018 11:59:41.979 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Starting Servlet Engine: Apache Tomcat (TomEE)/9.0.12 (8.0.0-SNAPSHOT)
30-Dec-2018 11:59:42.072 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Unable to set the web application class loader property [clearReferencesRmiTargets] to [true] as the property does not exist.
30-Dec-2018 11:59:42.073 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Unable to set the web application class loader property [clearReferencesObjectStreamClassCaches] to [true] as the property does not exist.
30-Dec-2018 11:59:42.073 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Unable to set the web application class loader property [skipMemoryLeakChecksOnJvmShutdown] to [false] as the property does not exist.
30-Dec-2018 11:59:42.111 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Starting ProtocolHandler ["http-nio-20003"]
30-Dec-2018 11:59:42.156 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Starting ProtocolHandler ["ajp-nio-20002"]
30-Dec-2018 11:59:42.176 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Server startup in 239 ms
dez 30, 2018 11:59:43 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:20003/tomee/ejb}
30-Dec-2018 11:59:43.247 INFO [http-nio-20003-exec-3] org.apache.openejb.util.JarExtractor.extract Extracting jar: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153.war
30-Dec-2018 11:59:43.285 INFO [http-nio-20003-exec-3] org.apache.openejb.util.JarExtractor.extract Extracted path: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153
30-Dec-2018 11:59:43.286 INFO [http-nio-20003-exec-3] org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps using default host: localhost
30-Dec-2018 11:59:43.286 INFO [http-nio-20003-exec-3] org.apache.tomee.catalina.TomcatWebAppBuilder.init ------------------------- localhost -> /2525c909-8c3e-4486-a9b1-6d7d654ff153
30-Dec-2018 11:59:43.288 INFO [http-nio-20003-exec-3] org.apache.openejb.util.OptionsLog.info Using 'openejb.session.manager=org.apache.tomee.catalina.session.QuickSessionManager'
30-Dec-2018 11:59:43.764 INFO [http-nio-20003-exec-3] org.apache.openejb.config.ConfigurationFactory.configureApplication Configuring enterprise application: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153
30-Dec-2018 11:59:43.885 INFO [http-nio-20003-exec-3] org.apache.openejb.config.ConfigurationFactory.configureService Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
30-Dec-2018 11:59:43.885 INFO [http-nio-20003-exec-3] org.apache.openejb.config.AutoConfig.createContainer Auto-creating a container for bean 2525c909-8c3e-4486-a9b1-6d7d654ff153.Comp1117946264: Container(type=MANAGED, id=Default Managed Container)
30-Dec-2018 11:59:43.885 INFO [http-nio-20003-exec-3] org.apache.openejb.assembler.classic.Assembler.createRecipe Creating Container(id=Default Managed Container)
30-Dec-2018 11:59:43.895 INFO [http-nio-20003-exec-3] org.apache.openejb.core.managed.SimplePassivater.init Using directory /home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/temp for stateful session passivation
30-Dec-2018 11:59:43.925 INFO [http-nio-20003-exec-3] org.apache.openejb.config.AppInfoBuilder.build Enterprise application "/home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153" loaded.
30-Dec-2018 11:59:43.926 INFO [http-nio-20003-exec-3] org.apache.openejb.assembler.classic.Assembler.createApplication Assembling app: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153
30-Dec-2018 11:59:43.984 INFO [http-nio-20003-exec-3] org.apache.openejb.cdi.CdiBuilder.initSingleton Existing thread singleton service in SystemInstance(): org.apache.openejb.cdi.ThreadSingletonServiceImpl@53ca01a2
30-Dec-2018 11:59:44.051 INFO [http-nio-20003-exec-3] org.apache.openejb.cdi.ManagedSecurityService.<init> Some Principal APIs could not be loaded: org.eclipse.microprofile.jwt.JsonWebToken out of org.eclipse.microprofile.jwt.JsonWebToken not found
30-Dec-2018 11:59:44.087 INFO [http-nio-20003-exec-3] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication OpenWebBeans Container is starting...
30-Dec-2018 11:59:44.093 INFO [http-nio-20003-exec-3] org.apache.webbeans.plugins.PluginLoader.startUp Adding OpenWebBeansPlugin : [CdiPlugin]
30-Dec-2018 11:59:45.598 INFO [http-nio-20003-exec-3] org.apache.webbeans.config.BeansDeployer.validateInjectionPoints All injection points were validated successfully.
30-Dec-2018 11:59:45.611 INFO [http-nio-20003-exec-3] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication OpenWebBeans Container has started, it took 1524 ms.
30-Dec-2018 11:59:45.625 INFO [http-nio-20003-exec-3] org.apache.openejb.assembler.classic.Assembler.createApplication Deployed Application(path=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153)
30-Dec-2018 11:59:45.727 INFO [http-nio-20003-exec-3] org.apache.myfaces.ee.MyFacesContainerInitializer.onStartup Using org.apache.myfaces.ee.MyFacesContainerInitializer
30-Dec-2018 11:59:45.750 INFO [http-nio-20003-exec-3] org.apache.myfaces.ee.MyFacesContainerInitializer.onStartup Added FacesServlet with mappings=[/faces/*, *.jsf, *.faces, *.xhtml]
30-Dec-2018 11:59:45.784 INFO [http-nio-20003-exec-3] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
30-Dec-2018 11:59:45.790 INFO [http-nio-20003-exec-3] org.apache.tomee.myfaces.TomEEMyFacesContainerInitializer.addListener Installing <listener>org.apache.myfaces.webapp.StartupServletContextListener</listener>
30-Dec-2018 11:59:45.858 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.DefaultFacesConfigurationProvider.getStandardFacesConfig Reading standard config META-INF/standard-faces-config.xml
30-Dec-2018 11:59:46.139 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.DefaultFacesConfigurationProvider.getClassloaderFacesConfig Reading config : jar:file:/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/lib/openwebbeans-jsf-2.0.8.jar!/META-INF/faces-config.xml
30-Dec-2018 11:59:46.142 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.DefaultFacesConfigurationProvider.getClassloaderFacesConfig Reading config : jar:file:/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/lib/openwebbeans-el22-2.0.8.jar!/META-INF/faces-config.xml
30-Dec-2018 11:59:46.243 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.LogMetaInfUtils.logArtifact Artifact 'myfaces-api' was found in version '2.3.2' from path 'file:/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/lib/myfaces-api-2.3.2.jar'
30-Dec-2018 11:59:46.243 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.LogMetaInfUtils.logArtifact Artifact 'myfaces-impl' was found in version '2.3.2' from path 'file:/home/rmpestano/projects/tomee/examples/projectstage-demo/target/tomee-remote/apache-tomee-webprofile-8.0.0-SNAPSHOT/lib/myfaces-impl-2.3.2.jar'
30-Dec-2018 11:59:46.252 INFO [http-nio-20003-exec-3] org.apache.myfaces.util.ExternalSpecifications.isCDIAvailable MyFaces CDI support enabled
30-Dec-2018 11:59:46.253 INFO [http-nio-20003-exec-3] org.apache.myfaces.spi.impl.DefaultInjectionProviderFactory.getInjectionProvider Using InjectionProvider org.apache.myfaces.spi.impl.CDIAnnotationDelegateInjectionProvider
30-Dec-2018 11:59:46.298 INFO [http-nio-20003-exec-3] org.apache.myfaces.util.ExternalSpecifications.isBeanValidationAvailable MyFaces Bean Validation support enabled
30-Dec-2018 11:59:46.324 INFO [http-nio-20003-exec-3] org.apache.myfaces.application.ApplicationImpl.getProjectStage Couldn't discover the current project stage, using Production
30-Dec-2018 11:59:46.325 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.FacesConfigurator.handleSerialFactory Serialization provider : class org.apache.myfaces.shared_impl.util.serial.DefaultSerialFactory
30-Dec-2018 11:59:46.328 INFO [http-nio-20003-exec-3] org.apache.myfaces.config.annotation.DefaultLifecycleProviderFactory.getLifecycleProvider Using LifecycleProvider org.apache.myfaces.config.annotation.Tomcat7AnnotationLifecycleProvider
30-Dec-2018 11:59:46.485 INFO [http-nio-20003-exec-3] org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces ServletContext initialized.
30-Dec-2018 11:59:46.490 INFO [http-nio-20003-exec-3] org.apache.myfaces.view.facelets.ViewPoolProcessor.initialize org.apache.myfaces.CACHE_EL_EXPRESSIONS web config parameter is set to "noCache". To enable view pooling this param must be set to "alwaysRecompile". View Pooling disabled.
30-Dec-2018 11:59:46.501 INFO [http-nio-20003-exec-3] org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized MyFaces Core has started, it took [707] ms.
30-Dec-2018 11:59:46.807 INFO [http-nio-20003-exec-4] org.apache.deltaspike.core.util.ProjectStageProducer.initProjectStage Computed the following DeltaSpike ProjectStage: Production
dez 30, 2018 11:59:46 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:20003/tomee/ejb}
30-Dec-2018 11:59:46.843 INFO [http-nio-20003-exec-9] org.apache.openejb.assembler.classic.Assembler.destroyApplication Undeploying app: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153
dez 30, 2018 11:59:47 AM org.apache.openejb.arquillian.common.TomEEContainer undeploy
INFO: cleaning /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153.war
dez 30, 2018 11:59:47 AM org.apache.openejb.arquillian.common.TomEEContainer undeploy
INFO: cleaning /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/2525c909-8c3e-4486-a9b1-6d7d654ff153
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 8.219 sec - in org.superbiz.projectstage.ProductionProjectStageTest
Running org.superbiz.projectstage.TestingProjectStageTest
dez 30, 2018 11:59:47 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:20003/tomee/ejb}
30-Dec-2018 11:59:47.886 INFO [http-nio-20003-exec-5] org.apache.openejb.util.JarExtractor.extract Extracting jar: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc.war
30-Dec-2018 11:59:47.916 INFO [http-nio-20003-exec-5] org.apache.openejb.util.JarExtractor.extract Extracted path: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc
30-Dec-2018 11:59:47.916 INFO [http-nio-20003-exec-5] org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps using default host: localhost
30-Dec-2018 11:59:47.917 INFO [http-nio-20003-exec-5] org.apache.tomee.catalina.TomcatWebAppBuilder.init ------------------------- localhost -> /fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc
30-Dec-2018 11:59:47.917 INFO [http-nio-20003-exec-5] org.apache.openejb.util.OptionsLog.info Using 'openejb.session.manager=org.apache.tomee.catalina.session.QuickSessionManager'
30-Dec-2018 11:59:48.008 INFO [http-nio-20003-exec-5] org.apache.openejb.config.ConfigurationFactory.configureApplication Configuring enterprise application: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc
30-Dec-2018 11:59:48.046 INFO [http-nio-20003-exec-5] org.apache.openejb.config.AppInfoBuilder.build Enterprise application "/home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc" loaded.
30-Dec-2018 11:59:48.047 INFO [http-nio-20003-exec-5] org.apache.openejb.assembler.classic.Assembler.createApplication Assembling app: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc
30-Dec-2018 11:59:48.065 INFO [http-nio-20003-exec-5] org.apache.openejb.cdi.CdiBuilder.initSingleton Existing thread singleton service in SystemInstance(): org.apache.openejb.cdi.ThreadSingletonServiceImpl@53ca01a2
30-Dec-2018 11:59:48.069 INFO [http-nio-20003-exec-5] org.apache.openejb.cdi.ManagedSecurityService.<init> Some Principal APIs could not be loaded: org.eclipse.microprofile.jwt.JsonWebToken out of org.eclipse.microprofile.jwt.JsonWebToken not found
30-Dec-2018 11:59:48.071 INFO [http-nio-20003-exec-5] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication OpenWebBeans Container is starting...
30-Dec-2018 11:59:48.766 INFO [http-nio-20003-exec-5] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication OpenWebBeans Container has started, it took 695 ms.
30-Dec-2018 11:59:48.771 INFO [http-nio-20003-exec-5] org.apache.openejb.assembler.classic.Assembler.createApplication Deployed Application(path=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc)
30-Dec-2018 11:59:48.819 INFO [http-nio-20003-exec-5] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
30-Dec-2018 11:59:48.823 INFO [http-nio-20003-exec-5] org.apache.tomee.myfaces.TomEEMyFacesContainerInitializer.addListener Installing <listener>org.apache.myfaces.webapp.StartupServletContextListener</listener>
30-Dec-2018 11:59:49.123 INFO [http-nio-20003-exec-5] org.apache.myfaces.view.facelets.ViewPoolProcessor.initialize org.apache.myfaces.CACHE_EL_EXPRESSIONS web config parameter is set to "noCache". To enable view pooling this param must be set to "alwaysRecompile". View Pooling disabled.
30-Dec-2018 11:59:49.314 INFO [http-nio-20003-exec-6] org.apache.deltaspike.core.util.ProjectStageProducer.initProjectStage Computed the following DeltaSpike ProjectStage: UnitTest
dez 30, 2018 11:59:49 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:20003/tomee/ejb}
30-Dec-2018 11:59:49.336 INFO [http-nio-20003-exec-7] org.apache.openejb.assembler.classic.Assembler.destroyApplication Undeploying app: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc
dez 30, 2018 11:59:49 AM org.apache.openejb.arquillian.common.TomEEContainer undeploy
INFO: cleaning /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc.war
dez 30, 2018 11:59:49 AM org.apache.openejb.arquillian.common.TomEEContainer undeploy
INFO: cleaning /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/fb5b37d9-2aa0-408c-8ed7-a2ddc14057dc
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.431 sec - in org.superbiz.projectstage.TestingProjectStageTest
Running org.superbiz.projectstage.DevProjectStageTest
dez 30, 2018 11:59:50 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:20003/tomee/ejb}
30-Dec-2018 11:59:50.187 INFO [http-nio-20003-exec-4] org.apache.openejb.util.JarExtractor.extract Extracting jar: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b.war
30-Dec-2018 11:59:50.213 INFO [http-nio-20003-exec-4] org.apache.openejb.util.JarExtractor.extract Extracted path: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b
30-Dec-2018 11:59:50.213 INFO [http-nio-20003-exec-4] org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps using default host: localhost
30-Dec-2018 11:59:50.213 INFO [http-nio-20003-exec-4] org.apache.tomee.catalina.TomcatWebAppBuilder.init ------------------------- localhost -> /4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b
30-Dec-2018 11:59:50.214 INFO [http-nio-20003-exec-4] org.apache.openejb.util.OptionsLog.info Using 'openejb.session.manager=org.apache.tomee.catalina.session.QuickSessionManager'
30-Dec-2018 11:59:50.300 INFO [http-nio-20003-exec-4] org.apache.openejb.config.ConfigurationFactory.configureApplication Configuring enterprise application: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b
30-Dec-2018 11:59:50.335 INFO [http-nio-20003-exec-4] org.apache.openejb.config.AppInfoBuilder.build Enterprise application "/home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b" loaded.
30-Dec-2018 11:59:50.336 INFO [http-nio-20003-exec-4] org.apache.openejb.assembler.classic.Assembler.createApplication Assembling app: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b
30-Dec-2018 11:59:50.350 INFO [http-nio-20003-exec-4] org.apache.openejb.cdi.CdiBuilder.initSingleton Existing thread singleton service in SystemInstance(): org.apache.openejb.cdi.ThreadSingletonServiceImpl@53ca01a2
30-Dec-2018 11:59:50.353 INFO [http-nio-20003-exec-4] org.apache.openejb.cdi.ManagedSecurityService.<init> Some Principal APIs could not be loaded: org.eclipse.microprofile.jwt.JsonWebToken out of org.eclipse.microprofile.jwt.JsonWebToken not found
30-Dec-2018 11:59:50.355 INFO [http-nio-20003-exec-4] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication OpenWebBeans Container is starting...
30-Dec-2018 11:59:50.984 INFO [http-nio-20003-exec-4] org.apache.openejb.cdi.OpenEJBLifecycle.startApplication OpenWebBeans Container has started, it took 629 ms.
30-Dec-2018 11:59:50.990 INFO [http-nio-20003-exec-4] org.apache.openejb.assembler.classic.Assembler.createApplication Deployed Application(path=/home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b)
30-Dec-2018 11:59:51.037 INFO [http-nio-20003-exec-4] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
30-Dec-2018 11:59:51.040 INFO [http-nio-20003-exec-4] org.apache.tomee.myfaces.TomEEMyFacesContainerInitializer.addListener Installing <listener>org.apache.myfaces.webapp.StartupServletContextListener</listener>
30-Dec-2018 11:59:51.219 INFO [http-nio-20003-exec-4] org.apache.myfaces.view.facelets.ViewPoolProcessor.initialize org.apache.myfaces.CACHE_EL_EXPRESSIONS web config parameter is set to "noCache". To enable view pooling this param must be set to "alwaysRecompile". View Pooling disabled.
30-Dec-2018 11:59:51.416 INFO [http-nio-20003-exec-11] org.apache.deltaspike.core.util.ProjectStageProducer.initProjectStage Computed the following DeltaSpike ProjectStage: Development
dez 30, 2018 11:59:51 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:20003/tomee/ejb}
30-Dec-2018 11:59:51.441 INFO [http-nio-20003-exec-2] org.apache.openejb.assembler.classic.Assembler.destroyApplication Undeploying app: /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b
dez 30, 2018 11:59:51 AM org.apache.openejb.arquillian.common.TomEEContainer undeploy
INFO: cleaning /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b.war
dez 30, 2018 11:59:51 AM org.apache.openejb.arquillian.common.TomEEContainer undeploy
INFO: cleaning /home/rmpestano/projects/tomee/examples/projectstage-demo/target/arquillian-remote-working-dir/0/4977aad1-2e0a-45e9-bef0-c6f5fcb6d68b
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.048 sec - in org.superbiz.projectstage.DevProjectStageTest
30-Dec-2018 11:59:51.610 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke A valid shutdown command was received via the shutdown port. Stopping the Server instance.
30-Dec-2018 11:59:51.611 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Pausing ProtocolHandler ["http-nio-20003"]
30-Dec-2018 11:59:51.665 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Pausing ProtocolHandler ["ajp-nio-20002"]
30-Dec-2018 11:59:51.716 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Stopping service [Catalina]
30-Dec-2018 11:59:51.717 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Stopping ProtocolHandler ["http-nio-20003"]
30-Dec-2018 11:59:51.719 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Stopping ProtocolHandler ["ajp-nio-20002"]
30-Dec-2018 11:59:51.721 INFO [main] org.apache.openejb.server.SimpleServiceManager.stop Stopping server services
30-Dec-2018 11:59:51.731 INFO [main] org.apache.openejb.assembler.classic.Assembler.destroyApplication Undeploying app: openejb
30-Dec-2018 11:59:51.732 SEVERE [main] org.apache.openejb.core.singleton.SingletonInstanceManager.undeploy Unable to unregister MBean openejb.management:J2EEServer=openejb,J2EEApplication=<empty>,EJBModule=openejb,SingletonSessionBean=openejb/Deployer,name=openejb/Deployer,j2eeType=Invocations
30-Dec-2018 11:59:51.733 SEVERE [main] org.apache.openejb.core.singleton.SingletonInstanceManager.undeploy Unable to unregister MBean openejb.management:J2EEServer=openejb,J2EEApplication=<empty>,EJBModule=openejb,SingletonSessionBean=openejb/Deployer,name=openejb/Deployer,j2eeType=Invocations
30-Dec-2018 11:59:51.742 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Destroying ProtocolHandler ["http-nio-20003"]
30-Dec-2018 11:59:51.743 INFO [main] sun.reflect.DelegatingMethodAccessorImpl.invoke Destroying ProtocolHandler ["ajp-nio-20002"]

Results :

Tests run: 3, Failures: 0, Errors: 0, Skipped: 0

----
