RE: DefaultContext with JNDI resource in admin web-app

2006-03-28 Thread Farrow, Marc
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

2006-03-28 Thread Todd Hill
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

--