TomEE arquillian adapters try to make test as isolated as possible but it means if you test a single application in N tests you’ll dump the application N times. For small apps no issue but for big ones it takes time.
To solve it several solutions exist.
TomEE embedded is great but until now it needed a real application to deploy to at least get web features (was possible to deploy ejb modules from classpath but then you don’t get Servlet/WebSocket/… features).
Now you can do it simply calling deployClasspathAsWebApp() method!
I spoke recently ( https://rmannibucau.wordpress.com/2014/08/06/tomee-and-more-advanced-resource-configuration/ ) of the ability to read using a custom API properties for TomEE resources but for enterprise context where you want to control all resources it was surely not enough for big applications.
To make it smoother to use you can now:
Since few weeks TomEE has some support for log4j2 without using log4j2-log4j compatibility module.
To set it up just add the log4j2 jars you want to tomee (lib/) and add your config – log4j2.xml – in the classloader (lib/ works too).
Side note: you can do it using a conf/jars.txt file and using log4j2 maven coordinates, really more easy ;).
Then in conf/system.properties (or in CATALINA_OPTS) set the system property openejb.log.factory to log4j2:
Then you’ll get the container logs redirected to log4j2.