Fala pessoal…
minha Action aki estah ficando louca…ela soh eh executada depois da segunda chamada…soh q preciso da primeira chamada p/ setar uns valores no Form…
segue os codigos…
to chamando a Action assim:
<html:link page="/update.do?action=new">Update Profile</html:link>
minha Action:
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
ActionErrors errors = new ActionErrors();
ActionForward forward = new ActionForward(); // return value
UpdateForm updateForm = (UpdateForm)form;
System.out.println(request.getParameter("action"));
if (request.getParameter("action").equals("new")){
try {
FacadeUser facadeU = FacadeUser.getInstance();
User user = facadeU.getUserProfile(1);
updateForm.setUser(user);
System.out.println("name="+user.getName());
forward = mapping.findForward("update");
} catch (Exception e) {
// Report the error using the appropriate name and ID.
errors.add("name", new ActionError("id"));
saveErrors(request, errors);
// Forward control to the appropriate 'failure' URI (change name as desired)
forward = mapping.findForward("error");
}
}
else if(request.getParameter("action").equals("save")){
try{
FacadeUser facadeU = FacadeUser.getInstance();
facadeU.updateProfile(updateForm.getId().intValue(), updateForm.getName(), updateForm.getEmail());
errors.add("msg",new ActionError("insere.sucesso"));
saveErrors(request,errors);
forward = mapping.findForward("success");
}
catch(SQLException e){
e.printStackTrace();
errors.add("msg",new ActionError("insere.erro"));
saveErrors(request,errors);
forward = mapping.findForward("error");
}
}
// Finish with
return (forward);
}
o primeiro if nao estah sendo executado…o pior: akele System.out logo no inicio soh aparece na segunda chamada a Action…
struts-config.xml
<form-beans>
<form-bean name="updateForm" type="com.ibm.ams.forms.UpdateForm">
</form-bean>
</form-beans>
<action-mappings>
<action path="/update" type="com.ibm.ams.actions.UpdateAction" name="updateForm" scope="request" input="/jsp/Update.jsp">
<forward name="success" path="/jsp/User.jsp">
</forward>
<forward name="error" path="/jsp/Error.jsp">
</forward>
<forward name="update" path="/jsp/Update.jsp">
</forward>
</action>
</action-mappings>
alguem jah viu algo parecido??
valew