⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form.xdt

📁 appfuse一套结合STRUTS+SPRING+HIBERNATE的框架
💻 XDT
字号:
<XDtTagDef:tagDef namespace="Form" handler="org.example.antbook.xdoclet.FormTagsHandler"/>package <XDtForm:parentPackageName/>.webapp.action;

import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.engine.ILink;
import org.apache.tapestry.event.PageEvent;
import org.apache.tapestry.event.PageBeginRenderListener;

import <XDtConfig:configParameterValue paramName="basePackageName"/>.webapp.action.BasePage;
import <XDtPackage:packageName/>.<XDtForm:className/>;
import <XDtForm:parentPackageName/>.service.Manager;

public abstract class <XDtForm:className/>Form extends BasePage implements PageBeginRenderListener {
    public abstract Manager getManager();
    public abstract void set<XDtForm:className/>(<XDtForm:className/> <XDtForm:classNameLower/>);
    public abstract <XDtForm:className/> get<XDtForm:className/>();

    public void pageBeginRender(PageEvent event) {
        if ((get<XDtForm:className/>() == null) && !event.getRequestCycle().isRewinding()) {
            set<XDtForm:className/>(new <XDtForm:className/>());
        } else if (event.getRequestCycle().isRewinding()) { // add
            set<XDtForm:className/>(new <XDtForm:className/>());
        }
    }

    public ILink cancel(IRequestCycle cycle) {
        log.debug("Entering 'cancel' method");
        return getEngineService().getLink(false, "<XDtForm:classNameLower/>s");
    }

    public ILink delete(IRequestCycle cycle) {
        log.debug("entered 'delete' method");

        getManager().removeObject(<XDtForm:className/>.class, get<XDtForm:className/>().<XDtMethodEx:idField getType="getterName"/>());

        <XDtForm:className/>List nextPage = (<XDtForm:className/>List) cycle.getPage("<XDtForm:classNameLower/>s");
        nextPage.setMessage(getText("<XDtForm:classNameLower/>.deleted"));
        return getEngineService().getLink(false, nextPage.getPageName());
    }

    public ILink save(IRequestCycle cycle) {
        if (getDelegate().getHasErrors()) {
            return null;
        }

        boolean isNew = (get<XDtForm:className/>().<XDtMethodEx:idField getType="getterName"/>() == null);

        getManager().saveObject(get<XDtForm:className/>());

        String key = (isNew) ? "<XDtForm:classNameLower/>.added" : "<XDtForm:classNameLower/>.updated";

        if (isNew) {
            <XDtForm:className/>List nextPage = (<XDtForm:className/>List) cycle.getPage("<XDtForm:classNameLower/>s");
            nextPage.setMessage(getText(key));
            return getEngineService().getLink(false, nextPage.getPageName());
        } else {
            setMessage(getText(key));
            return null; // return to current page
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -