2016-04-13 6 views
4

[EDIT]
Le projet de travail se trouve à l'adresse:
https://github.com/joergi77/JSF2_Richfaces4_Seam_23

[/ EDIT]Déploiement d'un projet Seam (fichier de guerre) sur Tomcat 7 - Maven: deux composants avec le même nom

Quand je déploie mon projet sur un Tomcat 7.0.57 (a été un projet d'oreille JBoss, je change la structure en un fichier war), je ne reçois pas d'erreur, mais les informations suivantes me mettent en garde, que j'ai deux composants avec le même nom.

Je n'ai aucun problème pour compiler ce projet, cette erreur se produit seulement, quand je déploie mon dossier de guerre au Tomcat 7.0.57 j'ai eu le problème.

Ma configuration:

  • Seam 2.3.1.Final
  • JSF 2.1.2
  • RichFaces 3.3.3.Final (doit être compatible avec JSF 2)
  • Tomcat 7.0.57
  • WAR
  • NO EJB
  • Java 7

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.transaction.transaction

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires : org.jboss.seam.security.persistentPermissionResolver

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.co re.locale

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.web.userPrincipal

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.core.manager

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.core.locale

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.core.expressions

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.persistence.persistenceProvider

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.async.dispatcher

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires : org.jboss.seam.core.resourceLoader

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.web.isUserInRole

Initialisation [INFO] deux composants avec le même nom, une priorité plus élevée victoires: org.jboss.seam.web.parameters

à l'aide mvn dependency:tree je suis arrivé ce qui suit:

com.ourproject:war:1.0-SNAPSHOT 
+- de.dialogworks.base:company-connect:jar:1.1.1-SNAPSHOT:compile 
| +- de.dialogworks.base:company-utils:jar:1.1.1-SNAPSHOT:compile 
| | +- commons-io:commons-io:jar:1.3.1:compile (version managed from 1.3.2) 
| | \- net.sf.opencsv:opencsv:jar:2.3:compile 
| +- com.fasterxml.jackson.core:jackson-annotations:jar:2.3.0:compile 
| +- com.fasterxml.jackson.core:jackson-core:jar:2.3.0:compile 
| +- com.fasterxml.jackson.core:jackson-databind:jar:2.3.0:compile 
| +- com.fasterxml.jackson.datatype:jackson-datatype-hibernate4:jar:2.3.0:compile 
| +- com.sun.jersey:jersey-server:jar:1.14:compile 
| | \- com.sun.jersey:jersey-core:jar:1.14:compile 
| +- com.sun.jersey:jersey-client:jar:1.14:compile 
| +- com.sun.jersey:jersey-json:jar:1.14:compile 
| | +- org.codehaus.jettison:jettison:jar:1.1:compile (version managed from 1.1) 
| | +- org.codehaus.jackson:jackson-core-asl:jar:1.9.2:compile 
| | +- org.codehaus.jackson:jackson-mapper-asl:jar:1.9.2:compile 
| | +- org.codehaus.jackson:jackson-jaxrs:jar:1.9.2:compile 
| | \- org.codehaus.jackson:jackson-xc:jar:1.9.2:compile 
| \- com.sun.jersey.contribs:jersey-multipart:jar:1.14:compile 
|  \- org.jvnet:mimepull:jar:1.6:compile 
+- org.jboss.seam:jboss-seam-ui:jar:2.3.1.Final:compile 
| \- org.jboss.seam:jboss-seam:jar:2.3.1.Final:compile (version managed from 2.3.1.Final) 
|  +- org.testng:testng:jar:5.14.10:compile (version managed from 5.14.10) 
|  | +- org.beanshell:bsh:jar:2.0b4:compile (version managed from 2.0b4) 
|  | +- com.beust:jcommander:jar:1.12:compile 
|  | \- org.yaml:snakeyaml:jar:1.6:compile 
|  +- junit:junit:jar:4.8.2:compile (version managed from 4.8.2) 
|  \- org.jboss.el:jboss-el:jar:1.0_02.CR6:compile (version managed from 1.0_02.CR6) 
+- org.jboss.seam:jboss-seam-remoting:jar:2.3.1.Final:compile 
+- javax.persistence:persistence-api:jar:1.0:compile 
+- org.hibernate:hibernate-validator:jar:4.0.2.GA:compile 
| +- javax.xml.bind:jaxb-api:jar:2.1:compile 
| | \- javax.xml.stream:stax-api:jar:1.0-2:compile 
| \- com.sun.xml.bind:jaxb-impl:jar:2.1.3:compile 
+- org.hibernate:hibernate-core:jar:4.0.1.Final:compile 
| +- commons-collections:commons-collections:jar:3.2.1:compile 
| +- antlr:antlr:jar:2.7.6:compile (version managed from 2.7.7) 
| +- org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:jar:1.0.1.Final:compile (version managed from 1.0.0.Final) 
| +- dom4j:dom4j:jar:1.6.1-brew:compile (version managed from 1.6.1) 
| +- org.hibernate.javax.persistence:hibernate-jpa-2.0-api:jar:1.0.1.Final:compile (version managed from 1.0.1.Final) 
| +- org.jboss.logging:jboss-logging:jar:3.1.0.CR2:compile 
| +- org.javassist:javassist:jar:3.15.0-GA:compile (version managed from 3.15.0-GA) 
| \- org.hibernate.common:hibernate-commons-annotations:jar:4.0.1.Final:compile 
+- javax.validation:validation-api:jar:1.1.0.Final:compile 
+- org.hibernate:hibernate-entitymanager:jar:4.0.1.Final:compile 
+- javax.mail:mail:jar:1.4:compile 
| \- javax.activation:activation:jar:1.1.1:compile (version managed from 1.1) 
+- org.jboss.spec.javax.interceptor:jboss-interceptors-api_1.1_spec:jar:1.0.0.Final:compile 
+- com.pdflib:pdflib:jar:8.0:compile 
+- quartz:quartz:jar:1.5.2:compile 
| \- commons-logging:commons-logging:jar:1.0.4:compile 
+- org.jfree:jfreechart:jar:1.0.19:compile 
| \- org.jfree:jcommon:jar:1.0.23:compile 
+- org.apache.cxf:cxf-rt-frontend-jaxws:jar:2.6.0:compile 
| +- xml-resolver:xml-resolver:jar:1.2:compile 
| +- asm:asm:jar:3.3.1:compile 
| +- org.apache.cxf:cxf-api:jar:2.6.0:compile 
| | +- org.codehaus.woodstox:woodstox-core-asl:jar:4.1.2:runtime 
| | | \- org.codehaus.woodstox:stax2-api:jar:3.1.1:runtime 
| | +- org.apache.ws.xmlschema:xmlschema-core:jar:2.0.2:compile 
| | +- org.apache.geronimo.specs:geronimo-javamail_1.4_spec:jar:1.7.1:compile 
| | \- wsdl4j:wsdl4j:jar:1.6.2:compile 
| +- org.apache.cxf:cxf-rt-core:jar:2.6.0:compile 
| +- org.apache.cxf:cxf-rt-bindings-soap:jar:2.6.0:compile 
| | \- org.apache.cxf:cxf-rt-databinding-jaxb:jar:2.6.0:compile 
| +- org.apache.cxf:cxf-rt-bindings-xml:jar:2.6.0:compile 
| +- org.apache.cxf:cxf-rt-frontend-simple:jar:2.6.0:compile 
| \- org.apache.cxf:cxf-rt-ws-addr:jar:2.6.0:compile 
|  \- org.apache.cxf:cxf-rt-ws-policy:jar:2.6.0:compile 
|  \- org.apache.neethi:neethi:jar:3.0.2:compile 
+- org.apache.cxf:cxf-rt-transports-http:jar:2.6.0:compile 
+- org.apache.cxf:cxf-rt-transports-local:jar:2.6.0:compile 
+- commons-net:commons-net:jar:2.0:compile 
+- javax.el:el-api:jar:2.2:provided 
+- javax.servlet:javax.servlet-api:jar:3.0.1:provided 
+- com.jcraft:jsch:jar:0.1.48:compile 
+- org.apache.sanselan:sanselan:jar:0.97-incubator:compile 
+- javax.servlet.jsp:jsp-api:jar:2.1:provided 
+- com.sun.faces:jsf-api:jar:2.1.2:compile 
+- com.sun.faces:jsf-impl:jar:2.1.2:compile 
+- javax.servlet:jstl:jar:1.1.2:compile 
+- org.richfaces.ui:richfaces-ui:jar:3.3.3.Final:compile 
| +- org.richfaces.framework:richfaces-api:jar:3.3.3.Final:compile 
| +- commons-beanutils:commons-beanutils:jar:1.7.0:compile (version managed from 1.8.0) 
| \- commons-digester:commons-digester:jar:2.1:compile (version managed from 1.8.1) 
+- org.richfaces.framework:richfaces-impl-jsf2:jar:3.3.3.Final:compile 
+- commons-lang:commons-lang:jar:2.3:compile 
+- log4j:log4j:jar:1.2.14:compile 
+- org.slf4j:slf4j-log4j12:jar:1.5.8:compile 
+- org.slf4j:slf4j-api:jar:1.5.8:compile 
+- mysql:mysql-connector-java:jar:5.1.18:compile 
+- net.sourceforge.jexcelapi:jxl:jar:2.6.10:compile 
\- joda-time:joda-time:jar:2.0:compile 

Mes fichiers pom.xml, web.xml et autres sont situés dans ce stackoverflow post.

Je ne peux pas vraiment voir, où le double composant est caché.

Quand vous faites un mvn dependency:tree -Dincludes=org.jboss.seam i obtenu ce qui suit, ce qui ne semble être un problème pour moi:

+- org.jboss.seam:jboss-seam-ui:jar:2.3.1.Final:compile 
| \- org.jboss.seam:jboss-seam:jar:2.3.1.Final:compile (version managed from 2.3.1.Final) 
\- org.jboss.seam:jboss-seam-remoting:jar:2.3.1.Final:compile 

[edited] - ceci est mon components.xml

<?xml version="1.0" encoding="UTF-8"?> 
<components xmlns="http://jboss.org/schema/seam/components" 
      xmlns:core="http://jboss.org/schema/seam/core" 
      xmlns:persistence="http://jboss.org/schema/seam/persistence" 
      xmlns:transaction="http://jboss.org/schema/seam/transaction" 
      xmlns:security="http://jboss.org/schema/seam/security" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:mail="http://jboss.org/schema/seam/mail" 
      xmlns:async="http://jboss.org/schema/seam/async" 
      xmlns:web="http://jboss.org/schema/seam/web" 
      xsi:schemaLocation= 
       "http://jboss.org/schema/seam/core http://jboss.org/schema/seam/core-2.3.xsd 
       http://jboss.org/schema/seam/persistence http://jboss.org/schema/seam/persistence-2.3.xsd 
       http://jboss.org/schema/seam/transaction http://jboss.org/schema/seam/transaction-2.3.xsd 
       http://jboss.org/schema/seam/security http://jboss.org/schema/seam/security-2.3.xsd 
       http://jboss.org/schema/seam/components http://jboss.org/schema/seam/components-2.3.xsd 
       http://jboss.org/schema/seam/mail http://jboss.org/schema/seam/mail-2.3.xsd 
       http://jboss.org/schema/seam/async http://jboss.org/schema/seam/async-2.3.xsd 
       http://jboss.org/schema/seam/web http://jboss.org/schema/seam/web-2.3.xsd"> 

    <core:init debug="true"/> 

    <!-- took the following from http://community.jboss.org/thread/10024?tstart=0 --> 
    <core:manager concurrent-request-timeout="30000" 
     conversation-id-parameter="cid" conversation-timeout="1200000" 
     parent-conversation-id-parameter="pid" /> 

    <transaction:entity-transaction entity-manager="#{entityManager}"/> 

    <persistence:entity-manager-factory name="projectDatabase"/> 

    <persistence:managed-persistence-context name="entityManager" 
           auto-create="true" 
        entity-manager-factory="#{projectDatabase}"/> 

    <security:jpa-identity-store 
     user-class="com.ourproject.user.model.Account" 
     role-class="com.ourproject.user.model.AccountRole" /> 

    <security:permission-manager permission-store="#{jpaPermissionStore}"/>  

    <security:jpa-permission-store 
     user-permission-class="com.ourproject.user.model.AccountPermission"/> 

    <web:multipart-filter create-temp-files="true" 
     max-request-size="100000000" url-pattern="*.html" /> 

    <web:logging-filter disabled="true" /> 

    <web:cache-control-filter name="imageCacheControlFilter" 
     regex-url-pattern=".*(\.gif|\.png|\.jpg|\.jpeg)" value="max-age=86400" /> 

    <web:cache-control-filter name="textCacheControlFilter" 
     regex-url-pattern=".*(\.css|\.js)" value="max-age=1400" /> 

    <core:resource-loader> 
     <core:bundle-names> 
      <value>messages</value> 
      <value>navigation_messages</value> 
      <value>product_messages</value> 
      <value>customer_referral</value> 
     </core:bundle-names> 
    </core:resource-loader> 

    <async:quartz-dispatcher /> 


</components> 

Ceci est mon seam.properties (seulement 1 dans mon projet)

# SEAM Settings 
org.jboss.seam.core.init.debug=false 

mais j'ai aussi un seam.quartz.properties

#============================================================== 
# Configure Main Scheduler Properties 
#============================================================== 

org.quartz.scheduler.instanceName = Sched1 
org.quartz.scheduler.instanceId = AUTO 
org.quartz.scheduler.rmi.export = false 
org.quartz.scheduler.rmi.proxy = false 

#============================================================== 
# Configure ThreadPool 
#============================================================== 

org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool 
org.quartz.threadPool.threadCount = 3 

#============================================================== 
# Configure JobStore 
#============================================================== 

org.quartz.jobStore.misfireThreshold = 60000 
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore 

est d'avoir seam.properties et seam.quartz.properties ensemble un problème?

Voici les libs que j'ai dans mon tomcat/libs dossier

annotations-api.jar 
catalina-ant.jar 
catalina-ha.jar 
catalina.jar 
catalina-tribes.jar 
ecj-4.4.jar 
el-api.jar 
jasper-el.jar 
jasper.jar 
jsp-api.jar 
servlet-api.jar 
tomcat7-websocket.jar 
tomcat-api.jar 
tomcat-coyote.jar 
tomcat-dbcp.jar 
tomcat-i18n-es.jar 
tomcat-i18n-fr.jar 
tomcat-i18n-ja.jar 
tomcat-jdbc.jar 
tomcat-util.jar 
websocket-api.jar 

Comme une demande de @tair, voici mon jar -tf my.war

META-INF/ 
META-INF/MANIFEST.MF 
WEB-INF/ 

...our stuff removed .. 

WEB-INF/pages.xml 
WEB-INF/lib/jersey-client-1.14.jar 
WEB-INF/lib/mysql-connector-java-5.1.18.jar 
WEB-INF/lib/slf4j-log4j12-1.5.8.jar 
WEB-INF/lib/hibernate-commons-annotations-4.0.1.Final.jar 
WEB-INF/lib/jackson-core-2.3.0.jar 
WEB-INF/lib/cxf-rt-frontend-simple-2.6.0.jar 
WEB-INF/lib/javassist-3.12.0.GA.jar 
WEB-INF/lib/xml-resolver-1.2.jar 
WEB-INF/lib/testng-5.14.10.jar 
WEB-INF/lib/jsf-api-2.1.2.jar 
WEB-INF/lib/jersey-server-1.14.jar 
WEB-INF/lib/commons-lang-2.3.jar 
WEB-INF/lib/cxf-rt-transports-local-2.6.0.jar 
WEB-INF/lib/activation-1.1.1.jar 
WEB-INF/lib/bsh-2.0b4.jar 
WEB-INF/lib/jettison-1.1.jar 
WEB-INF/lib/richfaces-api-3.3.3.Final.jar 
WEB-INF/lib/slf4j-api-1.5.8.jar 
WEB-INF/lib/commons-beanutils-1.7.0.jar 
WEB-INF/lib/jersey-json-1.14.jar 
WEB-INF/lib/log4j-1.2.14.jar 
WEB-INF/lib/persistence-api-1.0.jar 
WEB-INF/lib/cxf-rt-frontend-jaxws-2.6.0.jar 
WEB-INF/lib/snakeyaml-1.6.jar 
WEB-INF/lib/commons-logging-1.0.4.jar 
WEB-INF/lib/stax-api-1.0-2.jar 

WEB-INF/lib/xmlschema-core-2.0.2.jar 
WEB-INF/lib/jaxb-api-2.1.jar 
WEB-INF/lib/jboss-seam-remoting-2.3.1.Final.jar 
WEB-INF/lib/javassist-3.15.0-GA.jar 
WEB-INF/lib/joda-time-2.0.jar 
WEB-INF/lib/neethi-3.0.2.jar 
WEB-INF/lib/jackson-core-asl-1.9.2.jar 
WEB-INF/lib/jxl-2.6.10.jar 
WEB-INF/lib/pdflib-8.0.jar 
WEB-INF/lib/jackson-xc-1.9.2.jar 
WEB-INF/lib/jboss-transaction-api_1.1_spec-1.0.1.Final.jar 
WEB-INF/lib/sanselan-0.97-incubator.jar 
WEB-INF/lib/opencsv-2.3.jar 
WEB-INF/lib/mail-1.4.jar 
WEB-INF/lib/hibernate-core-4.0.1.Final.jar 
WEB-INF/lib/cxf-rt-ws-addr-2.6.0.jar 
WEB-INF/lib/jstl-1.1.2.jar 
WEB-INF/lib/commons-net-2.0.jar 
WEB-INF/lib/jackson-datatype-hibernate4-2.3.0.jar 
WEB-INF/lib/woodstox-core-asl-4.1.2.jar 
WEB-INF/lib/cxf-rt-databinding-jaxb-2.6.0.jar 
WEB-INF/lib/commons-collections-3.2.1.jar 
WEB-INF/lib/wsdl4j-1.6.2.jar 
WEB-INF/lib/cxf-rt-transports-http-2.6.0.jar 

WEB-INF/lib/cxf-rt-bindings-soap-2.6.0.jar 
WEB-INF/lib/cxf-api-2.6.0.jar 
WEB-INF/lib/jboss-el-1.0_02.CR6.jar 
WEB-INF/lib/hibernate-jpa-2.0-api-1.0.1.Final.jar 
WEB-INF/lib/jfreechart-1.0.19.jar 
WEB-INF/lib/jcommon-1.0.23.jar 
WEB-INF/lib/jcommander-1.12.jar 
WEB-INF/lib/richfaces-impl-jsf2-3.3.3.Final.jar 
WEB-INF/lib/jaxb-impl-2.1.3.jar 
WEB-INF/lib/validation-api-1.1.0.Final.jar 
WEB-INF/lib/jackson-mapper-asl-1.9.2.jar 
WEB-INF/lib/jboss-interceptors-api_1.1_spec-1.0.0.Final.jar 
WEB-INF/lib/jboss-seam-2.3.1.Final.jar 
WEB-INF/lib/jsch-0.1.48.jar 
WEB-INF/lib/jsf-impl-2.1.2.jar 
WEB-INF/lib/jboss-logging-3.1.0.CR2.jar 
WEB-INF/lib/commons-digester-2.1.jar 
WEB-INF/lib/cxf-rt-core-2.6.0.jar 
WEB-INF/lib/jboss-seam-ui-2.3.1.Final.jar 
WEB-INF/lib/asm-3.3.1.jar 
WEB-INF/lib/hibernate-validator-4.0.2.GA.jar 
WEB-INF/lib/cxf-rt-bindings-xml-2.6.0.jar 
WEB-INF/lib/geronimo-javamail_1.4_spec-1.7.1.jar 
WEB-INF/lib/richfaces-ui-3.3.3.Final.jar 
WEB-INF/lib/jersey-multipart-1.14.jar 
WEB-INF/lib/antlr-2.7.6.jar 
WEB-INF/lib/jackson-annotations-2.3.0.jar 
WEB-INF/lib/hibernate-entitymanager-4.0.1.Final.jar 
WEB-INF/lib/quartz-1.5.2.jar 
WEB-INF/lib/jersey-core-1.14.jar 
WEB-INF/lib/stax2-api-3.1.1.jar 
WEB-INF/lib/mimepull-1.6.jar 
WEB-INF/lib/junit-4.8.2.jar 
WEB-INF/lib/commons-io-1.3.1.jar 
WEB-INF/lib/cxf-rt-ws-policy-2.6.0.jar 
WEB-INF/lib/dom4j-1.6.1-brew.jar 
WEB-INF/lib/jackson-databind-2.3.0.jar 
WEB-INF/lib/jackson-jaxrs-1.9.2.jar 
WEB-INF/navigation.xml 
WEB-INF/faces-config.xml 
WEB-INF/homescreen-warning.page.xml 
WEB-INF/web.xml 

WEB-INF/classes/ourproject-datamodel.application.properties 

WEB-INF/classes/ter 

WEB-INF/classes/seam.properties 
WEB-INF/classes/customer_referral.properties 
WEB-INF/classes/seam.quartz.properties 

WEB-INF/classes/META-INF/components.xml 
WEB-INF/classes/META-INF/persistence.xml 
WEB-INF/classes/log4j.properties 
WEB-INF/classes/logging.properties 

login.page.xml 
error.page.xml 
+2

Peut-être que vous venez de recevoir quelques pots supplémentaires sur les libs de tomcat ou sur votre classpath? –

+0

Non, je ne l'ai pas sur le Tomcat ou sur le classpath autant que je sache – Joerg

+0

alors as-tu confirmé que dans ton .war tu as réellement deux composants ou pas? et confirmé que votre dossier lib à l'intérieur de tomcat est vide? – eis

Répondre

1

Si votre application fonctionne comme prévu, vous n Ne vous inquiétez pas de ces messages. C'est la manière standard de surcharger/étendre les fonctionnalités intégrées du framework JBoss Seam. Voir l'exemple ici [1].

Ces messages ne sont pas une indication de duplication de chemin de classe, car dans ce cas vous auriez quelque chose comme ERROR: Found two or more components with same name and precedence ...

[1] http://docs.jboss.org/seam/2.3.1.Final/reference/html_single/#d0e13759

+0

cela fonctionne (bien sûr :() pas comme prévu. que le jsf n'est pas "traduit" en html, je peux toujours voir les balises jsf, et pas les balises html, comme '', '' & ' Joerg

+0

@Joerg cela est dû à une mauvaise configuration de JSF. ici pour plus d'informations http://docs.jboss.org/seam/2.3.1.Final/reference/html_single/#configuration – Tair

+0

ok, ça marche maintenant ... ça ressemble vraiment à une mauvaise configuration - tout fonctionne comme prévu maintenant, mais encore les trucs doublés .... thx – Joerg