Am 27.06.2011 22:13, schrieb Martin Grigorov:
I also reviewed the code - good job!


Thanks :-)

I saw that you basically copy/pasted DefaultClassResolver to
OsgiClassResolver with minor modifications.
I think it will be better if we make DCR easier to extend so there is
no need to copy/paste its code.


Actually, I'm no longer sure it is needed at all... The OsgiClassResolver uses the bundle class loader of the WAB, accessed via the current Application class.

The DefaultClassResolver uses the ThreadContextClassLoader, or its own classloader as a fallback.

I'd noticed before that my sample works on Jetty even without the OsgiClassResolver, and the same is true on GlassFish 3.1.

Sahoo from the GlassFish team pointed out to me that any Servlet container is required to set the TCCL to the application classloader (see Servlet Spec 3.0, section 10.7.2) for loading resources and for any application callbacks.

If everyone agrees that this covers all use cases where Wicket needs to load stuff from user bundles, then I think it's safe to scrap the OsgiClassResolver and let the unmodified DefaultClassResolver do the job.

Could you also document the new module on wicketstuff wiki?
https://github.com/wicketstuff/core/wiki

Sure - that's the next thing on my list...

I'm also planning to add some Surefire tests based on Pax Exam.

Cheers,
Harald

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

Reply via email to