RE: DefaultContext with JNDI resource in admin web-app
Not sure if this is related to your specific error, but you need to add a resource link in the context.xml to the application. The resource (datasource) is defined globally, but you still need to point your app to that resource. webappname.xml snippet: -Original Message- From: Todd Hill [mailto:[EMAIL PROTECTED] Sent: Tuesday, March 28, 2006 10:48 AM To: users@tomcat.apache.org Subject: DefaultContext with JNDI resource in admin web-app When I try to add a JNDI lookup resource (DataSource) to the DefaultContext node in the server.xml file, I always get a "Error retrieving attribute debug" message (see attached screenshot). I have the server.xml is configured as follows: url jdbc:mysql://localhost/test?zeroDateTimeBehavior=convertToNull password root maxActive 10 maxWait 100 driverClassName com.mysql.jdbc.Driver username root maxIdle 30 . . . Further, the admin log shows the following error: . . . 2006-03-27 17:26:59 StandardContext[/admin]action: Select event on Catalina:type=DefaultContext,host=localhost 2006-03-27 17:26:59 StandardContext[/admin]action: Error retrieving attribute debug javax.management.InstanceNotFoundException: MBeanServer cannot find MBean with ObjectName Catalina:type=DefaultLoader,host=localhost at mx4j.server.MBeanServerImpl.findMBeanMetaData(MBeanServerImpl.java:528) at mx4j.server.MBeanServerImpl.getAttribute(MBeanServerImpl.java:1235) at org.apache.webapp.admin.defaultcontext.EditDefaultContextAction.perform(Edit DefaultContextAction.java:198) at org.apache.struts.action.Action.execute(Action.java:420) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProces sor.java:484) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContext Valve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase java:540) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRu
DefaultContext with JNDI resource in admin web-app
When I try to add a JNDI lookup resource (DataSource) to the DefaultContext node in the server.xml file, I always get a "Error retrieving attribute debug" message (see attached screenshot). I have the server.xml is configured as follows: url jdbc:mysql://localhost/test?zeroDateTimeBehavior=convertToNull password root maxActive 10 maxWait 100 driverClassName com.mysql.jdbc.Driver username root maxIdle 30 . . . Further, the admin log shows the following error: . . . 2006-03-27 17:26:59 StandardContext[/admin]action: Select event on Catalina:type=DefaultContext,host=localhost 2006-03-27 17:26:59 StandardContext[/admin]action: Error retrieving attribute debug javax.management.InstanceNotFoundException: MBeanServer cannot find MBean with ObjectName Catalina:type=DefaultLoader,host=localhost at mx4j.server.MBeanServerImpl.findMBeanMetaData(MBeanServerImpl.java:528) at mx4j.server.MBeanServerImpl.getAttribute(MBeanServerImpl.java:1235) at org.apache.webapp.admin.defaultcontext.EditDefaultContextAction.perform(Edit DefaultContextAction.java:198) at org.apache.struts.action.Action.execute(Action.java:420) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProces sor.java:484) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContext Valve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase java:540) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:534) I'm not sure what the MBean error is all about. Any clues as to how I can get this to work? Incidentally, the JNDI lookup works fine and the webapps are accessing the JDBC Datasource, it's just the admin webapp that doesn't seem to work with DefaultContext, even though some books tell you to configure things this way. Thanks in advance. Todd --