Thanks Jan, but I think I wasn't clear on a point in my question. I can create and bind what I need to JNDI without all the classloader stuff in that test you referenced. What I was hoping for is class similar to WebAppContext that would allow Jetty to handle all of that for me. For instance, if I created Jetty instance with an arbitrary WebAppContext, and also a resource in my server code with something like new Resource(_server, "jndiName", myobject) then I would expect to have access to it within the webapp context without any explicit binding on my part because Jetty handles it. But again, I don't want use WebAppContext because my files won't be organized correctly. I'd rather use something like ServletContextHandler.
I saw that test you referenced before, but I didn't fully understand the ClassLoader stuff. I gather that creating a class loader is somehow creating an isolated java:comp space for working with JNDI contexts? It's good to know, but doesn't seem necessary here. Was just hoping to skip creating JNDI contexts in my tests, but I guess I could refactor it all out to a class and hope I never have to look at it again... On Tue, Sep 17, 2013 at 3:21 PM, Jan Bartel <[email protected]> wrote: > Benjamin, > > You can have a look at the junit tests for jetty-jndi, specifically > this one: > https://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java > > As long as you've got a Thread context classloader set, you can call > lookup on java:comp and if it doesn't exist it will create it. You can > then make your own env subcontext. > > cheers > Jan > > On 18 September 2013 04:05, Benjamin Zuill-Smith <[email protected]> > wrote: > > I want to run some JUnit tests that involve a JNDI Resource. This > Resource > > is setup with server scope as the server starts in my test. However, I > can't > > create a webapp-like context for Jetty to setup the JNDI subcontexts like > > java:comp/env. Is that only done when using a WebappContext? Are there > other > > Context classes that can be used for testing to achieve this? > > > > I can't use WebappContext because my war is not created in the testing > phase > > and I also would rather not have test web.xml and jetty-xml descriptors, > > etc. > > > > For now, I put into my tests an explicit Resource at the java:comp/env > > context but it I would like to be able to test with code as close to the > > production as possible and avoid painful tests down the road. > > > > Anyone have suggestions? > > > > -- > > Benjamin Zuill-Smith > > > > _______________________________________________ > > jetty-users mailing list > > [email protected] > > https://dev.eclipse.org/mailman/listinfo/jetty-users > > > > > > -- > Jan Bartel <[email protected]> > www.webtide.com > 'Expert Jetty/CometD developer,production,operations advice' > _______________________________________________ > jetty-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/jetty-users > -- Benjamin Zuill-Smith
_______________________________________________ jetty-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/jetty-users
