Connecteur avec JAR en "JPA"

Bonjour,

Quelqu’un à une réponse à mon problème ?

Je suis entrain d’implémenter un connecteur et j’utilise un jar " ma classe en JPA" que j’ai développé sous Netbeans.
Le studio Bonita ne connait pas les dépendances externes, Dans Bonita.logs il me fait sortir une erreur de ce genre:

" juil. 04, 2014 8:24:47 AM java_util_logging_Logger$severe call
Grave: Exception : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver "

Comme quoi il connait pas le Driver.

Toute proposition sera la bienvenue.
Merci.

J’ai rencontré le même pb avec un autre accès à une base de donnée.
Ma solution a été : ajout des libs dans les dépendances du connecteur + mise à jour des imports (certains sont pas dans netbeans) + recopie dans le connecteur d’une partie de mon code java testé sous netbeans.
Bon courage.

oui j’ai ajouté mon jar dans les dépendances du connecteur mais quand je fait ( import "mon package de mon jar " ) il connait pas ma classe

Même en ajoutant quelques imports qui sont pas dans bonita il connait pas ma classe
voila mon connecteur:

/**
*
*/
package org.mycompany.connector;

import java.sql.Connection;
import jpa.*;
import java.sql.DriverManager;
import java.sql.Statement;
import java.util.logging.Logger;
import javax.persistence.Persistence;
import javax.persistence.EntityManager;

import org.bonitasoft.engine.connector.ConnectorException;

/**

*/
public class SumImpl extends AbstractSumImpl {

Logger logger= Logger.getLogger("org.bonitasoft");
static final String JDBC_DRIVER ="com.mysql.jdbc.Driver";
Connection connection = null ;
Statement statement= null ;
@Override
protected void executeBusinessLogic() throws ConnectorException
{
	//String query = "INSERT INTO personne VALUES(1, \"katrine\", \"kati\")";
	logger.severe("1");
	
	
	try 
	{
		EntityManager em  = Persistence.createEntityManagerFactory("JPAPU").createEntityManager();
        
        Personne p = new Personne(1,"A","B");

        em.getTransaction().begin();
        try 
        {
            em.persist(p);
            em.getTransaction().commit();
        } 
        catch (Exception e) 
        {
            e.printStackTrace();
            em.getTransaction().rollback();
        }
        finally
        {
            em.close();
        }
    } 
	catch (Exception e) {
		logger.severe("Erreur BusinessLogic"); 
		}
 }

@Override
public void connect() throws ConnectorException{
			try { 
					Class.forName(JDBC_DRIVER); 
					connection = DriverManager.getConnection("jdbc:mysql://localhost/mydb1", "root", "12345678"); 
					statement = connection.createStatement();
			    } 
			catch (Exception e) 
			{ 
				logger.severe("Erreur de connexion : " + e); 	
			} 
}

@Override
public void disconnect() throws ConnectorException{
	 try {
		 statement.close();
		 connection.close();
	         }
		 catch (Exception e) { logger.severe("Erreur de deconnexion"); 
	   } 

}

}

Il connait pas :

import jpa.*;
import javax.persistence.Persistence;
import javax.persistence.EntityManager;

et même personne :
EntityManager em = Persistence.createEntityManagerFactory(“JPAPU”).createEntityManager();
Personne p = new Personne(1,“A”,“B”);

Bonjour - avez-vous essayé comme alternative d’ajouter les libs mysql au niveau des libs du tomcat (tomcat_home\lib) ?

Quels sont les libs que vous avez importés dans le studio (menu development/manage jar) ? au niveau du processus (menu configure/process dependencies) ? au niveau de l’application (menu configure/application dependencies) ?

Avez-vous vérifié si il n’y avait pas de conflit de dépendance avec les libs présentes dans le tomcat_home\lib ou dans celles du tomcat_home\webapps\bonita\WEB-INF\lib ?

Bonjour mhc,

Bon j’ai essayé de régler quelques problèmes ce qu’il me reste à savoir c’est ou mettre mon fichier “persistence.xml” dans Bonita ? je pense c’est ce qui manque à mes dépendances.
J’ai besoin d’aide svp.

Avez-vous utilisé la persistance ? comment avez-vous accédé à votre base externe ?

Bonjour,

Les libs que j’ai importé c’est celui de mon application externe ou il y a "mon bean et ma classe main " et mysql.jar
par contre j’ai pas ajouté les libs mysql au niveau des libs du Tomcat

Même en ajoutant les libs mysql au niveau des libs du Tomcat ça marche pas :frowning:

Bon j’ai essayé de régler quelques problèmes ce qu’il me reste à savoir c’est ou mettre mon fichier “persistence.xml” dans Bonita ? je pense c’est ce qui manque à mes dépendances

Pouvez vous essayer en exportant le connecteur (menu connecteur/exporter), puis éditer le fichier zip et ajouter le fichier persistence.xml dans le dossier META-INF du fichier jar de votre connecteur ?

ensuite importer le connecteur de nouveau dans le studio.

Une alternative serait d’importer le connecteur format zip sous netbeans dans un nouveau projet, d’ajouter le fichier persistence.xml dans le dossier META-INF puis de générer un nouveau jar, à importer de nouveau dans le studio.

J’ai essayé ce que vous m’avez dit mais quand je l’importe j’ai une erreur “Import failed, descriptor file not found”