Mon application est sensée se connecter à une BDD via JDBC. J'ai donc écrit le code suivant :
... qui plante lamentablement avec l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 final Context lContext = new InitialContext( ); final DataSource lDataSource = ( DataSource ) lContext.lookup( NOM_RESOURCE_JDBC ); final Connection lConnection = lDataSource.getConnection( );
Au debug, l'appli récupère bien les données de serveur.xml :org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Packet for query is too large (4739923 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.)
(C'est du SSH)<Resource auth="Container"
driverClassName="com.mysql.jdbc.Driver"
maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/bdd"
password="pwd" type="javax.sql.DataSource"
url="jdbc:mysql://192.168.84.18:22/bdd"
username="root" />
J'arrive bien à me connecter à la BDD via d'autres applis, mais là ça plante à lDataSource.getConnection( ). J'ai augmenté la valeur de max_allowed_packet côté serveur MySQL, mais le problème reste. De toute façon, il ne s'agit pas de la valeur 1048576.
Ça dit quelque chose à quelqu'un ?
Edit : Et tant qu'à faire les détails de l'exception.
Cause : com.mysql.jdbc.PacketTooBigException
SQLState : S1000
Partager