On 8/15/2013 8:14 AM, Stian Thorgersen wrote:
Undertow adapter sounds good.
We would still need some Arquillian tests though. To test web applications Arquillian
Drone is really good. But, you wouldn't run those tests on a normal build as they are
slow (and open Firefox/Chrome windows). To run those you'd enabled
'arq-remote' or 'arq-embed' mvn profiles.
I was also wondering if instead of forwarding to securityFailure + rollback transaction
if we could throw a SecurityFailure exception. Then add an exception handler that
rollsback the transaction and does the forwarding. To prevent it from being a performance
issue we could simply override fillInStackTrace to prevent it from generating the stack
You can extend org.jboss.resteasy.spi.Failure. Failures can be set to
not log. This is Resteasy specific though. Do we care? But, I'm not
sure if an ExceptionMapper is the best approach. Right now, when you
look at the code, you know exactly what is happening. It reads well.
What benefit do you get by creating a level of indirection? Finally,
Resteasy won't like calling forward() within an ExceptionMapper. This
is something I'll have to fix.
BTW, come to think of it, I think Resteasy may be bugged when it comes
to resource locators. I think response filters are still supposed to be
invoked on a failure. I need to investigate. So, there's a high
probability we can do this all within JAX-RS/Resteasy without servlet
If you're happy with servlet filter + exception mapper approach I
can sort it out now. To make sure tests continue to function I can just leave
KeycloakSessionCleanupFilter until the Undertow adapter is ready.
Let's hold off. See above.
BTW one way to run Arquillian tests quicker is to use the remote
container. This doesn't start/stop the container for each test making it a lot quicker
to run during development.
I like builds to run out of the box without pre-configuration/setup
requirements and tests runnable within the IDE. Browser tests might be
a different animal though, you tell me.
JBoss, a division of Red Hat