Bonjour,
J'ai une erreur toute conne dans mon appli (sous tomcat 6) mais je suis tellement dans les nuages que je ne trouve pas seul. Quelqu'un peut-il m'aider ?
En gros, je travaille sur un POC de Seam 3. Je build mon projet avec Maven 3.
Mon projet est composé de 2 modules : seampoc-web et seampoc-domain.
Le pom de seampoc-web :
Dans le module seampoc-domain, j'ai la classe HelloWorld (ouais je bug pas fort) :
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 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.icauda</groupId> <artifactId>seampoc</artifactId> <version>0.1</version> <relativePath>../pom.xml</relativePath> </parent> <groupId>com.icauda</groupId> <artifactId>seampoc-web</artifactId> <packaging>war</packaging> <name>WEB SEAM POC</name> <description>Web Seam POC</description> <url>http://www.icauda.com</url> <dependencies> <dependency> <groupId>com.icauda</groupId> <artifactId>seampoc-domain</artifactId> <version>${poc.version}</version> </dependency> ...
J'appelle HelloWorld depuis un xhtml qui est un simple copié collé de celui généré par l'archetype.
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 package com.icauda.seampoc.domain; @Model public class HelloWorld { private final String text = "Hello, World!"; private String letters; private String numbers; private String email; public HelloWorld() { } ...
Mais j'obtiens l'erreur suivante :
Par contre, quand je met HelloWorld dans le module seampoc-web (dans le package com.icauda.seampoc.domain), là ça marche...
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 1 août 2011 09:34:40 com.sun.faces.lifecycle.ProcessValidationsPhase execute ATTENTION: /index.xhtml @20,76 value="#{helloWorld.letters}": Target Unreachable, identifier 'helloWorld' resolved to null javax.el.PropertyNotFoundException: /index.xhtml @20,76 value="#{helloWorld.letters}": Target Unreachable, identifier 'helloWorld' resolved to null at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:97) at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:91) at javax.faces.component.UIInput.getConvertedValue(UIInput.java:1023) at javax.faces.component.UIInput.validate(UIInput.java:953) at javax.faces.component.UIInput.executeValidate(UIInput.java:1204) at javax.faces.component.UIInput.processValidators(UIInput.java:693) at javax.faces.component.UIForm.processValidators(UIForm.java:240) at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081) at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081) at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1159) at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308) 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:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 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:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662)
J'ai dû oublier un truc vraiment tout con. Donc si quelqu'un a une idée...
Évidement c'est seampoc-web qui contient le web.xml :
Th.
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 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param> <context-param> <param-name>org.apache.myfaces.annotation.SCAN_PACKAGES</param-name> <param-value>com.icauda.seampoc.web</param-value> </context-param> <display-name>WEB SEAM POC</display-name> <!-- Activate the JSF 2.0 servlet --> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <!-- Tell the context which URLs to process with JSF --> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.jsf</url-pattern> </servlet-mapping> <!-- This section is optional. We are allowing index.jsf to handle the root URL (i.e., /). --> <welcome-file-list> <!-- Add additional files here, if desired, for example: <welcome-file>index.html</welcome-file> --> <welcome-file>index.jsf</welcome-file> </welcome-file-list> <!-- Weld Jetty/Tomcat specific configuration parameters --> <!-- *** The <listener> and <resource-env-ref> elements can be deleted when running in a Java EE 6 container *** --> <listener> <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class> </listener> <!-- JAX-RS 1.1 configuration through Jersey --> <servlet> <servlet-name>Jersey Web Application</servlet-name> <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> <init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>com.icauda.seampoc.web</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Jersey Web Application</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> <!-- End Jersey JAX-RS configuration --> <resource-env-ref> <description>Object factory for the CDI Bean Manager</description> <resource-env-ref-name>BeanManager</resource-env-ref-name> <resource-env-ref-type>javax.enterprise.inject.spi.BeanManager</resource-env-ref-type> </resource-env-ref> <servlet> <servlet-name>OneServlet</servlet-name> <servlet-class>com.icauda.seampoc.web.OneServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>OneServlet</servlet-name> <url-pattern>/OneServlet</url-pattern> </servlet-mapping> <!-- Use Seam Catch for these --> <!-- <error-page> <exception-type>org.jboss.seam.security.NotLoggedInException</exception-type> <location>/home.xhtml</location> </error-page> <error-page> <exception-type>org.jboss.seam.security.AuthorizationException</exception-type> <location>/denied.xhtml</location> </error-page> <error-page> <error-code>500</error-code> <location>/error.xhtml</location> </error-page> --> </web-app>
Partager