I spoke a little too quickly, ServletContext is avilable from ctx (just didn't search hard enough). Adding the request listener here though results in:
java.lang.NullPointerException at org.apache.catalina.core.ApplicationContext.createListener(ApplicationContext.java:1402) at org.apache.catalina.core.ApplicationContext.addListener(ApplicationContext.java:1307) at org.apache.catalina.core.ApplicationContextFacade.addListener(ApplicationContextFacade.java:636) On Sun, Jun 29, 2014 at 8:21 PM, John D. Ament <john.d.am...@gmail.com> wrote: > Hi, > > I'm on Tomcat 7.0.54, though I would hope your APIs aren't volatile > enough that your internals should matter.. > > I tried this: > > Wrapper wrapper = > Tomcat.addServlet(ctx,"Greeter",GreeterServlet.class.getName()); > wrapper.addMapping("/*"); > wrapper.getServlet().getServletConfig().getServletContext().addListener(MyListener.class); > > This results in a NPE. This makes me think I don't have access to the > context yet. I would actually think it's somewhere in this chain: > > tomcat = new Tomcat(); > tomcat.setPort(8080); > File base = new File("target/webapp-runner"); > if(!base.exists()) { > base.mkdirs(); > } > Context ctx = tomcat.addContext("/",base.getAbsolutePath()); > > however, it doesn't look like Context here is a ServletContext. > > > On Sun, Jun 29, 2014 at 6:30 PM, Caldarale, Charles R > <chuck.caldar...@unisys.com> wrote: >>> From: John D. Ament [mailto:john.d.am...@gmail.com] >>> Subject: Embedded Tomcat question >> >>> Playing around a bit with embedded tomcat. It looks like there are >>> APIs to add all of the tomcat specific listeners, however how would I >>> add a ServletRequestListener? >> >> Look in the servlet spec for the version of Tomcat you're using (which you >> didn't mention), and the JavaDoc for ServletContext (e.g., addListener). >> >> - Chuck >> >> >> THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY >> MATERIAL and is thus for use only by the intended recipient. If you received >> this in error, please contact the sender and delete the e-mail and its >> attachments from all computers. >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >> For additional commands, e-mail: users-h...@tomcat.apache.org >> --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org