我酷下载
您的位置:首页-> 技术文章-> -> Java-> read-Atleap-5-发表新闻-表现层

阅读排行




read-Atleap-5-发表新闻-表现层

作者未知 来源未知 加入时间:2005-9-13 人气:143
read-Atleap-5-发表新闻-表现层
作者: dudutu 时间: 2005-9-9 11:42:09 浏览: 0
来自:
关键词: read-Atleap-5-发表新闻-表现层








v寻找发表新闻的页面



Ø news menu定义

    <Item name="NewsManagement" title="news.menu.title" action="/news/listItems" roles="manager"/>



&Oslash;Struts 定义



    <action



      path="/news/listItems"



      type="com.blandware.atleap.webapp.action.news.ListNewsItemsAction"



      name="newsItemForm"



      scope="request"



      roles="manager"



      unknown="false"



      validate="false"



    >



      <forward



        name="listNewsItems"



        path=".news.listItems"



        redirect="false"



      />



    </action>



&Oslash;tailes定义



    <!-- News -->



    <definition name=".news.listItems" extends=".coreLayout" role="manager">



        <put name="titleKey" value="news.listItems"/>



        <put name="content" value="/WEB-INF/pages/news/listItems.jsp" />



    </definition>



v发表新闻Action



&Oslash;    <html:form action="news/callCreateItem" method="POST">

       <html:submit styleClass="button"><bean:message key="button.create" /></html:submit>

       </html:form>

&Oslash;    <action



      path="/news/callCreateItem"



      type="com.blandware.atleap.webapp.action.news.CallCreateNewsItemAction"



      name="newsItemForm"



      scope="request"



      roles="manager"



      unknown="false"



      validate="false"



    >



      <forward



        name="createNewsItem"



        path=".news.createItem"



        redirect="false"



      />



      <forward



        name="listNewsItems"



        path="/news/listItems.do"



        redirect="true"



      />



    </action>



&Oslash; com.blandware.atleap.webapp.action.news.CallCreateNewsItemAction



public final class CallCreateNewsItemAction extends BaseAction {



    public ActionForward execute(ActionMapping mapping, ActionForm form,



      HttpServletRequest request, HttpServletResponse response) throws Exception {



        request.getSession().removeAttribute(NewsModuleWebConstants.NEWS_ITEM_SUBMITTE



        D_ACTION);







        ContentLocaleManager contentLocaleManager = (ContentLocaleManager)



            getBean(Constants.CONTENT_LOCALE_MANAGER_BEAN);



List contentLocales =



contentLocaleManager.listContentLocales(null).asList();



        request.getSession().setAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY, contentLocales);



        // save transaction token in request



        saveToken(request);



        return mapping.findForward("createNewsItem");



    }



}



&Oslash;tiles-config.xml中的定义

    <definition name=".news.createItem" extends=".coreLayout" role="manager">



        <put name="titleKey" value="news.createItem"/>



        <put name="content" value="/WEB-INF/pages/news/createItem.jsp" />



        <putList name="pageScripts">



            <add value="/scripts/core/calendar.js"/>



        </putList>



        <putList name="pageStyles">



            <add value="/styles/core/calendar.css"/>



        </putList>



    </definition>



&Oslash;atleap中的新闻填写需写两屏,这是第2屏的action



<html:form action="news/callCreateItemBody" method="POST" onsubmit="return validateForm(this);">

&Oslash;第2屏的action



    <action



      path="/news/callCreateItemBody"



      type="com.blandware.atleap.webapp.action.news.CallCreateNewsItemBodyAction"



      name="newsItemForm"



      scope="request"



      input="inputForward"



      roles="manager"



      unknown="false"



      validate="false"



    >



      <forward



        name="inputForward"



        path=".news.createItem"



        redirect="false"



      />



      <forward



        name="createNewsItemBody"



        path=".news.createItemBody"



        redirect="false"



      />



      <forward



        name="listNewsItems"



        path="/news/listItems.do"



        redirect="true"



      />



    </action>



&Oslash;



    public ActionForward execute(ActionMapping mapping, ActionForm form,



HttpServletRequest request, HttpServletResponse response) throws Exception {



        request.getSession().removeAttribute(NewsModuleWebConstants.NEWS_ITEM_SUBMITTED_ACTION);



        if ( isCancelled(request) ) {



            return mapping.findForward("listNewsItems");



        }



        if ( request.getSession().getAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY) == null ) {



            ContentLocaleManager contentLocaleManager = (ContentLocaleManager) getBean(Constants.CONTENT_LOCALE_MANAGER_BEAN);



            List contentLocales = contentLocaleManager.listContentLocales(null).asList();



            request.getSession().setAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY, contentLocales);



        }







        NewsItemForm newsItemForm = (NewsItemForm) form;



        if ( !WebappUtil.hasCorrectValues(newsItemForm.getTitleMap()) ) {



            // title must be specified



            ActionMessages errors = new ActionMessages();



            errors.add("title", new ActionMessage("errors.required", getMessage(request, "newsItemForm.title")));



            saveErrors(request, errors);



            saveToken(request);



            return mapping.getInputForward();



        }



        saveToken(request);



        return mapping.findForward("createNewsItemBody");



    }



}



&Oslash;



    <definition name=".news.createItemBody" extends=".coreLayout" role="manager">



        <put name="titleKey" value="news.createItemBody"/>



        <put name="content" value="/WEB-INF/pages/news/createItemBody.jsp" />



    </definition>



&Oslash;点击create按钮提交建立新闻请求后的action跳转



<html:form action="news/createItem" method="POST">







&Oslash;建立新闻的action(关键)



    <action



      path="/news/createItem"



      type="com.blandware.atleap.webapp.action.news.CreateNewsItemAction"



      name="newsItemForm"



      scope="request"



      input="inputForward"



      roles="manager"



      unknown="false"



      validate="true"



    >



      <forward



        name="inputForward"



        path=".news.createItem"



        redirect="false"



      />



      <forward



        name="listNewsItems"



        path="/news/listItems.do"



        redirect="true"



      />



      <forward



        name="callCreateItem"



        path=".news.createItem"



        redirect="false"



      />



    </action>






相关文章

相关软件

联系我们 广告服务 友情链接 版权说明 软件发布 下载帮助

CopyRight
2005-2016 www.5qcn.net All Rights Reserved 版权所有 【我酷】下载