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 :

Créer un projet partagé par d'autres projets IHM.


Sujet :

Java EE

  1. #1
    Membre habitué Avatar de ziad.shady
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 212
    Points : 139
    Points
    139
    Par défaut Créer un projet partagé par d'autres projets IHM.
    Bonjour à tous et à toutes,

    Je souhaiterai mettre en place une application accessible par différents type de client (SWING, GWT, ANDROID).
    J'ai envisagé de découper mon projet en trois projets (composant) : core, business et ihm.
    1. core : Contiendra toute la configuration hibernate et spring.
    2. business : contiendra les daos et les services métiers.
    3. ihm : qui sera un 1er projet en GWT, un 2ème projet en SWING et un 3ème projet en ANDROID.

    L'idée c'est de pouvoir partagé le projet core par les projets ihm (GWT, SWING, ANDROID).

    J'utilise maven pour structurer et déployer mon projet.

    Mes questions sont les suivantes :
    1. Est ce qu'il est possible d'avoir un projet core accessible par les projets GWT, SWING et ANDROID?
    2. Si c'est possible, quelle technologie permettant de partager le projet core par les trois autres projets?
    3. Dans eclipse, est ce qu'il n'y aura pas de problème de classpath ou de dépendances maven lorsque j'ajouterai dans le pom les dépendances représentés par les trois projets supra?

    N.B. le projet GWT peut être du JSF du STRUTS ou autre... je ne me suis pas encore décidé.

    Merci par avance pour toutes vos clarifications.

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2011
    Messages : 65
    Points : 88
    Points
    88
    Par défaut
    Bonjour à toi

    En effet c'est tout à fait possible grâce à maven. Il te suffit pour cela de déclarer une dépendance sur chacun de tes projets IHM vers le projet core, et le tour est joué! Donc tu as déjà la techno et la possibilité. Pour eclipse depuis qu'il intègre maven tu n'auras aucun souci, il n'y a même pas besoin de configurer quoi que ce soit, il suffit que tes projets soient bien des projets Maven, tu peux donc te jeter à corps perdu dans la configuration de ton projet

    Petite clarification de dernière minute, si jamais tu changes ta configuration maven sur un projet, pour être sûr que tout soit pris en compte (par exemple un changement de version), tu fais un clic droit sur tes projets, puis tu sélectionne Maven, update Project, et enfin ok. Ceci fera rafraichir à eclipse l'état Maven de tes projets. S'en suivra le rebuild de ceux-ci et tout sera à jour.

  3. #3
    Membre habitué Avatar de ziad.shady
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 212
    Points : 139
    Points
    139
    Par défaut
    Bonjour Rastafire,

    Merci de ta réponse.

    C'est vrai que conceptuellement parlant ça a l'air d'être simple et faisable, mais une fois qu'on a mis la main dans la patte on est pas à l'abri des surprises.
    J'ai ouvert ce topic dans lequel j'expose la problématique à laquelle j'ai été confronté.

    Moi je pense plutôt à rajouter une couche sous forme de service web et de fusionner le projet core et le projet business.
    Depuis le web service, il y aura une dépendance à la couche (core + business). Depuis la couche ihm (GWT, SWING, ANDROID) il y aura une dépendance à la couche web service.

    Mais je doute toujours de l'utilité de la couche web service.

    Merci à vous,

  4. #4
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Bonsoir,


    Citation Envoyé par ziad.shady
    Mais je doute toujours de l'utilité de la couche web service.
    Pour ton interrogation sur l'utilisation des web service, poses toi la question suivante : Comment vois tu ton déploiement ?
    1. Est-ce que tu souhaite que ta partie (Core + Business) soit déployée une seule fois sur un serveur puis que chaque application l'interroge via le mécanisme des web services ?
    2. Ou est-ce que c'est juste une problématique de découpage car lorsque tu déploieras, tu feras un WAR, un JAR, ... de tout le package (IHM + Core + Business) à chaque fois ?

    Si c'est la deuxième raison, le mécanisme des web service n'a pas beaucoup d'intérêt de mon point de vue pour ton application. A l'origine le but des web service est surtout de pouvoir faire parler des applications qui ne parlent pas la même langue ou qui ne sont pas au déployé au même endroit. Dans ton cas, tout le monde parle Java et il me semble, tout le monde est déployé au même endroit.

    Citation Envoyé par ziad.shady
    3. Dans eclipse, est ce qu'il n'y aura pas de problème de classpath ou de dépendances maven lorsque j'ajouterai dans le pom les dépendances représentés par les trois projets supra?
    Pour ton découpage via Maven, oui c'est tout à fait possible et même souhaitable de partir ainsi avec une séparation de couche de ce genre. Le partage de module Maven entre plusieurs projets est quelque chose de très fréquent.

    Citation Envoyé par ziad.shady
    N.B. le projet GWT peut être du JSF du STRUTS ou autre... je ne me suis pas encore décidé.
    Je n'ai pas compris ta remarque là. Le GWT ce n'est pas du JSF ou du Struts. Soit tu fais du GWT et tu utilises soit du GWT pur avec des librairies au dessus si tu le souhaites (SmartGWT, ...), soit tu utilises des framework qui le package (Vaadin). Mais si tu fais du JSF ou du Struts, ce n'est pas du tout la même chose.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2011
    Messages : 65
    Points : 88
    Points
    88
    Par défaut
    Tout à fait d'accord avec ce que dit robin, l'utilité des web services c'est surtout de pouvoir decoupler complètement des applis, par exemple quand une appli cliente de ton appli serveur n'est pas dans le même langage ou encore si celle-ci ne doit pas avoir de dépendance directe sur ton appli serveur pour une raison X ou Y (l'exemple le plus courant étant l'interaction d'une appli tierce avec ton appli).

  6. #6
    Membre habitué Avatar de ziad.shady
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 212
    Points : 139
    Points
    139
    Par défaut
    Bonsoir,

    Robin, Rastafire, je vous remercie de vos réponses et de vos clarifications.

    En effet, vous enlevez mes doutes. A priori les web services n'ont aucun intérêt dans mon cas.

    Pour ton découpage via Maven, oui c'est tout à fait possible et même souhaitable de partir ainsi avec une séparation de couche de ce genre. Le partage de module Maven entre plusieurs projets est quelque chose de très fréquent.
    Je suis tout à fait d'accord, sauf que j'ai trouvé des difficultés à récupérer de puis le projet ihm les bens (spring) déclaré dans le projet core.

    Je n'ai pas compris ta remarque là. Le GWT ce n'est pas du JSF ou du Struts. Soit tu fais du GWT et tu utilises soit du GWT pur avec des librairies au dessus si tu le souhaites (SmartGWT, ...), soit tu utilises des framework qui le package (Vaadin). Mais si tu fais du JSF ou du Struts, ce n'est pas du tout la même chose.
    Je voulais dire que le projet IHM sera un war (une application web) MAIS je ne sais pas encore quel framework de présentation graphique je vais utiliser est ce que cela va être du JSF ou du GWT ou du STRUTS ou autre...

    Je pense que j'ai eu satisfaction. Vous répondez parfaitement à ma problématique. Je considère que le sujet est clos.

    Il me reste la problématique de récupération de beans spring déclarés dans un autre projet, mais cela c'est une autre histoire.

    Merci beaucoup.

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

Discussions similaires

  1. Ressource dans un jar utiliser par un autre projet Java
    Par freelibre dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 29/09/2010, 20h16
  2. Execution d'un projet eclipse par un autre
    Par Schoubi dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 29/04/2009, 16h55
  3. Réponses: 1
    Dernier message: 09/01/2008, 17h42
  4. acces d'un objet créer par un autre projet?
    Par gaoul dans le forum C++
    Réponses: 13
    Dernier message: 31/03/2006, 22h11
  5. Réponses: 4
    Dernier message: 15/03/2006, 11h22

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