editcustomer.java
来自「Enjoy Web Dev With Tapestry 一书的源代码」· Java 代码 · 共 47 行
JAVA
47 行
package com.ttdev.bank;
import org.apache.tapestry.*;
import org.apache.tapestry.annotations.*;
import org.apache.tapestry.event.*;
import org.apache.tapestry.html.*;
public abstract class EditCustomer extends BasePage implements PageBeginRenderListener {
@InjectObject("service:com.ttdev.bank.EditCustomerService")
public abstract EditCustomerService getEditService();
public abstract String getCustomerId();
public abstract Customer getOldCustomer();
public abstract Customer getCurrentCustomer();
public abstract void setCustomerId(String customerId);
public abstract void setCurrentCustomer(Customer customer);
public abstract void setOldCustomer(Customer customer);
public void pageBeginRender(PageEvent event) {
if (!event.getRequestCycle().isRewinding()) {
Customer customer = getEditService().getCustomerForEdit(getCustomerId());
setCurrentCustomer(customer);
setOldCustomer(customer);
}
}
@InjectPage("GetCustomerId")
public abstract GetCustomerId getQueryIdPage();
@InjectPage("EditCustomerSuccess")
public abstract IPage getSuccessPage();
public IPage onOk() {
try {
String customerId = getOldCustomer().getId();
Customer currentCustomer = getCurrentCustomer();
currentCustomer.setId(customerId);
getEditService().saveCustomer(currentCustomer, getOldCustomer());
return getSuccessPage();
} catch (RuntimeException e) {
getQueryIdPage().getDelegate().setFormComponent(null);
getQueryIdPage().getDelegate().record(e.getMessage(), null);
return getQueryIdPage();
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?