IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langages de programmation Discussion :

erreur implémentation et EJB


Sujet :

Langages de programmation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Par défaut erreur implémentation et EJB
    bonjour,
    je suis débutante au développement ejb, je commence par la création d'une entité bean, une session qui utilise les différents champs de cette entité, puis je fait un appel aux différentes méthodes de la session bean via une classe client et il fonctionne très bien
    mais lorsque j'ai ajouté une autre entité bean ainsi que une session qui exploite les paramètres de cette entité, et j'ai appelé via le client. lors de l’exécution j'ai une erreur. pouvez vous m'aider à résoudre ce problème.
    entité personne:
    public class EntitePersonne implements Serializable
    {
    private static final long serialVersionUID = 1L;
    @Id
    private String id;
    private String Nom;
    private int PositionX;
    private int PositionY;
    private boolean blesse;

    public EntitePersonne() {
    super();
    }

    public EntitePersonne(String id) {
    this.id = id;
    }

    public EntitePersonne(String id, String Nom, int PositionX, int PositionY)
    {
    this.id = id;
    this.Nom = Nom;
    this.PositionX= PositionX;
    this.PositionY= PositionY;
    this.blesse= false;
    }
    public String getNom() {
    return Nom;
    }

    public void setNom(String Nom) {
    this.Nom = Nom;
    }

    public int getPositionX() {
    return PositionX;
    }

    public void setPositionX(int PositionX) {
    this.PositionX = PositionX;
    }
    public int getPositionY() {
    return PositionY;
    }

    public void setPositionY(int PositionY) {
    this.PositionY = PositionY;
    }
    public String getBlesse() {
    return Nom;
    }

    public void setBlesse() {
    this.blesse= false;
    }
    public String getId() {
    return id;
    }

    public String toString() {
    return "Capteur n°" + id + " - " + Nom + " - cooredonne PositionX : " + PositionX+" PositionY: "+PositionY;
    }

    }





    la session personneBean
    public class PersonneBean implements Personne
    {
    @PersistenceContext(name="for")
    private EntityManager em;

    @Override
    public void ajouter(EntitePersonne P)
    {

    em.persist(P);
    em.flush();
    }
    public void deplacer(String[][] foret, EntitePersonne P)
    {
    Double dx=Math.random();
    Double dy=Math.random();
    Double dMax=Math.random();

    int dxx= dx.intValue()*2;
    int dyy= dy.intValue()*2;
    int Max= dMax.intValue()*foret.length;
    int X;
    int Y;


    for(int i=0;i<Max;i++)
    {
    X=P.getPositionX()+dxx;
    Y=P.getPositionY()+dyy;

    P.setPositionX(X);
    P.setPositionY(Y);

    }


    }


    @Override
    public List<EntitePersonne> listerToutesLesPersonnes()
    {
    return em.createQuery("SELECT p FROM EntitePersonne p ").getResultList();
    }

    }





    le client
    public class GestionForet {
    public static void main(String[] args) {
    Vector infoPersonne= new Vector();

    try {
    Properties env = new Properties();
    env.setProperty( "java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory" );
    env.setProperty( "java.naming.provider.url", "127.0.0.1:1099" );
    env.setProperty( "java.naming.factory.url.pkgs", "org.jboss.naming" );

    Context context = new InitialContext(env);
    Personne pers=(Personne)context.lookup("PersonneBean/remote");

    EntitePersonne P1= new EntitePersonne("0111","Ali",0,0);
    pers.ajouter(P1);
    EntitePersonne P2= new EntitePersonne("0221","Med",0,0);
    pers.ajouter(P2);
    EntitePersonne P3= new EntitePersonne("0331","Salah",0,0);
    pers.ajouter(P3);
    EntitePersonne P4= new EntitePersonne("0441","Hsan",0,0);
    pers.ajouter(P4);
    EntitePersonne P5= new EntitePersonne("055","Mido",0,0);
    pers.ajouter(P5);

    List<EntitePersonne> pp = pers.listerToutesLesPersonnes();

    for (Iterator<EntitePersonne> iterPers = pp.iterator();iterPers.hasNext()
    {
    EntitePersonne eachPersonne = (EntitePersonne) iterPers.next();
    System.out.println(eachPersonne);}
    }

    catch (javax.naming.NamingException ne)
    {
    ne.printStackTrace();
    }

    }

    }
    je pense que l'erreur s'est déclanchée lors de l'ajout des personnes!!!

  2. #2
    Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Par défaut
    j'ai oublier de vous voir l'erreur:
    Exception in thread "main" java.lang.RuntimeException: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
    at org.jboss.aspects.tx.TxPolicy.handleEndTransactionException(TxPolicy.java:198)
    at org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:180)
    at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87)
    at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
    at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateful.StatefulContainer.dynamicInvoke(StatefulContainer.java:333)
    at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
    at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
    at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
    at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
    at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:369)
    at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)
    at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:163)
    at org.jboss.remoting.Client.invoke(Client.java:1550)
    at org.jboss.remoting.Client.invoke(Client.java:530)
    at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:61)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:72)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateful.StatefulRemoteProxy.invoke(StatefulRemoteProxy.java:135)
    at $Proxy3.ajouter(Unknown Source)
    at foretClient.GestionForet.main(GestionForet.java:41)
    at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:74)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:61)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:72)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateful.StatefulRemoteProxy.invoke(StatefulRemoteProxy.java:135)
    at $Proxy3.ajouter(Unknown Source)
    at foretClient.GestionForet.main(GestionForet.java:41)
    Caused by: javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state
    at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1267)
    at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
    at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
    at org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:175)
    at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87)
    at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
    at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
    at org.jboss.ejb3.stateful.StatefulContainer.dynamicInvoke(StatefulContainer.java:333)
    at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
    at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
    at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
    at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
    at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:369)
    at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)
    Caused by: javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
    at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:629)
    at org.hibernate.ejb.AbstractEntityManagerImpl$1.beforeCompletion(AbstractEntityManagerImpl.java:524)
    at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:114)
    at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:249)
    at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:88)
    at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:177)
    at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1256)
    ... 24 more
    Caused by: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
    at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
    at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:253)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
    at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
    at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
    at org.hibernate.ejb.AbstractEntityManagerImpl$1.beforeCompletion(AbstractEntityManagerImpl.java:515)
    ... 29 more
    Caused by: java.sql.BatchUpdateException: failed batch
    at org.hsqldb.jdbc.jdbcStatement.executeBatch(Unknown Source)
    at org.hsqldb.jdbc.jdbcPreparedStatement.executeBatch(Unknown Source)
    at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeBatch(CachedPreparedStatement.java:478)
    at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:519)
    at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
    at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
    ... 36 more

Discussions similaires

  1. Réponses: 3
    Dernier message: 27/03/2013, 01h39
  2. Erreur de javax.ejb.EJBException
    Par geforce dans le forum JPA
    Réponses: 6
    Dernier message: 03/01/2013, 15h01
  3. Erreur de déploiement EJB
    Par bza88 dans le forum Glassfish et Payara
    Réponses: 2
    Dernier message: 05/12/2011, 10h18
  4. Erreur de Deploiement EJB
    Par bza88 dans le forum Java EE
    Réponses: 1
    Dernier message: 28/11/2011, 10h53
  5. Erreur implémentation d'arbre binaire de recherche.
    Par Pallas. dans le forum Débuter
    Réponses: 2
    Dernier message: 24/03/2011, 19h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo