You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-user@james.apache.org by Álvaro Póliz <al...@gmail.com> on 2008/02/28 18:28:07 UTC

Problem with JAMES and Database connection

Hello,
Im having a problem when changing Apache JAMES to a new machine, similar 
than the old one.
This error appears when I start JAMES in this new machine:

/
There was an uncaught exception:
---------------------------------------------------------
--- Message ---
Failed to start application james.
--- Stack Trace ---
org.apache.avalon.phoenix.interfaces.DeploymentException: Failed to 
start application james.
        at 
org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:379)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
        at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
        at 
org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
        at 
org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
        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.avalon.phoenix.launcher.Main.startup(Main.java:135)
        at org.apache.avalon.phoenix.launcher.Main.main(Main.java:84)
Caused by: org.apache.avalon.framework.CascadingException: Failed to 
start application james.
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.startup(DefaultKernel.java:313)
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.addApplication(DefaultKernel.java:376)
        at 
org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:357)
        ... 14 more
Caused by: org.apache.avalon.phoenix.interfaces.ApplicationException: 
Component named "database-connections" failed to pass throu
gh the Starting stage. (Reason: 
org.apache.avalon.framework.configuration.ConfigurationException: Error 
configurable datasource).
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.start(DefaultApplication.java:186)
        at 
org.apache.avalon.framework.container.ContainerUtil.start(ContainerUtil.java:260)
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.startup(DefaultKernel.java:295)
        ... 16 more
*Caused by: 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleException: 
Component named "database-connections" failed to
pass through the Starting stage. (Reason: 
org.apache.avalon.framework.configuration.ConfigurationException: Error 
configurable da
tasource).*
        at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.fail(LifecycleHelper.java:354)
        at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.startup(LifecycleHelper.java:226)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.startup(DefaultApplication.java:530)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.doRunPhase(DefaultApplication.java:478)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.runPhase(DefaultApplication.java:409)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.start(DefaultApplication.java:180)
        ... 18 more
Caused by: 
org.apache.avalon.framework.configuration.ConfigurationException: Error 
configurable datasource
        at 
org.apache.james.util.dbcp.JdbcDataSource.configure(JdbcDataSource.java:200)
        at 
org.apache.avalon.cornerstone.blocks.datasources.DefaultDataSourceSelector.initialize(DefaultDataSourceSelector.java:147)
        at 
org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:244)
        at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.startup(LifecycleHelper.java:200)
        ... 22 more
*Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create 
PoolableConnectionFactory (Server connection failure during
transaction. Due to underlying exception: 'java.net.ConnectException: 
Connection timed out'.*
** BEGIN NESTED EXCEPTION **
java.net.ConnectException
MESSAGE: Connection timed out
STACKTRACE:
java.net.ConnectException: Connection timed out
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
        at 
java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
        at java.net.Socket.connect(Socket.java:464)
        at java.net.Socket.connect(Socket.java:414)
        at java.net.Socket.<init>(Socket.java:310)
        at java.net.Socket.<init>(Socket.java:125)
        at 
com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:124)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:225)
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:1895)
        at com.mysql.jdbc.Connection.<init>(Connection.java:450)
        at 
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:411)
        at 
org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
        at 
org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
        at 
org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:877)
        at 
org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:851)
        at 
org.apache.james.util.dbcp.JdbcDataSource$1.createDataSource(JdbcDataSource.java:113)
        at 
org.apache.commons.dbcp.BasicDataSource.setLogWriter(BasicDataSource.java:598)
        at 
org.apache.james.util.dbcp.JdbcDataSource.configure(JdbcDataSource.java:157)
        at 
org.apache.avalon.cornerstone.blocks.datasources.DefaultDataSourceSelector.initialize(DefaultDataSourceSelector.java:147)
        at 
org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:244)
        at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.startup(LifecycleHelper.java:200)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.startup(DefaultApplication.java:530)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.doRunPhase(DefaultApplication.java:478)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.runPhase(DefaultApplication.java:409)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.start(DefaultApplication.java:180)
        at 
org.apache.avalon.framework.container.ContainerUtil.start(ContainerUtil.java:260)
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.startup(DefaultKernel.java:295)
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.addApplication(DefaultKernel.java:376)
        at 
