Set to false.
But having same results set to true.
I'm using action="index" approach. Now, cancel always launches 404.
El Martes, 15 de Octubre de 2013 12:59:32 p.m., Paul Benedict escribió:
If you want to do a redirect, you need your action mapping to handle
"cancel" and use a redirectAction result.
On Tue, Oct 15, 2013 at 12:53 PM, Antonio Sánchez
<juntandolin...@gmail.com>wrote:
Hi.
Simple CRUD sample application, paramsPrepareParams, wildcard method
selection.
Cancel button in edit form, when reached for creating a new employee bean,
is not cancelling and redirecting to index, but actually performing form
action, which is "save". Conversely, cancel is working properly if edit
form is reached from "edit" link, instead of "create".
I guess it has to do with interceptors stacks and validation, but I have
no idea where the problem is.
Code for cancel button in employeeForm.jsp:
<s:submit value="%{getText('button.**label.cancel')}"
name="redirectAction:index"/>
Working on issue:
https://issues.apache.org/**jira/browse/WW-3993<https://issues.apache.org/jira/browse/WW-3993>
Thanks!
- struts.xml:
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="index"/>
<action name="index" class="struts.apache.org.**simpleCRUD.action.
**EmployeeAction" method="list">
<result name="success">/WEB-INF/jsp/**employees.jsp</result>
<interceptor-ref name="basicStack"/>
</action>
<action name="*Employee" class="struts.apache.org.**
simpleCRUD.action.**EmployeeAction" method="{1}">
<result name="success" type="redirectAction">index</**result>
<result name="input">/WEB-INF/jsp/**employeeForm.jsp</result>
<result name="error">/WEB-INF/jsp/**error.jsp</result>
<interceptor-ref name="**paramsPrepareParamsStack"/>
</action>
</package>
- EmployeeAction
public class EmployeeAction extends ActionSupport implements Preparable {
private EmployeeService empService = new EmployeeDaoService();
private DepartmentService deptService = new DepartmentDaoService();
private Employee employee;
private List employees;
private List departments;
public void prepare() throws Exception {
departments = deptService.getAllDepartments(**);
if (employee != null
&& employee.getEmployeeId() != null
&& !("".equals(employee.**getEmployeeId())) ) {
employee = empService.getEmployee(**employee.getEmployeeId());
}
}
public String save() {
if (employee.getEmployeeId() == null) {
empService.insertEmployee(**employee);
} else {
empService.updateEmployee(**employee);
}
return SUCCESS;
}
public String delete() {
empService.deleteEmployee(**employee.getEmployeeId());
return SUCCESS;
}
public String list() {
employees = empService.getAllEmployees();
return SUCCESS;
}
.................
- employees.jsp (index):
<h1><s:text name="label.employees"/></h1>
<s:url id="url" action="inputEmployee" />
<a href="<s:property value="#url"/>">Add New Employee</a>
.......
<s:iterator value="employees" status="status">
<tr class="<s:if test="#status.even">even</s:**
if><s:else>odd</s:else>">
<td class="nowrap"><s:property value="firstName"/></td>
<td class="nowrap"><s:property value="lastName"/></td>
<td class="nowrap"><s:property value="age"/></td>
<td class="nowrap"><s:property value="department.name"/></td>
<td class="nowrap">
<s:url action="inputEmployee" id="url">
<s:param name="employee.employeeId"
value="employeeId"/>
</s:url>
<a href="<s:property value="#url"/>">Edit</a>
<s:url action="deleteEmployee" id="url">
<s:param name="employee.employeeId"
value="employeeId"/>
</s:url>
<a href="<s:property value="#url"/>">Delete</a>
</td>
</tr>
</s:iterator>
- employeeForm (reached from add and edit employee links):
<s:form action="saveEmployee" method="post">
<s:textfield name="employee.firstName" value="%{employee.firstName}"
label="%{getText('label.**firstName')}" size="40"/>
<s:textfield name="employee.lastName" value="%{employee.lastName}"
label="%{getText('label.**lastName')}" size="40"/>
<s:textfield name="employee.age" value="%{employee.age}"
label="%{getText('label.age')}**" size="20"/>
<s:select name="employee.department.**departmentId"
value="%{employee.department.**departmentId}" list="departments"
listKey="departmentId" listValue="name"/>
<s:hidden name="employee.employeeId" value="%{employee.employeeId}"**
/>
<s:submit value="%{getText('button.**label.submit')}"/>
<s:submit value="%{getText('button.**label.cancel')}"
name="redirectAction:index"/>
</s:form>
------------------------------**------------------------------**---------
To unsubscribe, e-mail:
user-unsubscribe@struts.**apache.org<user-unsubscr...@struts.apache.org>
For additional commands, e-mail: user-h...@struts.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org