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

Maven Java Discussion :

Utilisation d'un projet War dans un autre projet War


Sujet :

Maven Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 39
    Points : 25
    Points
    25
    Par défaut Utilisation d'un projet War dans un autre projet War
    Bonjour tous le monde ,
    Je suis débutant en Maven.
    J'ai crée un projet War (un composant Jsf réutilisable )
    Mon but est de pouvoir utiliser ce composant dans un autre projet War .

    Est ce qu'il ya quelqu'un qui a rencontré ce genre de chose.

    d'avance

  2. #2
    Expert éminent
    Avatar de elitost
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2003
    Messages
    1 985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 985
    Points : 6 566
    Points
    6 566
    Par défaut
    Citation Envoyé par helios2092 Voir le message
    Bonjour tous le monde ,
    Je suis débutant en Maven.
    J'ai crée un projet War (un composant Jsf réutilisable )
    Mon but est de pouvoir utiliser ce composant dans un autre projet War .

    Est ce qu'il ya quelqu'un qui a rencontré ce genre de chose.

    d'avance
    Si je ne me trompe pas, il faudra alors créer une archive EAR qui contiendra tes différents WAR

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Petite question : pourquoi ton composant JSF est il dans un projet WAR ?
    Je te demande cela, dans la mesure où moi même j'ai développé pas mal de composants JSF, mais ils se trouvent dans un JAR, qui fournit les fichiers Java, mais aussi les fichiers XHTML (pour les compositions) ainsi que les fichiers XML adéquats (taglib, faces-config)...

    C'est juste histoire d'essayer de te simplifier les choses
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mai 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 39
    Points : 25
    Points
    25
    Par défaut
    merci pour les réponses trés rapides.


    Citation Envoyé par romaintaz Voir le message
    Petite question : pourquoi ton composant JSF est il dans un projet WAR ?
    Je te demande cela, dans la mesure où moi même j'ai développé pas mal de composants JSF, mais ils se trouvent dans un JAR, qui fournit les fichiers Java, mais aussi les fichiers XHTML (pour les compositions) ainsi que les fichiers XML adéquats (taglib, faces-config)...

    C'est juste histoire d'essayer de te simplifier les choses
    Bon franchement c'est mon premier composant jsf et c'est structuré comme un projet war,alors j'ai pas pensé lorsque j'ai voulu l'utiliser dans d'autres projets à le rendre un jar.
    si c'est possible romaintaz, tu peut me donner la structure de tes projet composants jsf.

    Merci beaucoup d'avance.

  5. #5
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Citation Envoyé par helios2092 Voir le message
    si c'est possible romaintaz, tu peut me donner la structure de tes projet composants jsf.
    Grosso modo:

    src/main/java -> sources Java
    src/main/resources/META-INF/my.taglib.xml
    src/main/resources/META-INF/faces-config.xml
    src/main/resources/META-INF/compositions/*.xhtml -> Mes composants de composition.

    C'est tout ce dont j'ai besoin...
    Après, mon WAR est dépendant de cette librairie.

    (j'utilise JSF 1.2 et Facelets, pour information)
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  6. #6
    Nouveau membre du Club
    Inscrit en
    Mai 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 39
    Points : 25
    Points
    25
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Grosso modo:

    src/main/java -> sources Java
    src/main/resources/META-INF/my.taglib.xml
    src/main/resources/META-INF/faces-config.xml
    src/main/resources/META-INF/compositions/*.xhtml -> Mes composants de composition.

    C'est tout ce dont j'ai besoin...
    Après, mon WAR est dépendant de cette librairie.

    (j'utilise JSF 1.2 et Facelets, pour information)
    J'utilise aussi JSF 1.2 et facelets+richfaces.
    J'ai essayé d'utiliser la structure que tu m'a donné.
    il y a quelques petits soucis lorsque j'essaye d'utiliser mon composant dans le projet War. je pense que mon web.xml est mal configuré.
    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
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_ID" version="2.4"
             xmlns="http://java.sun.com/xml/ns/j2ee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
        <display-name>kmji18njsf</display-name>
        <!-- Configuration Spring -->
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>
                classpath*:spring/kmji18n-application-context.xml
            </param-value>
        </context-param>
        <!--custom taglibs -->
        <context-param>
            <param-name>facelets.LIBRARIES</param-name>
            <param-value>classpath*:taglibs/i18n.taglib.xml
            </param-value>
        </context-param>
        <!-- Use Documents Saved as *.xhtml -->
        <context-param>
            <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
            <param-value>.xhtml</param-value>
        </context-param>
     
        <!-- Special Debug Output for Development -->
        <context-param>
            <param-name>facelets.DEVELOPMENT</param-name>
            <param-value>true</param-value>
        </context-param>
     
        <context-param>
            <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
            <param-value>server</param-value>
        </context-param>
        <context-param>
            <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
            <param-value>com.sun.facelets.FaceletViewHandler</param-value>
        </context-param>
     
        <!-- Optional JSF-RI Parameters to Help Debug -->
        <context-param>
            <param-name>com.sun.faces.validateXml</param-name>
            <param-value>true</param-value>
        </context-param>
        <context-param>
            <param-name>com.sun.faces.verifyObjects</param-name>
            <param-value>true</param-value>
        </context-param>
     
        <servlet>
            <servlet-name>Faces Servlet</servlet-name>
            <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
     
        <!-- Use /faces/* mapping to enable facestrace -->
        <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>/faces/*</url-pattern>
        </servlet-mapping>
     
        <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>*.jsf</url-pattern>
        </servlet-mapping>
     
        <context-param>
            <param-name>org.richfaces.SKIN</param-name>
            <param-value>blueSky</param-value>
        </context-param>
     
        <filter>
            <display-name>RichFaces Filter</display-name>
            <filter-name>richfaces</filter-name>
            <filter-class>org.ajax4jsf.Filter</filter-class>
            <init-param>
                <param-name>forceparser</param-name>
                <param-value>false</param-value>
            </init-param>
            <init-param>
                <param-name>enable-cache</param-name>
                <param-value>true</param-value>
            </init-param>
        </filter>
     
        <filter-mapping>
            <filter-name>richfaces</filter-name>
            <servlet-name>Faces Servlet</servlet-name>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
            <dispatcher>INCLUDE</dispatcher>
        </filter-mapping>
     
        <welcome-file-list>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    </web-app>
    pour le taglib je l'ai mis
    classpath*:taglibs/i18n.taglib.xml(pareil que fichier de context spring)
    mais il arrive pas à identifier le taglib et il me signale :
    java.io.FileNotFoundException: classpath*:taglibs/i18n.taglib.xml
    (par contre de la meme maniere il peut identifier le fichier contexte de spring)

    il y'a d'autres erreures comme :
    GRAVE: Received 'javax.el.PropertyNotFoundException' when invoking action listener '#{sessionBean.goEditMode}' for component 'j_id3'


    log de tomcat :
    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
     
    java.lang.RuntimeException: Cannot find FacesContext
    	at javax.faces.webapp.UIComponentClassicTagBase.getFacesContext(UIComponentClassicTagBase.java:1841)
    	at javax.faces.webapp.UIComponentClassicTagBase.setJspId(UIComponentClassicTagBase.java:1658)
    	at org.apache.jsp.jsp.list_jsp._jspx_meth_f_005fview_005f0(list_jsp.java:101)
    	at org.apache.jsp.jsp.list_jsp._jspService(list_jsp.java:77)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
    	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
    	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
    	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
    	at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:694)
    	at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:665)
    	at org.apache.jsp.index_jsp._jspService(index_jsp.java:62)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    	at java.lang.Thread.run(Thread.java:595)

  7. #7
    Nouveau membre du Club
    Inscrit en
    Mai 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 39
    Points : 25
    Points
    25
    Par défaut
    Bonjour,

    J'ai résolu mon problème tout en respectant la structure de projet que romaintaz m'a donné:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    src/main/java -> sources Java
    src/main/resources/META-INF/my.taglib.xml
    src/main/resources/META-INF/faces-config.xml
    src/main/resources/META-INF/compositions/*.xhtml -> Mes composants de composition.
    et ça marche trop bien.

    tous le monde et un grand merci à romaintaz

  8. #8
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Juste pour info, quand un problème est résolu, on clique sur le bouton Inutile de changer le titre du thread
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  9. #9
    Nouveau membre du Club
    Inscrit en
    Mai 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 39
    Points : 25
    Points
    25
    Par défaut
    ça marche

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 04/08/2013, 09h38
  2. Réponses: 3
    Dernier message: 16/04/2013, 16h42
  3. Réponses: 7
    Dernier message: 13/10/2009, 10h25
  4. Réponses: 2
    Dernier message: 13/09/2009, 18h51
  5. Wascana, utilisation de classe dans un autre projet
    Par BugBunny dans le forum Eclipse C & C++
    Réponses: 0
    Dernier message: 04/10/2008, 12h07

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