tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "albert quinn" <albertber...@gmail.com>
Subject Re: problem with Tomcat 5.5.17, Axis 2, MySQL 3.1.12, JNDI
Date Thu, 12 Jul 2007 11:34:38 GMT
 Hi David !! :

  Many thanks for your advices. I've tried it. I've dropped the
context definition in my server.xml (i'd put it there after reading
this tutorial http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html
in the Tomcat docs), i've fixed the port number in my
"axis2/META-INF/context.xml file" and dropped the "autoReconnect"
paramater, adding validationQuery="select 1" to my Resource element.

  After that changes, i've removed the Tomcat logs and reboot Tomcat.
Then I've  tried the web service, getting this new Exception message :

  Cannot create JDBC driver of class '' for connect URL 'null'


  Then I've read the Tomcat logs looking for ideas about what F@#$%&
is going wrong with this, but I've not found any information that help
to discover what's happening. Any new ideas about what's going on or
about how to find the problem?

  Many thanks again by spending your (sure precious) time with this.






2007/7/12, David Smith <dns4@cornell.edu>:
> I'd recommend dropping the context definition in your server.xml.  Under
> normal conditions you should never have to modify that file except to
> alter server-wide settings like which ports it listens on.
>
> Also looking at your axis2/META-INF/context.xml file, I see the port
> number is incorrect.
>
> Lastly, I would recommend you drop the autoReconnect parameter of your
> database url and add validationQuery="select 1" to your Resource
> element.  Autoreconnect is of minimal usefullness and validationQuery
> can test the db connection before your app attemps to use it.
>
> --David
>
> albert quinn wrote:
> > Hi ! :
> >
> >  First of all : excuse my poor english. Second : I'm trying to set up
> > a MySQL connection pool on Tomcat 5.5.17 (running over Windows XP) to
> > connect to a remote DB from a web service running on the Axis 2
> > deployed in Tomcat. I've read the Tomcat docs and the Tomcat mailing
> > lists but i've not founded any answers that help me to fix the
> > problem. I've this in my "conf\server.xml" :
> >
> >
> > .....
> >           <Context docBase="axis2" path="C:\Archivos de
> > programa\Apache Software Foundation\Tomcat 5.5\webapps\axis2"
> > reloadable="true">
> >
> >                <Resource auth="Container" driverClassName="
> > com.mysql.jdbc.Driver" maxActive="100" maxIdle="30" maxWait="10000"
> > name="java:comp/env/jdbc/DB" password="mypassword"
> > type="javax.sql.DataSource"
> > url="jdbc:mysql://remoteaddress.com:3306/db?autoReconnect=true"
> > username="myname"/>
> >
> >           </Context>
> >      </Host>
> >
> > ....
> >
> >
> > I've this "C:\Archivos de programa\Apache Software Foundation\Tomcat
> > 5.5\webapps\axis2\META-INF\context.xml " file :
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <Context>
> >
> >    <WatchedResource>WEB-INF/web.xml</WatchedResource>
> >
> >      <Resource auth="Container" driverClassName="
> > com.mysql.jdbc.Driver" maxActive="100" maxIdle="30" maxWait="10000"
> > name="jdbc/DB" password="mypassword" type="javax.sql.DataSource"
> > url="jdbc:mysql://remoteaddress.com:3036/db?autoReconnect=true"
> > username="myname"/>
> >
> > </Context>
> >
> > I've these lines in "C:\Archivos de programa\Apache Software
> > Foundation\Tomcat 5.5\webapps\axis2\WEB-INF\web.xml"
> >
> >    <resource-ref>
> >        <description>
> >            a description
> >        </description>
> >        <res-ref-name>
> >            jdbc/DB
> >        </res-ref-name>
> >        <res-type>
> >            javax.sql.DataSource
> >        </res-type>
> >        <res-auth>
> >            Container
> >        </res-auth>
> >    </resource-ref>
> >
> >  When i call the web service running on Axis 2, after a long time i
> > get the next Exception message :
> >
> > Cannot create PoolableConnectionFactory (Server connection failure
> > during transaction. Due to underlying exception:
> > 'java.net.SocketException: java.net.NoRouteToHostException: No route
> > to host: connect'.
> >
> > ** BEGIN NESTED EXCEPTION **
> >
> > java.net.SocketException
> > MESSAGE: java.net.NoRouteToHostException: No route to host: connect
> >
> > STACKTRACE:
> >
> > java.net.SocketException: java.net.NoRouteToHostException: No route to
> > host: connect
> >
> >    at
> > com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
> >
> >
> >    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)
> >
> >    at com.mysql.jdbc.Connection.createNewIO(Connection.java :2680)
> >
> >    at com.mysql.jdbc.Connection.<init>(Connection.java:1485)
> >
> >    at
> > com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
> >
> >
> >    at
> > org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection
> > (DriverConnectionFactory.java:37)
> >
> >    at
> > org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
> >
> >
> >    at
> > org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory
> > (BasicDataSource.java:877)
> >
> >    at
> > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:851)
> >
> >
> >    at
> > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
> >
> >
> >    at code.prueba.PruebaBD.getUserLogin(PruebaBD.java:20)
> >
> >    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >
> >    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> >
> >    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> >
> >    at java.lang.reflect.Method.invoke(Unknown Source)
> >
> >    at
> > org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java
> >
> > :91)
> >
> >    at
> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)
> >
> >
> >    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:144)
> >
> >    at
> > org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:122)
> >
> >
> >    at
> > org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:116)
> >
> >
> >    at
> > org.apache.axis2.transport.http.AxisServlet$ProcessRESTRequest.processURLRequest
> >
> > (AxisServlet.java:776)
> >
> >    at
> > org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:238)
> >
> >    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(ApplicationFilterChain.java:252)
> >
> >
> >    at
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java
> >
> > :173)
> >
> >    at
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> >
> >
> >    at
> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> >
> >
> >    at org.apache.catalina.core.StandardHostValve.invoke
> > (StandardHostValve.java:126)
> >
> >    at
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> >
> >
> >    at
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> >
> >
> >    at
> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> >
> >
> >    at
> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> >
> >
> >    at
> > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
> >
> > (Http11BaseProtocol.java:664)
> >
> >    at
> > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> >
> >
> >    at
> > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java
> >
> > :80)
> >
> >    at
> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> >
> >
> >    at java.lang.Thread.run(Unknown Source)
> >
> >
> >
> > ** END NESTED EXCEPTION **
> >
> >
> > Attempted reconnect 3 times. Giving up.)
> >
> >
> >  I've tried to turn it off the FireWall, but i've got the same
> > Exception message.  The lines in the web service are :
> >
> >
> >            Context oContext = new InitialContext();
> >            DataSource oDataSource = (DataSource)
> > oContext.lookup("java:comp/env/jdbc/DB");
> >            Connection oConnection = oDataSource.getConnection();
> >
> >  I've tried to modify the web service to connect to the DB using the
> > JDBC Driver directly with :
> >
> >
> >            Class jdbcDriverClass = Class.forName(
> > "com.mysql.jdbc.Driver" );
> >            Driver oDriver = (Driver) jdbcDriverClass.newInstance();
> >            DriverManager.registerDriver(oDriver);
> >            Connection oConnection =
> > DriverManager.getConnection("jdbc:mysql://remoteaddress.com:3306/db","myname","mypassword");
> >
> >
> >  That way i can connect to the remote database without problems. Of
> > course i've the mysql jar in the Tomcat's "common\lib" directory. But
> > after many hours of reading and trying and knocking on heaven's door
> > (hard, with the head!! ;)  i've no idea of what is happening, even
> > worse... i've no idea of what to do to find the problem. Does anybody
> > have any idea to help me to discover where is the problem? Many thanks
> > to anybody who help!!!!
> >
> > ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message