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

JPA Java Discussion :

Question bête : EJB sans Serveur d'application


Sujet :

JPA Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2005
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 95
    Par défaut Question bête : EJB sans Serveur d'application
    Peut on faire des EJB pour une application swing qui communique avec une base sans serveur d'application jboss & co? Question bête j'avais prévenu.

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    ça m'étonnerait... EJB nécessite un conteneur EJB sur un serveur

    Par contre, avec Hibernate, on peut...

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

  3. #3
    Membre éprouvé
    Avatar de Valère
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 334
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2005
    Messages : 1 334
    Par défaut
    Avec Java EE 5 et JPA (Java Persistence API), on peut.

    Un exemple (via NetBeans, mais je pense facilement transposable dans n'importe quel éditeur vu qu'il suffit de rajouter quelques jars dans le classpath): http://www.netbeans.org/kb/55/persistence-j2se.html

    Valère

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 93
    Par défaut
    je suis surpris j'ai tenté de faire touner hibernate avec application server 9. Même en rajoutant les jars dans le classpath sous netbeans. Cela n'as pas fonctionné.

  5. #5
    Membre éprouvé
    Avatar de Valère
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 334
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2005
    Messages : 1 334
    Par défaut
    J'ai juste commencé à jouer avec cette semaine, et pour moi ça a marché du premier coup (j'ai utilisé toplink).

    Les librairies à rajouter sont javaee.jar de glassfish, + toplink-essentials.jar et toplink-essentials-agent.jar.

    D'ailleur je pense que je vais faire un petit billet dessus ce WE

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 25
    Par défaut Avec JPA c'est possible
    Avec JPA (la partie Persistence des EJB 3.0) il est tout a fait possible d'utiliser cette API en dehors d'un conteneur d'EJB.
    J'ai testé avec l'implémentation Hibernate, cela marche c'est juste un peu galère pour trouver ce qu'il y a faire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // Sample est le nom de la persistence unit définit dans persistence.xml
    emf = Persistence.createEntityManagerFactory("sample");
    em = emf.createEntityManager();
    EntityTransaction tx = em.getTransaction();
    tx.begin();
    Adresse monAdresse=new Adresse();
    monAdresse.setPays("FRANCE");
    em.persist(monAdresse);
    tx.commit();
    em.close();
    emf.close();
    Normalement, on ne crée qu'une seule fois l'EntityManagerFactory (cela est couteux). Mais on peut utiliser plusieurs EntityManager (attention l'EntityManger n'est pas thread safe).

    Mon persistence.xml

    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
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
    version="1.0">
    <persistence-unit name="sample" transaction-type="RESOURCE_LOCAL">
    <properties>
    <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
    <property name="hibernate.hbm2ddl.auto" value="create"/>
    <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
    <property name="hibernate.connection.username" value="sa"/>
    <property name="hibernate.connection.password" value=""/>
    <property name="hibernate.connection.url" value="jdbc:hsqldb:hsql://localhost/jpatest"/>
    <property name="hibernate.show_sql" value="true" />
    </properties>
    </persistence-unit>
    </persistence>
    Le point important est le transaction type qui doit être de type local.

    Pour plus de détail : http://jl2tho.blogspot.com/2007/08/t...jb-entite.html

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/03/2013, 22h47
  2. Servlets sans serveur d'applications ou similaire ?
    Par HerQuLe dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 09/12/2009, 14h47
  3. [JMS] JMS autonome sans serveur d'application Java EE ?
    Par herguem dans le forum Java EE
    Réponses: 1
    Dernier message: 27/07/2009, 21h57
  4. Réponses: 20
    Dernier message: 28/06/2008, 14h23
  5. Application en réseau local, sans serveur.. possible en VB?
    Par Chekov dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 22/04/2008, 21h13

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