java - Returning object-parameter in Web-Flow -
i have following files:
webflow-context.xml
... <bean id="user" class="com.bla-bla.datamodel.user" scope="prototype" /> ... user.java
public class user implements serializable { private static final long serialversionuid = 1l; private integer id; private string name; private address address = new address(); //setters , getters } adduser.jspx
... <form:form commandname="user"> <form:hidden path="id" /> <form:input path="name"/> <form:input path="address.street"/> <div class="buttons"> <div class="button"> <button type="submit" name="_eventid_canceluser"> <fmt:message key="button.cancel" /> </button> <button type="submit" name="_eventid_usernext"> <fmt:message key="button.next" /> </button> </div> </div> </form:form> ... adduser.xml
<on-start> <set name="flowscope.user" value="user" /> </on-start> <view-state id="adduser" view="adduser"> <transition on="canceluser" to="canceluser"/> <transition on="usernext" to="usernext"> <set name="user.name" value="requestparameters.name"/> <set name="user.address.street" value="requestparameters.address.street"/> </transition> </view-state> ... the problem works correctly has error:
org.springframework.web.util.nestedservletexception: request processing failed; nested exception org.springframework.webflow.execution.actionexecutionexception: exception thrown executing [annotatedaction@741dbf43 targetaction = [setaction@4cf80343 name = user.address.street, value = requestparameters.address.street], attributes = map[[empty]]] in state ' adduser ' of flow ' adduser ' -- action execution attributes 'map[[empty]]' org.springframework.webflow.execution.actionexecutionexception: exception thrown executing [annotatedaction@741dbf43 targetaction = [setaction@4cf80343 name = user.address.street, value = requestparameters.address.street], attributes = map[[empty]]] in state ' adduser ' of flow ' adduser ' -- action execution attributes 'map[[empty]]' org.springframework.binding.expression.evaluationexception: elexception occurred getting value expression 'requestparameters.address.street' on context [class org.springframework.webflow.engine.impl.requestcontrolcontextimpl] org.springframework.expression.spel.spelevaluationexception: el1007e:(pos 0): field or property 'street' cannot found on null if field «user» object, error. job data entered on page , save in bean user (flowscope.user) last step process them.
how right?
upd:i found problem, after <form:input path="address.street"/> address = null. why?
i think problem here: value="requestparameters.address.street"
requestparameters can contain strings , expect object of type address
simply pass street ...&name=foo&street=bar... in url , receive requestparameters.street
Comments
Post a Comment