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

Java EE Discussion :

Problème de passage des paramétrés aux entity Beans


Sujet :

Java EE

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 25
    Points : 18
    Points
    18
    Par défaut Problème de passage des paramétrés aux entity Beans
    Bonjour

    je suis en train de développer une application j2ee avec un client JAVASE.

    je travail avec Glassfish3 ,EJB3.1,JPA2.0(EclipseLink 2.0) et IDE NetBeans7.0

    voila un exemple simplifier de mon projet.

    1)Code EJB+Entity bean.

    package entity;

    /*
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    */
    import java.io.Serializable;
    import javax.persistence.Entity;
    import javax.persistence.Id;
    import javax.persistence.Table;


    /**
    *
    * @author Herguem
    */
    @Entity
    @Table(name = "tbRanch")
    public class Ranch implements Serializable {

    @Id
    private String name;
    private String premisesId;
    private String comment;

    public Ranch() {
    }

    public String getComment() {
    return comment;
    }

    public void setComment(String comment) {
    this.comment = comment;
    }

    public String getName() {
    return name;
    }

    public void setName(String name) {
    this.name = name;
    }

    public String getPremisesId() {
    return premisesId;
    }

    public void setPremisesId(String premisesId) {
    this.premisesId = premisesId;
    }
    }
    package ejb;

    import entity.Ranch;
    import javax.ejb.EJBException;
    import javax.ejb.Stateless;
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;

    /**
    *
    * @author Herguem
    */
    @Stateless
    public class HelloSessionBean implements HelloSessionBeanRemote {

    @PersistenceContext(unitName = "EJBModule1PU")
    private EntityManager em;

    @Override
    public String businessMethod() {
    return "Salut pour tt Md";
    }

    @Override
    public String call(String parameter, String parameter1) {
    System.out.println(parameter);
    System.out.println(parameter1);
    return parameter + parameter1;
    }

    @Override
    public Ranch create(Ranch r) {


    if (r == null) {
    }

    System.out.println("vvvvvvvvvvvvvvvvvvvvvvvvv" + r.getName());
    System.out.println("kkkkkkkkkkkkkkkkkkkkkkk" + r.getComment());
    // em.persist(r);

    return r;
    }
    }
    bien sur avec une interface Remote.

    La 2eme Partie est le client JAVASE(Simple application de test)

    package helloclient;

    import ejb.HelloSessionBeanRemote;
    import entity.Ranch;
    import java.util.Properties;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.swing.JOptionPane;
    import org.jdesktop.swingx.JXErrorPane;
    import org.jdesktop.swingx.error.ErrorInfo;
    import org.jdesktop.swingx.error.ErrorLevel;

    /**
    *
    * @author Herguem
    */
    public class Client {

    /**
    * @param args the command line arguments
    */
    public static Context initalContext;

    public static void main(String[] args) {
    try {


    Properties props = new Properties();

    props.setProperty("java.naming.factory.initial",
    "com.sun.enterprise.naming.SerialInitContextFactory");

    props.setProperty("java.naming.factory.url.pkgs",
    "com.sun.enterprise.naming");

    props.setProperty("java.naming.factory.state",
    "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");


    // optional. Defaults to localhost. Only needed if web server is running
    // on a different host than the appserver
    props.setProperty("org.omg.CORBA.ORBInitialHost", "192.168.1.20");

    // optional. Defaults to 3700. Only needed if target orb port is not 3700.
    props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");

    initalContext = new InitialContext(props);

    HelloSessionBeanRemote cattle = (HelloSessionBeanRemote) initalContext.lookup("java:global/EJBModule1/HelloSessionBean!ejb.HelloSessionBeanRemote");

    System.out.println(cattle.call("Bonjour", "Mr"));
    Ranch c = new Ranch();
    c.setName("2553636");
    c.setComment("ooooooooooooooo");
    cattle.create(c);
    } catch (NamingException ex) {
    JXErrorPane.showDialog(null, new ErrorInfo("Error", ex.getMessage(), null, null, ex, ErrorLevel.SEVERE, null));
    }

    }
    }
    j'ai ajouté le 2 jar Javaee.jar et appserv-rt.jar

    le problème et le suivant:
    lorsque je execute mon client avec cette parametres: props.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");

    voila la resultat:
    INFO: Glassfish-specific (Non-portable) JNDI names for EJB HelloSessionBean : [ejb.HelloSessionBeanRemote#ejb.HelloSessionBeanRemote, ejb.HelloSessionBeanRemote]
    INFO: EJBModule1 a été déployé en 204 ms.
    INFO: Bonjour
    INFO: Mr
    INFO: vvvvvvvvvvvvvvvvvvvvvvvvv2553636
    INFO: kkkkkkkkkkkkkkkkkkkkkkkooooooooooooooo
    pas de problème mais lorsque de utilise ce paramétré j'ai un problème de passage des paramétrés aux entity.
    INFO: Portable JNDI names for EJB HelloSessionBean : [java:global/EJBModule1/HelloSessionBean, java:global/EJBModule1/HelloSessionBean!ejb.HelloSessionBeanRemote]
    INFO: Glassfish-specific (Non-portable) JNDI names for EJB HelloSessionBean : [ejb.HelloSessionBeanRemote#ejb.HelloSessionBeanRemote, ejb.HelloSessionBeanRemote]
    INFO: EJBModule1 a été déployé en 204 ms.
    INFO: Bonjour
    INFO: Mr
    INFO: vvvvvvvvvvvvvvvvvvvvvvvvvnull
    INFO: kkkkkkkkkkkkkkkkkkkkkkknull
    les paramétrés sont null au lieu de 2553636 et ooooooooo.

    merci de votre aide.

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2011
    Messages : 250
    Points : 403
    Points
    403
    Par défaut
    L'entité implémente Serializable mais ne définit pas de serialVersionUID, est-ce une coquille ?

Discussions similaires

  1. Problème de passage de paramètres aux Entity Beans
    Par herguem dans le forum Glassfish et Payara
    Réponses: 0
    Dernier message: 27/02/2012, 17h46
  2. [TPW] Problème de passage des paramètres
    Par Taieb dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 25/03/2010, 23h45
  3. problème avec passage des paramètres
    Par soumti84 dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 03/08/2009, 12h03
  4. Problème de passage de paramètre par bean
    Par fab76000 dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 08/01/2009, 20h44
  5. Réponses: 2
    Dernier message: 23/05/2008, 15h06

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