Is the code to reproduce this on github?
Stuart
Bill Burke wrote:
I have a very strange, rather complex problem that I'm having a
very
hard time figuring out exactly what the cause is. Its a huge blocker
for me.
* JBoss AS 7.1.1
* I have a WAR with very simple JAX-RS classes in them
* The WAR has security constraints
* Uses basic auth
The above works great, but when I add some more, specifically:
* I add a custom valve that does authentication
* The custom valve class lives in a module that is imported via
jboss-deployment-structure.xml
* This module has JAX-RS dependencies (not exported)
The above does not work. I'm getting 404's when invoking on the
deployed JAX-RS classes. I've been placing a bunch of logging
statements within resteasy (3.0) and also the JAX-RS deployer which I
forked from the 7.1.1 tagged release.
* The valve works like a charm
* A JAX-RS servlet is being deployed
* The AS7 jaxrs deployment scanner is finding the appropriate classes
* The AS7 jaxrs integration processor is adding the appropriate
context-params to the web deployment so resteasy servlet knows what to
deploy. ("resteasy.scanned.resources")
* But, the context-params are null when the resteasy servlet finally
decides to initialize, so no JAX-RS classes from the deployment are
deployed.
I have no idea why!!
To further narrow the problem, I created a simple pass-thru
authentication valve class within the same custom module. It worked, so
I decided to just include the initialization code (which does nothing
really but create some classes, but does reference a bunch of Resteasy
classes). Then, the problem surfaces again.
It seems like a module/classloader problem, based on adding code to the
pass-thru valve, but I don't know how the frack classloader issues could
effect servlet metadata created by the JAX-RS deployer.
If you've gotten through this read, thanks.