You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Davide Gurgone <da...@gurgone.it> on 2005/02/07 11:54:56 UTC
JNDI without edit server.xml
Hi all,
I've got a problem.
I'm using tomcat 5.0 with Oracle 9.2i. Now I want to upgrade tomcat to
the newest version, but the same configuration doesn't work again.
I used this solution for tomcat 5.0, because I don't whant to write
anithing on tomcat server.xml file.
To configure and use it I created ONLY this xml and put it on
$TOMCAT_HOME/conf/catalina/localhost/strutsProva.xml file.
<Context displayName="Everithing managing system"
docBase="D:\dev\strutsProva" path="/strutsProva" reloadable="true">
<Resource name="jdbc/strutsProva" auth="Container"
type="javax.sql.DataSource" />
<ResourceParams name="jdbc/strutsProva">
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@localhost:1521:sweet</value>
</parameter>
<parameter>
<name>username</name>
<value>dasit</value>
</parameter>
<parameter>
<name>password</name>
<value>dasilab</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>10000</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>2</value>
</parameter>
</ResourceParams>
</Context>
Anybody knows how to configure a jndi service on tomcat, without write
anithing on server.xml file? I have to leave it clean 'cause I don't
know who will install my application.
Thanks all,
Davide
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by Harry Mantheakis <ha...@mantheakis.freeserve.co.uk>.
> Any idea?
No idea I'm afraid :-/
All I can tell you for sure is that this stuff *does* work, pretty much
out-of-the-box, as described in the Tomcat docs - but everything has to be
spot on.
So don't lose faith, even if that means starting from scratch again - which
might be worth considering, if there's any chance your configuration files
have got messed up.
Good luck!
Harry Mantheakis
> I try it and now the error is changed:
>
> java.lang.NoSuchMethodError:
> org.apache.naming.resources.ProxyDirContext.lookupCache(Ljava/lang/String;)Lor
> g/apache/nami
> ng/resources/CacheEntry;
> at
> org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:
> 663)
>
> Any idea?
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by Davide Gurgone <da...@gurgone.it>.
Harry Mantheakis wrote:
> I think your <ResourceParams> element is missing the 'factory' parameter.
[CUT]
Thank you 4 the response...
I try it and now the error is changed:
java.lang.NoSuchMethodError:
org.apache.naming.resources.ProxyDirContext.lookupCache(Ljava/lang/String;)Lorg/apache/nami
ng/resources/CacheEntry;
at
org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:663)
Any idea?
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by Davide Gurgone <da...@gurgone.it>.
fstmncn wrote:
> It looks like it can't find the db driver.
> Try putting it under WeB-INF\lib if you haven't done
> it yet.
> Moreover be sure to have the references in the web.xml
> of your application. These are mine, for example:
>
[CUT]
I'm sorry for the late, unfortunately today I was away from the office.
Well... I try both of your solution, but the resource doesn't work again..
I put
classes12.jar
jndi.jar
jdbc2_0-stdext.jar
commons-pool-1.2.jar
commons-dbcp-1.2.1.jar
in WEB-INF/lib dir (but they are also leave there in
$TOMCAT_HOME/common/lib dir).
I write the context.xml file and I put it into $PROJECT_HOME/META-INF
dir, like described in my first thread and finally I add this rows in
WEB-INF/web.xml:
<!-- references to JNDI resources -->
<!-- database -->
<resource-ref>
<res-ref-name>jdbc/strutsProva</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
I don't add anything in server.xml or in another file...
What can I do to deploy it correctly?
,-O
I whanna cry!!!
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
class not found when starting manager on solaris 9
Posted by Jens Joachim <je...@syscon-world.de>.
Hi all!
I am running tomcat 5.5.4 with JDK 1.4.2 on a x86 Linux system. I am using a
CATALINA_BASE different from CATALINA_HOME. Everything works fine, including
the Tomcat Web Application Manager. But running the same on a SPARC with
Solaris 9 brings up the following error message when trying to start the
manager app:
****************************** begin of browser output
***************************************
HTTP Status 500 -
----------------------------------------------------------------------------
----
type Exception report
message
description The server encountered an internal error () that prevented it
from fulfilling this request.
exception
javax.servlet.ServletException: Error allocating a servlet instance
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
.java:482)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105
)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:526)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:731)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav
a:526)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo
rkerThread.java:80)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:684)
java.lang.Thread.run(Thread.java:534)
root cause
java.lang.NoClassDefFoundError: org/apache/catalina/ContainerServlet
java.lang.ClassLoader.defineClass0(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:539)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLo
ader.java:1626)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.jav
a:850)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav
a:1299)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav
a:1181)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
java.lang.ClassLoader.defineClass0(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:539)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLo
ader.java:1626)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.jav
a:850)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav
a:1299)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav
a:1181)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
.java:482)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105
)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:526)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:731)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav
a:526)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo
rkerThread.java:80)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:684)
java.lang.Thread.run(Thread.java:534)
note The full stack trace of the root cause is available in the Apache
Tomcat/5.5.4 logs.
----------------------------------------------------------------------------
----
Apache Tomcat/5.5.4
******************************** end of browser output
***************************************
The content of the tomcat log file looks like this:
****************************** begin of tomcat log file
*****************************************
16 Dec 2004 17:12:51.145 ERROR main
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager] -
Error loading WebappClassLoader
delegate: false
repositories:
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@1a7508a
org.apache.catalina.servlets.DefaultServlet
java.lang.ClassNotFoundException:
org.apache.catalina.servlets.DefaultServlet
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav
a:1332)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav
a:1181)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:98
8)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:886)
at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:
3817)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4079)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:7
55)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:590)
at
org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535
)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1079)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor
t.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1011)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:437)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2010)
at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
16 Dec 2004 17:12:51.157 ERROR main
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager] -
Servlet /manager threw load() exception
javax.servlet.ServletException: Wrapper cannot find servlet class
org.apache.catalina.servlets.DefaultServlet or a class it depends on
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:99
8)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:886)
at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:
3817)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4079)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:7
55)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:590)
at
org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535
)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1079)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor
t.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1011)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:437)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2010)
at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
******************************** end of tomcat log file
*****************************************
This happens only when tomcat was started from a separate CATALINA_BASE, the
manager works when BASE and HOME are in the same directory. Any suggestions
why tomcat has problems loading classes for the manager app on Solaris 9?
Jens Joachim
Syscon Ingenieurbüro für Mess- und Datentechnik GmbH
E-Mail: Jens.Joachim@syscon-world.de
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by fstmncn <fs...@yahoo.com>.
It looks like it can't find the db driver.
Try putting it under WeB-INF\lib if you haven't done
it yet.
Moreover be sure to have the references in the web.xml
of your application. These are mine, for example:
<!-- references to JNDI resources -->
<!-- database -->
<resource-ref>
<res-ref-name>jdbc/ddb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<!-- javamail -->
<resource-ref>
<res-ref-name>mail/dmail</res-ref-name>
<res-type>javax.mail.Session</res-type>
<res-auth>Container</res-auth>
</resource-ref>
F.
--- Davide Gurgone <da...@gurgone.it> wrote:
> fstmncn wrote:
> > you should edit context.xml under META-INF in your
> > web-application.
> > HTH,
> > Fausto.
>
> Hi Fausto,
> Thank you for the response,
>
> I try your solution, but I think I wrong something,
> 'cause the problem
> is the same:
> INFO: HTMLManager: list: Listing contexts for
> virtual host 'localhost'
> org.apache.tomcat.dbcp.dbcp.SQLNestedException:
> Cannot create JDBC
> driver of class '' for connect URL 'null'
> at
>
org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
> .....
>
> In order I delete the strutsProva.xml from
> $TOMCAT_HOME/conf/Catalina/localhost
> and I put the same content in a new
> $WEB_APP/META-INF/context.xml file.
> Finally I deployed the application from the tomcat
> manager, adding the
> Directory URL and the Context Path.
>
> I think Tomcat doesn't read the file!
> How can I say to Tomcat the file location?
>
> Have you got any other suggests?
>
>
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail:
> tomcat-user-help@jakarta.apache.org
>
>
=====
[--�--]
__________________________________
Do you Yahoo!?
Meet the all-new My Yahoo! - Try it today!
http://my.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by Davide Gurgone <da...@gurgone.it>.
fstmncn wrote:
> you should edit context.xml under META-INF in your
> web-application.
> HTH,
> Fausto.
Hi Fausto,
Thank you for the response,
I try your solution, but I think I wrong something, 'cause the problem
is the same:
INFO: HTMLManager: list: Listing contexts for virtual host 'localhost'
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'
at
org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
.....
In order I delete the strutsProva.xml from
$TOMCAT_HOME/conf/Catalina/localhost
and I put the same content in a new $WEB_APP/META-INF/context.xml file.
Finally I deployed the application from the tomcat manager, adding the
Directory URL and the Context Path.
I think Tomcat doesn't read the file!
How can I say to Tomcat the file location?
Have you got any other suggests?
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by fstmncn <fs...@yahoo.com>.
you should edit context.xml under META-INF in your
web-application.
HTH,
Fausto.
--- Davide Gurgone <da...@gurgone.it> wrote:
> Hi all,
> I've got a problem.
> I'm using tomcat 5.0 with Oracle 9.2i. Now I want to
> upgrade tomcat to
> the newest version, but the same configuration
> doesn't work again.
>
> I used this solution for tomcat 5.0, because I don't
> whant to write
> anithing on tomcat server.xml file.
>
> To configure and use it I created ONLY this xml and
> put it on
> $TOMCAT_HOME/conf/catalina/localhost/strutsProva.xml
> file.
>
> <Context displayName="Everithing managing system"
> docBase="D:\dev\strutsProva"
> path="/strutsProva" reloadable="true">
> <Resource name="jdbc/strutsProva"
> auth="Container"
> type="javax.sql.DataSource" />
> <ResourceParams name="jdbc/strutsProva">
> <parameter>
> <name>driverClassName</name>
> <value>oracle.jdbc.OracleDriver</value>
> </parameter>
> <parameter>
> <name>url</name>
>
>
<value>jdbc:oracle:thin:@localhost:1521:sweet</value>
> </parameter>
> <parameter>
> <name>username</name>
> <value>dasit</value>
> </parameter>
> <parameter>
> <name>password</name>
> <value>dasilab</value>
> </parameter>
> <parameter>
> <name>maxActive</name>
> <value>10000</value>
> </parameter>
> <parameter>
> <name>maxWait</name>
> <value>5000</value>
> </parameter>
> <parameter>
> <name>maxIdle</name>
> <value>2</value>
> </parameter>
> </ResourceParams>
> </Context>
>
> Anybody knows how to configure a jndi service on
> tomcat, without write
> anithing on server.xml file? I have to leave it
> clean 'cause I don't
> know who will install my application.
>
> Thanks all,
>
> Davide
>
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail:
> tomcat-user-help@jakarta.apache.org
>
>
=====
[--�--]
__________________________________
Do you Yahoo!?
The all-new My Yahoo! - What will yours do?
http://my.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JNDI without edit server.xml
Posted by Harry Mantheakis <ha...@mantheakis.freeserve.co.uk>.
I think your <ResourceParams> element is missing the 'factory' parameter.
Mine looks like this:
<ResourceParams name="jdbc/myDatabase">
<parameter>
<name>factory</name>
<value>
org.apache.commons.dbcp.BasicDataSourceFactory
</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>
org.postgresql.Driver
</value>
</parameter>
<parameter>
<name>url</name>
<value>
jdbc:postgresql://localhost:5432/myDatabaseUsername
</value>
</parameter>
...
</ResourceParams>
The first parameter ('factory') is missing from the example you posted.
HTH
Harry Mantheakis
> Hi all,
> I've got a problem.
> I'm using tomcat 5.0 with Oracle 9.2i. Now I want to upgrade tomcat to
> the newest version, but the same configuration doesn't work again.
>
> I used this solution for tomcat 5.0, because I don't whant to write
> anithing on tomcat server.xml file.
>
> To configure and use it I created ONLY this xml and put it on
> $TOMCAT_HOME/conf/catalina/localhost/strutsProva.xml file.
>
> <Context displayName="Everithing managing system"
> docBase="D:\dev\strutsProva" path="/strutsProva" reloadable="true">
> <Resource name="jdbc/strutsProva" auth="Container"
> type="javax.sql.DataSource" />
> <ResourceParams name="jdbc/strutsProva">
> <parameter>
> <name>driverClassName</name>
> <value>oracle.jdbc.OracleDriver</value>
> </parameter>
> <parameter>
> <name>url</name>
> <value>jdbc:oracle:thin:@localhost:1521:sweet</value>
> </parameter>
> <parameter>
> <name>username</name>
> <value>dasit</value>
> </parameter>
> <parameter>
> <name>password</name>
> <value>dasilab</value>
> </parameter>
> <parameter>
> <name>maxActive</name>
> <value>10000</value>
> </parameter>
> <parameter>
> <name>maxWait</name>
> <value>5000</value>
> </parameter>
> <parameter>
> <name>maxIdle</name>
> <value>2</value>
> </parameter>
> </ResourceParams>
> </Context>
>
> Anybody knows how to configure a jndi service on tomcat, without write
> anithing on server.xml file? I have to leave it clean 'cause I don't
> know who will install my application.
>
> Thanks all,
>
> Davide
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org