2010-11-02 4 views
2

J'ai un projet JSF 2.0 existant qui fonctionne sur un serveur Tomcat 7.0.4. J'essaie d'ajouter Icefaces 2.0.0 Beta2 à ce projet. J'ai téléchargé le fichier ICEfaces-2.0.0-Beta2-bin.zip depuis la page d'accueil officielle de Icefaces et j'ai suivi les instructions décrites here.JSF 2.0 + Icefaces 2.0.0 Échec de Beta2 et Tomcat 7

Je copié les 4 fichiers icefaces.jar, icepush.jar, icefaces-ace.jar et icefaces-compat.jar du répertoire ICEfaces-2.0.0-Beta2-bin/icefaces/lib dans le répertoire WEB-INF/lib (celui que j'inclus tous mes pots). Les jsf-api.jar et jsf-impl.jar étaient déjà inclus dans mon projet, donc ils n'ont pas été copiés.

Quand je déployé l'application Web sur le serveur Tomcat 7, après erreur est survenue:

/home/user > ant deploy reload 

Buildfile: build.xml 

build: 

deploy: 

reload: 
    [reload] FAIL - Encountered exception java.lang.IllegalStateException: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/wtree-www] has not been started 

BUILD FAILED 
FAIL - Encountered exception java.lang.IllegalStateException: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/wtree-www] has not been started 

Total time: 0 seconds 

Ceci est du catalina.log, je pense que cela pourrait être intresting:

INFO: JSF1048: PostConstruct/PreDestroy annotations present. ManagedBeans methods marked with these annotations will have said annotations processed. 
Nov 2, 2010 10:04:42 PM org.icepush.servlet.MainServlet <init> 
INFO: 
ICEsoft Technologies Inc. 
ICEpush 2.0.0 Beta2 
Build number: 13 
Revision: 22877 

Nov 2, 2010 10:04:43 PM org.icefaces.util.EnvConfig init 
INFO: ICEfaces Configuration: 
org.icefaces.render.auto: true [default] 
org.icefaces.autoid: true [default] 
org.icefaces.aria.enabled: true [default] 
org.icefaces.blockUIOnSubmit: false [default] 
org.icefaces.compressDOM: false [default] 
org.icefaces.compressResources: true [default] 
org.icefaces.connectionLostRedirectURI: null [default] 
org.icefaces.deltaSubmit: false [default] 
org.icefaces.lazyPush: true [default] 
org.icefaces.sessionExpiredRedirectURI: null [default] 
org.icefaces.standardFormSerialization: false [default] 
org.icefaces.strictSessionTimeout: false [default] 
org.icefaces.windowScopeExpiration = 1000 [default] 
Nov 2, 2010 10:04:43 PM org.icefaces.impl.renderkit.DOMRenderKit <clinit> 
INFO: 
ICEsoft Technologies Inc. 
ICEfaces 2.0.0 Beta2 
Build number: 003 
Revision: 22976 

Nov 2, 2010 10:04:43 PM com.sun.faces.config.ConfigManager initialize 
INFO: Unsanitized stacktrace from failed start... 
com.sun.faces.config.ConfigurationException: 
    Source Document: jar:file:/opt/apache-tomcat-7.0.4/webapps/wtree-www/WEB-INF/lib/icefaces-compat.jar!/META-INF/faces-config.xml 
    Cause: Class 'com.icesoft.faces.component.effect.ApplyEffectRenderer' is missing a runtime dependency: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 
at com.sun.faces.config.processor.AbstractConfigProcessor.createInstance(AbstractConfigProcessor.java:275) 
at com.sun.faces.config.processor.RenderKitConfigProcessor.addRenderers(RenderKitConfigProcessor.java:309) 
at com.sun.faces.config.processor.RenderKitConfigProcessor.process(RenderKitConfigProcessor.java:175) 
at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:110) 
at com.sun.faces.config.processor.ManagedBeanConfigProcessor.process(ManagedBeanConfigProcessor.java:266) 
at com.su ..... 
...... 
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 
at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.<clinit>(DomBasicRenderer.java:61) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
..... 
Nov 2, 2010 10:04:43 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error listenerStart 
Nov 2, 2010 10:04:43 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/wtree-www] startup failed due to previous errors 

Je ne comprendre comment copier les 4 fichiers peut générer cette erreur. Je n'ai rien fait d'autre. Pouvez-vous m'aider s'il vous plaît?

Répondre

2

Comme d'habitude, la partie caused by de la pile d'exception indique la cause première du problème. Dans votre cas, c'est le suivant:

Caused by: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 

Ceci est assez explicite. La classe mentionnée est manquante dans le classpath runtime. Ajouter commons-logging.jar à /WEB-INF/lib et ce problème particulier devrait aller. Si vous ne l'avez pas déjà ailleurs (dans IceFaces, téléchargez peut-être?), Vous pouvez l'obtenir au http://commons.apache.org/logging.

+0

Merci beaucoup BalusC! Ça marche! =) – kungcc