Alors voila une erreur que je ne comprends pas (surement due a une mauvaise configuration...)
donc j'ai voulu exécuter un exemple d'utilisation de jsf sur le web, voici donc les sources:
addCustomer.jsp:
<f:view>
<h:form>
<h:panelGrid border="1" columns="2">
<h:outputText value="id"></h:outputText>
<h:inputText value="#{customerBean.id}"></h:inputText>
<h:outputText value="name"></h:outputText>
<h:inputText value="#{customerBean.name}"></h:inputText>
</h:panelGrid>
<h:commandButton action="#{customerBean.add}" value="Add Customer"></h:commandButton>
</h:form>
</f:view>
listCustomers.jsp:
<f:view>
<h:form>
<h:outputText value="Customer #{customerBean.name} successfully added to the database!"></h:outputText>
</h:form>
</f:view>
=======================================================
c'etait accessoire je pense! et pour infos le bean en question est juste une simple classe avec "getter" et "setter" sur les attributs plus une fonction "add"!
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>demoJSF</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
</web-app>
======================================================
faces-config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlnssi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
version="1.2">
<managed-bean>
<managed-bean-name>customerBean</managed-bean-name>
<managed-bean-class>com.demoJSF.web.customerBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<navigation-rule>
<display-name>addCustomer</display-name>
<from-view-id>/addCustomer.jsp</from-view-id>
<navigation-case>
<from-outcome>sucess</from-outcome>
<to-view-id>/listCustomers.jsp</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
=================================================
je vous donne le code des erreurs, ici c'est le rapport dans le naviguateur web:
type Rapport d'exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
javax.servlet.ServletException: Cant instantiate class: com.demoJSF.web.customerBean.. com.demoJSF.web.customerBean
javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
cause mère
javax.faces.FacesException: Cant instantiate class: com.demoJSF.web.customerBean.. com.demoJSF.web.customerBean
com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:282)
com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:527)
com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
... je vous passe les lignes...
cause mère
java.lang.ClassNotFoundException: com.demoJSF.web.customerBean
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
...etc...
====================================================
ensuite une partie du rapport dans la console (eclipse):
17:40:54,718 INFO [TomcatDeployer] deploy, ctxPath=/demoJSF, warUrl=.../tmp/deploy/tmp16296demoJSF-exp.war/
17:41:02,531 FATAL [application] JSF1001: Managedbean customerBean could not be created.
17:41:02,531 WARN [lifecycle] executePhase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@1a88328) threw exception
javax.faces.FacesException: javax.faces.FacesException: Cant instantiate class: com.demoJSF.web.customerBean.. com.demoJSF.web.customerBean
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:537)
at com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:45)
at org.apache.el.parser.AstValue.getValue(AstValue.java:86)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.faces.FacesException: Cant instantiate class: com.demoJSF.web.customerBean.. com.demoJSF.web.customerBean
at com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:282)
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:527)
... 44 more
Caused by: java.lang.ClassNotFoundException: com.demoJSF.web.customerBean
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:274)
... 45 more
17:41:02,531 ERROR [[Faces Servlet]] "Servlet.service()" pour la servlet Faces Servlet a généré une exception
java.lang.ClassNotFoundException: com.demoJSF.web.customerBean
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at
com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:274)
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:527)
... ...at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Unknown Source)
*derniere ligne*
donc ça fait beaucoup de ligne pour, j'en suis sur, un petit problème de configuration , j'espère que quelqu'un pourra m'aider!
Merci.
Partager