1. #1
    Membre habitué
    Inscrit en
    mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : mars 2008
    Messages : 254
    Points : 188
    Points
    188

    Par défaut

    salut à tous,

    j'ai tenté de supprimer une liste des objets de la bd, sachant que je utilise jpa/toplink, en effet la suppression d'un seul objet passe sans probleme, voila le code des deux focntions,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public void supprimerIn(Ingenieur ing) {
            try {
                tx.begin();
                em.remove(em.find(Ingenieur.class, ing.getId()));
                tx.commit();
            } catch (Exception e) {
     
            }
        }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public Boolean SupprimerIng(ArrayList<Ingenieur> Ings) {
            try {
     
                for (int i=0;i<Ings.size();i++) {
                    tx.begin();
                    Ingenieur in = em.find(Ingenieur.class,Ings.get(i).getId());
                    em.remove(in);
                    tx.commit();
                }
                //em.remove(em.find(Ingenieur.class, Ings.get(0).getId()));
     
                 return true;
            } catch (Exception e) {
                return false;
            }
        }
    Merci de vos remarques

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    "IOP00810257: (MARSHAL) Could not load class com.Ingenieur"
    org.omg.CORBA.MARSHAL:   vmcid: SUN  minor code: 257 completed: Maybe
            at com.sun.corba.ee.impl.logging.ORBUtilSystemException.couldNotFindClass(ORBUtilSystemException.java:9684)
            at com.sun.corba.ee.impl.logging.ORBUtilSystemException.couldNotFindClass(ORBUtilSystemException.java:9699)
            at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1042)
            at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:896)
            at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:890)
            at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:880)
            at com.sun.corba.ee.impl.encoding.CDRInputStream.read_abstract_interface(CDRInputStream.java:511)
            at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:386)
            at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:547)
            at java.io.ObjectInputStream.readObject(ObjectInputStream.java:345)
            at java.util.ArrayList.readObject(ArrayList.java:593)
            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:597)
            at com.sun.corba.ee.impl.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1679)
            at com.sun.corba.ee.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1202)
            at com.sun.corba.ee.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:422)
            at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:362)
            at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:328)
            at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:966)
            at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1052)
            at com.sun.corba.ee.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:475)
            at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl$14.read(DynamicMethodMarshallerImpl.java:368)
            at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl.readArguments(DynamicMethodMarshallerImpl.java:435)
            at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:152)
            at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
            at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
            at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
            at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
            at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
            at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
            at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
            at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
            at ejbMetier.__EjbMetierRemote_Remote_DynamicStub.SupprimerIng(ejbMetier/__EjbMetierRemote_Remote_DynamicStub.java)
            at ejbMetier._EjbMetierRemote_Wrapper.SupprimerIng(ejbMetier/_EjbMetierRemote_Wrapper.java)
            at xml.Page1.button1_action(Page1.java:336)
            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:597)
            at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
            at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
            at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
            at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
            at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
            at javax.faces.component.UICommand.broadcast(UICommand.java:383)
            at com.sun.webui.jsf.component.WebuiCommand.broadcast(WebuiCommand.java:160)
            at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
            at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
            at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
            at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
            at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
            at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
            at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:267)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
            at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
            at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
            at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
            at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
            at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
            at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
            at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)

  2. #2
    Membre expert
    Homme Profil pro
    Inscrit en
    septembre 2006
    Messages
    2 534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : septembre 2006
    Messages : 2 534
    Points : 3 517
    Points
    3 517

    Par défaut

    Citation Envoyé par Sun03 Voir le message
    salut à tous,

    j'ai tenté de supprimer une liste des objets de la bd, sachant que je utilise jpa/toplink, en effet la suppression d'un seul objet passe sans probleme, voila le code des deux focntions,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public void supprimerIn(Ingenieur ing) {
            try {
                tx.begin();
                em.remove(em.find(Ingenieur.class, ing.getId()));
                tx.commit();
            } catch (Exception e) {
     
            }
        }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public Boolean SupprimerIng(ArrayList<Ingenieur> Ings) {
            try {
     
                for (int i=0;i<Ings.size();i++) {
                    tx.begin();
                    Ingenieur in = em.find(Ingenieur.class,Ings.get(i).getId());
                    em.remove(in);
                    tx.commit();
                }
                //em.remove(em.find(Ingenieur.class, Ings.get(0).getId()));
     
                 return true;
            } catch (Exception e) {
                return false;
            }
        }
    Merci de vos remarques
    Une remarque :

    si la liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ArrayList<Ingenieur> Ings
    provient d'une entity en tant qu'expression d'une relation @OneToMany, cela signifie qu'en fait vous manipulez un proxy et donc la methode provoquera une re-chargement de la liste à chaque itération …
    en effet la transaction est à l'intérieur de la boucle…
    je commencerais donc par mettre le begin/commit autour de la boucle pour voir si cela change quelque chose…

    (vous pouvez par ailleurs détecter si vous avez un proxy en loggant la valeur de .size() à l'intérieur de la boucle… ou en loggant la .class du paramètre… )

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 156
    Points : 187
    Points
    187

    Par défaut

    T'es sur que ta classe com.Ingénieur est bien référencer dans ton classpath coté client et dans ton serveur d'appli coté serveur ?

  4. #4
    Membre habitué
    Inscrit en
    mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : mars 2008
    Messages : 254
    Points : 188
    Points
    188

    Par défaut

    c'est vrai la classe n'été pas compilé , pourquoi, je sais pas, merci

    la classe est compilé mais tjs meme erreur

    meme j'ai changé la boucle , meme probleme,

    j'ai fait,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ArrayList<ingenieur> ings ....;
    for(Ingenieur ing:ings){
     
          .......    
     
    }
    Tjrs meme message d'erreur

    à noter que la suppression avec un seul objet ça marche, mais en cas de liste ça marche passsss


    Merci d'avance

  5. #5
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2004
    Messages : 4 666
    Points : 7 662
    Points
    7 662

    Par défaut

    Bonjour,
    Quelle instruction dans ton code lance l'exeption ? La stacktrace que tu nous montre n'est pas complet à priori, et il ne pointe pas vers ton code ...

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    novembre 2006
    Messages
    6 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 6 763
    Points : 8 896
    Points
    8 896
    Billets dans le blog
    1

    Par défaut

    Une remarque en passant :

    Pourquoi faire un em.find puisque l'objet que tu passes en paramètre représente déjà l'entity à supprimer, tu pourrais directement faire em.remove(ings.get(i)), non ?

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2004
    Messages : 4 666
    Points : 7 662
    Points
    7 662

    Par défaut

    Il craint la vilaine "Detached Entity" je crois

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    novembre 2006
    Messages
    6 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 6 763
    Points : 8 896
    Points
    8 896
    Billets dans le blog
    1

    Par défaut

    Dans ce cas, merge serait plus adapté il me semble...
    Mais bon, ça fonctionne aussi avec find, encore que si l'enregistrement n'existe plus, find renvoie null, et là, je n'ai pas testé.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Membre habitué
    Inscrit en
    mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : mars 2008
    Messages : 254
    Points : 188
    Points
    188

    Par défaut

    pour supprimer un objet il doit être associer au context, tu voi donc, je dois faire merge, ou find, pour que je puisse associer cet objet au context, et la meilleur solution "merge"

    j'ai ajouter les jars : toplink-essentials et tplink...-agent;


    et tjs meme erreur

  10. #10
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2004
    Messages : 4 666
    Points : 7 662
    Points
    7 662

    Par défaut

    Citation Envoyé par djo.mos Voir le message
    Bonjour,
    Quelle instruction dans ton code lance l'exeption ? La stacktrace que tu nous montre n'est pas complet à priori, et il ne pointe pas vers ton code ...

  11. #11
    Membre habitué
    Inscrit en
    mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : mars 2008
    Messages : 254
    Points : 188
    Points
    188

    Par défaut

    "IOP00810257: (MARSHAL) Could not load class com.Ingenieur"
    org.omg.CORBA.MARSHAL: vmcid: SUN minor code: 257 completed: Maybe
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.couldNotFindClass(ORBUtilSystemException.java:9684)
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.couldNotFindClass(ORBUtilSystemException.java:9699)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1042)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:896)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:890)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:880)
    at com.sun.corba.ee.impl.encoding.CDRInputStream.read_abstract_interface(CDRInputStream.java:511)
    at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:386)
    at com.sun.corba.ee.impl.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:547)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:345)
    at java.util.ArrayList.readObject(ArrayList.java:593)
    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:597)
    at com.sun.corba.ee.impl.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1679)
    at com.sun.corba.ee.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1202)
    at com.sun.corba.ee.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:422)
    at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:362)
    at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:328)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:966)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1052)
    at com.sun.corba.ee.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:475)
    at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl$14.read(DynamicMethodMarshallerImpl.java:368)
    at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl.readArguments(DynamicMethodMarshallerImpl.java:435)
    at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:152)
    at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
    at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
    at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
    at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183)
    at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
    at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
    at ejbMetier.__EjbMetierRemote_Remote_DynamicStub.SupprimerIng(ejbMetier/__EjbMetierRemote_Remote_DynamicStub.java)
    at ejbMetier._EjbMetierRemote_Wrapper.SupprimerIng(ejbMetier/_EjbMetierRemote_Wrapper.java)
    at xml.Page1.button1_action(Page1.java:337)


    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:597)
    at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
    at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
    at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
    at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
    at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
    at javax.faces.component.UICommand.broadcast(UICommand.java:383)
    at com.sun.webui.jsf.component.WebuiCommand.broadcast(WebuiCommand.java:160)
    at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:447)
    at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:752)
    at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
    at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:267)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
    at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
    at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
    at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
    javax.ejb.EJBException: nested exception is: java.rmi.MarshalException: CORBA MARSHAL 1398079745 Maybe; nested exception is:
    org.omg.CORBA.MARSHAL: ----------BEGIN server-side stack trace----------

  12. #12
    Membre habitué
    Inscrit en
    mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : mars 2008
    Messages : 254
    Points : 188
    Points
    188

    Par défaut

    je viens de supprimer le code em.remove..... , j'ai laissé le corps de la fonction vide,


    voila le code du client:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
     
     public String button1_action() {
            //int selectedRows = getTableRowGroup1().getSelectedRowsCount();        
            //int rowId = Integer.parseInt(selectedRowKeys[i].getRowId()) + 1;
            //Ingenieur ing = getSessionBean1().getIngs()[Integer.parseInt(selectedRowKeys[i].getRowId())];
            //label1.setText(" Nom "+ing.getNom());
            //System.out.println("Row " + rowId + " is selected      ."+ getSessionBean1().getTablePhaseListener().getSelected(selectedRowKeys[i]).toString());
            // getSessionBean1().getEjbMetierBean().SupprimerIng(Ings);
            //getSessionBean1().getEjbMetierBean().supprimerIng(ingASupp.get(0));
     
            RowKey[] selectedRowKeys = getTableRowGroup1().getSelectedRowKeys();
            java.util.ArrayList<Ingenieur> ingASupp = new ArrayList<Ingenieur>();
            int j=0;
            for (int i = 0; i < selectedRowKeys.length; i++) {
                try {
                    ingASupp.add(getSessionBean1().getIngs()[i]);
     
                    if (i == selectedRowKeys.length - 1) {                   
                        getSessionBean1().getEjbMetierBean().SupprimerIng(ingASupp).equals(true) ;                    
                            // on doit faire la màj de la table
                            getSessionBean1().setIngs(getSessionBean1().getEjbMetierBean().getAllIng());
                            label1.setText("les objets sélectionnés sont supprimer");                   
                    }
                } catch (NamingException ex) {
     
                   ex.printStackTrace();
                }
            }
            return null;
     
        }
    je utilise jpa/glassfich ejb3,jsf

  13. #13
    Membre habitué
    Inscrit en
    mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : mars 2008
    Messages : 254
    Points : 188
    Points
    188

    Par défaut Solution

    Salut à tous je viens de changer le contenu de la liste, j'ai remplacé les objets des ingénieurs par la clé de chaque un, mais si la clé est composée on aura autre cas ,


    Merci, en verra ce problème après

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP 5.2] Supprimer doublons d'une liste d'objets
    Par benthebest dans le forum Syntaxe
    Réponses: 4
    Dernier message: 02/07/2009, 00h31
  2. Supprimer un objet d'une liste d'objet anonyme
    Par blackshadow153 dans le forum VB.NET
    Réponses: 12
    Dernier message: 26/11/2008, 14h45
  3. Trier une liste d'objets d'après un champ des objets
    Par gids01 dans le forum java.util
    Réponses: 8
    Dernier message: 02/07/2007, 09h52
  4. Réponses: 7
    Dernier message: 30/05/2007, 16h17
  5. Réponses: 1
    Dernier message: 13/09/2006, 11h50

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