やっぱり結局

余計ややこしくなってしまったかも。新規作成でこんなにインターフェースが必要になる。
画面を表示するためのActionインターフェースと画面から呼び出されるActionインターフェースを別々にすることにしたので、余計数が増えてる。。。

@StrutsAction(validate = false)
public interface CreateAction {

    @StrutsActionForward(path = "/pages/employee/create.html")
    String SUCCESS = "success";

    @DelegatingProcess(to = SuccessProcessor.class)
    String execute();

    @DelegatingProcess(to = GetDepartmentsService.class)
    DepartmentDto[] getDepartments();
    
}

@StrutsAction(name = "employeeEditForm", validate = false)
public interface CreatePageAction {

    @StrutsActionForward(path = "/employee_createConfirm.do")
    String CONFIRM = "confirm";

    @StrutsActionForward(path = "/employee_search.do", redirect = true)
    String BACK = "back";

}

@StrutsAction(name = "employeeEditForm", input = "/employee_create.do")
public interface CreateConfirmAction {

    @StrutsActionForward(path = "/pages/employee/createConfirm.html")
    String SUCCESS = "success";

    @DelegatingProcess(to = SuccessProcessor.class)
    String execute();

    @DelegatingProcess(to = LoadEmployeeInfoService.class, args = { "employeeEditForm" })
    EmployeeEditForm getEmployeeEditForm();

}

@StrutsAction(name = "employeeEditForm", validate = false)
public interface CreateConfirmPageAction {

    @StrutsActionForward(path = "/employee_createExecute.do")
    String EXECUTE = "execute";

    @StrutsActionForward(path = "/employee_create.do")
    String BACK = "back";

}

@StrutsAction(name = "employeeEditForm", input = "/employee_create.do")
public interface CreateExecuteAction {

    @StrutsActionForward(path = "/employee_search.do", redirect = true)
    String SUCCESS = "success";

    @DelegatingProcesses( {
            @DelegatingProcess(to = InsertEmployeeService.class, args = { "employeeEditForm" }),
            @DelegatingProcess(to = SuccessInsertProcessor.class) })
    String execute();

}

ほえー


結局Employeeを作るのに下の20個のActionインタフェースを作ってしまった。。。

    • CreateAction.java
    • CreateConfirmAction.java
    • CreateConfirmPageAction.java
    • CreateExecuteAction.java
    • CreatePageAction.java
    • DeleteConfirmAction.java
    • DeleteConfirmPageAction.java
    • DeleteExecuteAction.java
    • EditAction.java
    • EditConfirmAction.java
    • EditConfirmPageAction.java
    • EditExecuteAction.java
    • EditFirstAction.java
    • EditPageAction.java
    • InquireAction.java
    • InquirePageAction.java
    • ListAction.java
    • ListPageAction.java
    • SearchAction.java
    • SearchPageAction.java

なんだこれは。。。どこにむかうというんだ。。。