<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 55  文章 - 187  trackbacks - 0
    <2009年12月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(12)

    隨筆分類

    隨筆檔案

    groovy

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    工程目錄


    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns
    ="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id
    ="WebApp_ID" version="2.5">
        
    <display-name>android</display-name>
        
    <welcome-file-list>
            
    <welcome-file>index.html</welcome-file>
            
    <welcome-file>index.htm</welcome-file>
            
    <welcome-file>index.jsp</welcome-file>
            
    <welcome-file>default.html</welcome-file>
            
    <welcome-file>default.htm</welcome-file>
            
    <welcome-file>default.jsp</welcome-file>
        
    </welcome-file-list>

        
    <!-- 第一 這個過濾器與Struts的核心過濾器協同工作,以便更容易與sitemesh整合 -->
        
    <filter>
            
    <filter-name>struts-cleanup</filter-name>
            
    <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
        
    </filter>

        
    <!-- 第二 sitemesh的過濾器,同時也整合了Freemarker -->
        
    <filter>
            
    <filter-name>sitemesh</filter-name>
            
    <filter-class>org.apache.struts2.sitemesh.FreeMarkerPageFilter</filter-class>
        
    </filter>

        
    <!-- 第三 struts2過濾器 -->
        
    <filter>
            
    <filter-name>struts2Filter</filter-name>
            
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        
    </filter>


        
    <filter-mapping>
            
    <filter-name>struts-cleanup</filter-name>
            
    <url-pattern>/*</url-pattern>
        
    </filter-mapping>
        
    <filter-mapping>
            
    <filter-name>sitemesh</filter-name>
            
    <url-pattern>/*</url-pattern>
        
    </filter-mapping>
        
    <filter-mapping>
            
    <filter-name>struts2Filter</filter-name>
            
    <url-pattern>/*</url-pattern>
        
    </filter-mapping>

        
    <!--
            使FreeMarker模塊能夠使用strut2標簽,使用方式:<#assign
            s=JspTaglibs["/WEB-INF/struts-tags.tld"] />
        
    -->
        
    <servlet>
            
    <servlet-name>JspSupportservlet</servlet-name>
            
    <servlet-class>org.apache.struts2.views.JspSupportServlet</servlet-class>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>

        
    <servlet>
            
    <servlet-name>sitemesh-freemarker</servlet-name>
            
    <servlet-class>com.opensymphony.module.sitemesh.freemarker.FreemarkerDecoratorServlet</servlet-class>
            
    <init-param>
                
    <param-name>TemplatePath</param-name>
                
    <param-value>/</param-value>
            
    </init-param>
            
    <init-param>
                
    <param-name>default_encoding</param-name>
                
    <param-value>UTF-8</param-value>
            
    </init-param>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>

        
    <servlet-mapping>
            
    <servlet-name>sitemesh-freemarker</servlet-name>
            
    <url-pattern>/*</url-pattern>
        
    </servlet-mapping>

    </web-app>

    struts.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
            "http://struts.apache.org/dtds/struts-2.1.dtd"
    >
    <struts>
        
    <constant name="struts.convention.default.parent.package" value="crud-default" />
        
    <constant name="struts.convention.package.locators" value="action" />
        
    <constant name="struts.convention.package.locators.basePackage" value="org.david.android" />
        
    <constant name="struts.convention.result.path" value="/WEB-INF/web" />

        
    <!-- 用于CRUD Action的parent package -->
        
    <package name="crud-default" extends="convention-default">
            
    <!-- 基于paramsPrepareParamsStack,
                增加store interceptor保證actionMessage在redirect后不會丟失 
    -->
            
    <interceptors>
                
    <interceptor-stack name="crudStack">
                    
    <interceptor-ref name="store">
                        
    <param name="operationMode">AUTOMATIC</param>
                    
    </interceptor-ref>
                    
    <interceptor-ref name="paramsPrepareParamsStack" />
                
    </interceptor-stack>
            
    </interceptors>

            
    <default-interceptor-ref name="crudStack" />
        
    </package>

        
    <!-- 
            使用Convention插件,實現約定大于配置的零配置文件風格.
                   特殊的Result路徑在Action類中使用@Result設定. 
        
    -->
    </struts>

    decorators.xml
    <?xml version="1.0" encoding="UTF-8"?>

    <decorators defaultdir="/WEB-INF/decorators">
        
    <decorator name="main" page="main.ftl">
            
    <pattern>/*</pattern>
        
    </decorator>
    </decorators>

    HelloWorldAction.java
    package org.david.android.action.user;


    public class HelloWorldAction {
        
    private String message;
        
    public String getMessage() {
            
    return message;
        }
        
        
    public void setMessage(String message) {
            
    this.message = message;
        }
        
        
    public String execute(){
            
    this.message = "ITdavid";
            
    return "success";
        }
    }

    main.ftl
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>${title}</title>
    </head>
    <body>
    <div>
    hello
    ${body}
    </body>
    </html>

    hello-world.ftl
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="layout" content="main"/>
    <title>Insert title here</title>
    </head>
    <body>
        Hello ${message!}
    </body>
    </html>


    posted on 2009-11-29 17:05 大衛 閱讀(3295) 評論(4)  編輯  收藏 所屬分類: Java

    FeedBack:
    # re: myAndroid(Struts2+Sitemesh+Freemarker) 2009-11-30 15:48 CoderDream
    不錯,感謝分享!  回復  更多評論
      
    # re: myAndroid(Struts2+Sitemesh+Freemarker) 2009-12-01 12:15 創意禮物創意禮品
    謝謝!網上找了好久終于找到了。。。  回復  更多評論
      
    # re: myAndroid(Struts2+Sitemesh+Freemarker) 2009-12-02 11:18 apple.shan
    跟android有什么關系?  回復  更多評論
      
    # re: myAndroid(Struts2+Sitemesh+Freemarker) 2009-12-02 12:24 大衛
    @apple.shan
    沒關系,隨便起的名字。  回復  更多評論
      
    主站蜘蛛池模板: 亚洲高清无在码在线电影不卡| 国产精品亚洲专区无码牛牛| 在线视频精品免费| 亚洲精品乱码久久久久久蜜桃图片| 国产精品亚洲不卡一区二区三区 | 成人免费区一区二区三区| 亚洲色偷偷av男人的天堂| 日本不卡视频免费| 久久久久久久久久国产精品免费| 色天使亚洲综合在线观看| 亚洲免费视频一区二区三区| 99在线热视频只有精品免费| 日韩av无码久久精品免费| 色屁屁www影院免费观看视频| 成人无码区免费A片视频WWW| 特黄aa级毛片免费视频播放| 亚洲国产一区二区a毛片| 四虎AV永久在线精品免费观看| 小草在线看片免费人成视久网| 国产午夜亚洲精品不卡免下载 | 曰批免费视频播放在线看片二| 亚洲欧洲在线观看| 亚洲?v女人的天堂在线观看| 67194成手机免费观看| h视频在线免费观看| 亚洲国产aⅴ成人精品无吗| 久久综合亚洲色HEZYO社区| 亚洲片一区二区三区| 成年女人毛片免费播放人| 久久精品乱子伦免费| 日韩精品免费一线在线观看| 中文字幕乱码亚洲无线三区| 亚洲成人在线网站| 久久精品国产亚洲5555| 免费一级毛片免费播放| 啦啦啦高清视频在线观看免费| 污污网站18禁在线永久免费观看| 成人免费ā片在线观看| 日本一区二区三区免费高清在线| 亚洲一区AV无码少妇电影| 亚洲综合视频在线观看|