Bonjour,
je suis entrain de suivre le JEE tutorial sur youtube de ArthurVinog.
J'utilise spring-webflow 2.3.0 et jsf2.2.2 et je deploy l'application sous tomcat7.
L'application fonctionne nickel jusqu'au l'ajout du formulaire:
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
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	template="/WEB-INF/templates/general.xhtml">
 
	<ui:define name="title">
		<h:outputText value="Main Flow" />
	</ui:define>
 
	<ui:define name="header">
		<h:outputText value="Please Sign in" />
	</ui:define>
 
	<ui:define name="content">
		<h:form id="loginForm">
			<p:fieldset styleClass="fieldset" legend="Authentication Form">
				<p:focus />
				<p:messages id="messages" globalOnly="true" />
 
				<h:panelGrid id="logPanelGrid"
					style="margin: 0 auto; margin-top: 25px; text-align: right"
					cellspacing="8" columns="3">
					<h:panelGroup>
						<h:outputText value="User Name:" />
						<h:outputText style="color:red" value="*  " />
					</h:panelGroup>
					<p:inputText id="userName" value="#{user.userName}" required="true"
						label="User Name" title="Enter your User Name!" />
					<h:panelGroup>
						<p:message id="userNameMsg" for="userName" />
						<p:tooltip for="userName" styleClass="tooltip" showEvent="focus"
							hideEvent="blur" />
					</h:panelGroup>
 
					<h:panelGroup>
						<h:outputText value="Enter Password:" />
						<h:outputText style="color:red" value="*  " />
					</h:panelGroup>
					<p:password id="pass" value="#{user.password}" required="true"
						label="Password" title="Please enter a password!" />
					<h:panelGroup>
						<p:message id="passMsg" for="pass" />
						<p:tooltip for="pass" styleClass="tooltip" showEvent="focus"
							hideEvent="blur" />
					</h:panelGroup>
 
					<p:commandButton id="newUserButton" action="newUser"
						immediate="true" icon="ui-icon-plus" value="Sign Up" />
					<p:commandButton id="submitButton" action="confirmSignIn"
						update="logPanelGrid,messages" icon="ui-icon-check"
						value="Sign In" />
 
				</h:panelGrid>
			</p:fieldset>
		</h:form>
 
	</ui:define>
</ui:composition>
Lorsque j'élimine le <h:form> tout va bien
l'erreur:
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
 
org.springframework.webflow.execution.FlowExecutionException: Exception thrown in state 'welcome' of flow 'main'
	org.springframework.webflow.engine.impl.FlowExecutionImpl.wrap(FlowExecutionImpl.java:571)
	org.springframework.webflow.engine.impl.FlowExecutionImpl.resume(FlowExecutionImpl.java:265)
	org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:169)
	org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:183)
	org.springframework.faces.webflow.JsfFlowHandlerAdapter.handle(JsfFlowHandlerAdapter.java:48)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:827)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 
java.lang.UnsupportedOperationException
	at javax.faces.context.ExternalContext.getClientWindow(ExternalContext.java:1500)
	at com.sun.faces.context.ExternalContextImpl.encodeActionURL(ExternalContextImpl.java:562)
	at org.springframework.faces.webflow.ExternalContextWrapper.encodeActionURL(ExternalContextWrapper.java:29)
	at com.sun.faces.renderkit.html_basic.FormRenderer.getActionStr(FormRenderer.java:234)
	at com.sun.faces.renderkit.html_basic.FormRenderer.encodeBegin(FormRenderer.java:134)
	at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:864)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1894)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at org.springframework.faces.webflow.FlowViewHandler.renderView(FlowViewHandler.java:99)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
	at org.springframework.faces.webflow.FlowLifecycle.render(FlowLifecycle.java:80)
	at org.springframework.faces.webflow.JsfView.render(JsfView.java:89)
	at org.springframework.webflow.engine.ViewState.render(ViewState.java:296)
	at org.springframework.webflow.engine.ViewState.refresh(ViewState.java:243)
	at org.springframework.webflow.engine.ViewState.resume(ViewState.java:221)
	at org.springframework.webflow.engine.Flow.resume(Flow.java:545)
	at org.springframework.webflow.engine.impl.FlowExecutionImpl.resume(FlowExecutionImpl.java:261)
	at org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:169)
	at org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:183)
	at org.springframework.faces.webflow.JsfFlowHandlerAdapter.handle(JsfFlowHandlerAdapter.java:48)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936)
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:827)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:724)
merci d'avance.