org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:357)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
        at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
        at 
org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
        at 
org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
        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.avalon.phoenix.launcher.Main.startup(Main.java:135)
        at org.apache.avalon.phoenix.launcher.Main.main(Main.java:84)
** END NESTED EXCEPTION **
Attempted reconnect 3 times. Giving up.)
        at 
org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:855)
        at 
org.apache.james.util.dbcp.JdbcDataSource$1.createDataSource(JdbcDataSource.java:113)
        at 
org.apache.commons.dbcp.BasicDataSource.setLogWriter(BasicDataSource.java:598)
        at 
org.apache.james.util.dbcp.JdbcDataSource.configure(JdbcDataSource.java:157)
        ... 25 more
*Caused by: java.sql.SQLException: Server connection failure during 
transaction. Due to underlying exception: 'java.net.ConnectExc
eption: Connection timed out'.*
** BEGIN NESTED EXCEPTION **
java.net.ConnectException
MESSAGE: Connection timed out
STACKTRACE:
java.net.ConnectException: Connection timed out
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
        at 
java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
        at java.net.Socket.connect(Socket.java:464)
        at java.net.Socket.connect(Socket.java:414)
        at java.net.Socket.<init>(Socket.java:310)
        at java.net.Socket.<init>(Socket.java:125)
        at 
com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:124)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:225)
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:1895)
        at com.mysql.jdbc.Connection.<init>(Connection.java:450)
        at 
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:411)
        at 
org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
        at 
org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
        at 
org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:877)
        at 
org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:851)
        at 
org.apache.james.util.dbcp.JdbcDataSource$1.createDataSource(JdbcDataSource.java:113)
        at 
org.apache.commons.dbcp.BasicDataSource.setLogWriter(BasicDataSource.java:598)
        at 
org.apache.james.util.dbcp.JdbcDataSource.configure(JdbcDataSource.java:157)
        at 
org.apache.avalon.cornerstone.blocks.datasources.DefaultDataSourceSelector.initialize(DefaultDataSourceSelector.java:147)
        at 
org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:244)
        at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.startup(LifecycleHelper.java:200)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.startup(DefaultApplication.java:530)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.doRunPhase(DefaultApplication.java:478)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.runPhase(DefaultApplication.java:409)
        at 
org.apache.avalon.phoenix.components.application.DefaultApplication.start(DefaultApplication.java:180)
        at 
org.apache.avalon.framework.container.ContainerUtil.start(ContainerUtil.java:260)
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.startup(DefaultKernel.java:295)
        at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.addApplication(DefaultKernel.java:376)
        at 
org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:357)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
        at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
        at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
        at 
org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
        at 
org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
        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.avalon.phoenix.launcher.Main.startup(Main.java:135)
        at org.apache.avalon.phoenix.launcher.Main.main(Main.java:84)
** END NESTED EXCEPTION **
Attempted reconnect 3 times. Giving up.
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:1964)
        at com.mysql.jdbc.Connection.<init>(Connection.java:450)
        at 
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:411)
        at 
org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
        at 
org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
        at 
org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
        at 
org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:877)
        at 
org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:851)
        ... 28 more
/

The configuration of the database connection is:

*      <data-source name="maildb" 
class="org.apache.james.util.dbcp.JdbcDataSource">
         <driver>com.mysql.jdbc.Driver</driver>
         <dburl>jdbc:mysql://localhost/mail?autoReconnect=true</dburl>
         <user>root</user>
         <password>root</password>
         <max>20</max>
      </data-source>*

I have tried with different users from the database and changing 
'localhost' for '127.0.0.1' or the external IP and I obtain the same result.

Thank you.
    -Álvaro

---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org


Re: Problem with JAMES and Database connection

