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 :

integration dans JBoss - ressource adapter - demarrer une soket listener encapsuler dans un WAR


Sujet :

Java EE

  1. #1
    Membre du Club
    Homme Profil pro
    T24 Admin
    Inscrit en
    Avril 2007
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : T24 Admin
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2007
    Messages : 80
    Points : 65
    Points
    65
    Par défaut integration dans JBoss - ressource adapter - demarrer une soket listener encapsuler dans un WAR
    Bonjour,
    J'ai du mal à exprimer exactement ce que je voudrai faire, mais je compte sur votre imagination pour m'aider .

    Je voudrai démarrer un serveur de socket listener (qui écoute sur plusieurs ports). Mais aux lieux de le démarrer séparément (java –jar socketServer).

    Je voudrai l’encapsuler dans un fichier .war et le déployer sur un serveur d’application (ex :JBoss).

    Ma question est la suivante, comment faire pour que mon serveur de socket soit actif (commence à écoute sur les ports en questions) juste après le déploiement du .war

    Dois-je avoir un main ? Il y a de la configuration à faire ? Une API à utiliser ... Spring ?

    Merci pour votre aide, désoles si la question est très débile.

    Je reste ouvert à toutes proposions qui va dans ce sens.

    Grizli

  2. #2
    Membre actif
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 178
    Points : 274
    Points
    274
    Par défaut
    Créer son propre socket listener est habituellement une 'mauvaise' idée donc je t'engage à réfléchir à ce premier point. en plus, tu as déjà un socket-listener : il s'appelle ton serveur pourquoi ne pas l'utiliser ?
    Encapsuler un process qui écoute dans un serveur est une seconde mauvaise idée car cela signifie que tu as un process 'externe' dans un conteneur qui est là pour contrôler les process : j'en veux pour preuve que tu essayes de t'intégrer au cycle de vie d'une application web.
    Pour terminer, le JDK te propose un ServerSocket, après tout dépend de ce que tu veux faire. Il existe des frameworks pour aller plus loin dans la création de process serveurs (notamment si tu veux de l'asynchrone) : Apache Mina, JBoss xnio (je crois), Eclipse vert.x, Netty, ...

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Sans entrer dans le débat "faut le faire ou pas" ou "c'est bien de le faire ou pas", le plus simple "techniquement" est de passer par un ServletContextListener.
    Dans le fichier web.xml, il faudra le référencer comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    <listener>
      <listener-class>com.test.MonContextListener</listener-class>
     </listener>
    ...
    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 class MonContextListener implements ServletContextListener
    {
     
        @Override
        public void contextDestroyed(ServletContextEvent event)
        {
            System.out.println("Context détruit");
        }
     
        @Override
        public void contextInitialized(ServletContextEvent event)
        {
            System.out.println("Context créé");
        }
     
    }
    dans la méthode contextInitialized(...), rien ne t'empêche d'exécuter une commande via Runtime.getRuntime().exec(...)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/06/2009, 09h55
  2. Réponses: 6
    Dernier message: 19/10/2007, 14h02
  3. Demarrer une suite de command dans cmd.exe depuis un Form
    Par Freektrax dans le forum C++Builder
    Réponses: 4
    Dernier message: 30/12/2006, 12h03
  4. Création de listener différent dans une boucle.
    Par Djobird dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 09/06/2006, 18h46
  5. demarrer une transaction dans une procedure stockee
    Par richard038 dans le forum SQL
    Réponses: 1
    Dernier message: 04/11/2005, 13h09

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