tapestry-cdi veto resolution

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

tapestry-cdi veto resolution

Adam X
Hi Guys, Hello Tapestry,

I've noticed that tapestry-cdi rather aggresively protects tapestry
managed beans from CDI beans. When I introduced my CDI managed JAR
which also had its own components, tapestry-cdi vetoed it.

For example, consiter Tap5 app root is:

com.foo.bar

And some CDI enabled JAR library contains beans in:

com.foo.vodoo.components

tapestry-cdi will veto all beans from that JAR even though there is no
way for namespace collision to occur.

Since I can't modify package structure in my JAR, I modified
tapestry-cdi to be less aggressive. Attached is the patch as well as
the complete source file. Feel free to commit/improve or whatever.

In this path, I took a rather naive (but safe, imo) approach to pass
app root via -D and be less aggressive if detected. If there is a way
to automatically detect it within the extension, then this could be
even simplier. In any case, it's tested and works like a charm in my
project.

Regards,
Adam


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

tapestry-cdi.patch (3K) Download Attachment
TapestryExtension.java (4K) Download Attachment
Loading...