Posted by Álvaro Póliz <al...@gmail.com>.
2008/2/28, Stefano Bagnara <ap...@bago.org>:
>
> Álvaro Póliz ha scritto:
>
> > Hello,
> > Im having a problem when changing Apache JAMES to a new machine, similar
> > than the old one.
> > This error appears when I start JAMES in this new machine:
> >
> > /
> > There was an uncaught exception:
> > ---------------------------------------------------------
> > --- Message ---
>
> > [...]
>
> > ** BEGIN NESTED EXCEPTION **
> > java.net.ConnectException
> > MESSAGE: Connection timed out
> > STACKTRACE:
> > java.net.ConnectException: Connection timed out
> >        at java.net.PlainSocketImpl.socketConnect(Native Method)
> >        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
> >        at
> > java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
> >        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
> >        at java.net.Socket.connect(Socket.java:464)
> >        at java.net.Socket.connect(Socket.java:414)
> >        at java.net.Socket.<init>(Socket.java:310)
> >        at java.net.Socket.<init>(Socket.java:125)
> >        at
> > com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java
> :124)
> >
> >        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:225)
> >        at com.mysql.jdbc.Connection.createNewIO(Connection.java:1895)
> >        at com.mysql.jdbc.Connection.<init>(Connection.java:450)
>
> > [...]
>
> > The configuration of the database connection is:
> >
> > *      <data-source name="maildb"
> > class="org.apache.james.util.dbcp.JdbcDataSource">
> >         <driver>com.mysql.jdbc.Driver</driver>
> >         <dburl>jdbc:mysql://localhost/mail?autoReconnect=true</dburl>
> >         <user>root</user>
> >         <password>root</password>
> >         <max>20</max>
> >      </data-source>*
> >
> > I have tried with different users from the database and changing
> > 'localhost' for '127.0.0.1' or the external IP and I obtain the same
> > result.
> >
> > Thank you.
> >    -Álvaro
>
>
> A timeout on localhost connection seems to be a firewall issue. Maybe
> you have some sort of firewall that is hanging connections to 3306?
>
> Otherwise, are you sure that your mysql is listening to the TCP port?
>
> Can you try a "telnet localhost 3306" and "netstat -a | grep 3306" from
> your box?
>
> Stefano
>
>
>

I tried to connect to MySQL from localhost, and I am able to do it always.
The telnet to 3306 also works fine. I have been trying with many users of my
database but I cant connect with them from JAMES.

Saludos.
-Álvaro

Re: Problem with JAMES and Database connection

Posted by Stefano Bagnara <ap...@bago.org>.
Álvaro Póliz ha scritto:
> Hello,
> Im having a problem when changing Apache JAMES to a new machine, similar 
> than the old one.
> This error appears when I start JAMES in this new machine:
> 
> /
> There was an uncaught exception:
> ---------------------------------------------------------
> --- Message ---
> [...]
> ** BEGIN NESTED EXCEPTION **
> java.net.ConnectException
> MESSAGE: Connection timed out
> STACKTRACE:
> java.net.ConnectException: Connection timed out
>        at java.net.PlainSocketImpl.socketConnect(Native Method)
>        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
>        at 
> java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
>        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
>        at java.net.Socket.connect(Socket.java:464)
>        at java.net.Socket.connect(Socket.java:414)
>        at java.net.Socket.<init>(Socket.java:310)
>        at java.net.Socket.<init>(Socket.java:125)
>        at 
> com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:124) 
> 
>        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:225)
>        at com.mysql.jdbc.Connection.createNewIO(Connection.java:1895)
>        at com.mysql.jdbc.Connection.<init>(Connection.java:450)
> [...]
> The configuration of the database connection is:
> 
> *      <data-source name="maildb" 
> class="org.apache.james.util.dbcp.JdbcDataSource">
>         <driver>com.mysql.jdbc.Driver</driver>
>         <dburl>jdbc:mysql://localhost/mail?autoReconnect=true</dburl>
>         <user>root</user>
>         <password>root</password>
>         <max>20</max>
>      </data-source>*
> 
> I have tried with different users from the database and changing 
> 'localhost' for '127.0.0.1' or the external IP and I obtain the same 
> result.
> 
> Thank you.
>    -Álvaro

A timeout on localhost connection seems to be a firewall issue. Maybe 
you have some sort of firewall that is hanging connections to 3306?

Otherwise, are you sure that your mysql is listening to the TCP port?

Can you try a "telnet localhost 3306" and "netstat -a | grep 3306" from 
your box?

Stefano


---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org