<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年11月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    常用鏈接

    留言簿(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 大衛 閱讀(3294) 評論(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
    沒關系,隨便起的名字。  回復  更多評論
      
    主站蜘蛛池模板: 亚洲精品在线免费看| 国产又黄又爽又大的免费视频| 免费黄网站在线观看| 国产亚洲综合成人91精品| 东北美女野外bbwbbw免费 | 午夜免费不卡毛片完整版| 久久综合亚洲色一区二区三区| 亚洲一区二区在线免费观看| 亚洲欧洲日韩国产综合在线二区| 国产日韩一区二区三免费高清| 亚洲gv猛男gv无码男同短文| 亚洲国产精品免费视频| 亚洲欧洲综合在线| 麻豆精品国产免费观看| 人人爽人人爽人人片av免费| 亚洲欧洲国产精品香蕉网| 国产成人精品免费久久久久| 久久精品国产亚洲AV无码娇色| 2021久久精品免费观看| 人人狠狠综合久久亚洲| 久久亚洲国产精品五月天婷| 久久一区二区三区免费播放| 亚洲乱码一二三四区国产| 日本免费网站在线观看| 久久国产乱子伦精品免费午夜 | 色吊丝性永久免费看码| 亚洲国产精品一区二区第一页| 久久永久免费人妻精品下载| 中文字幕在线日亚洲9| 亚洲国产综合精品中文字幕| 国产成人精品无码免费看| 亚洲永久网址在线观看| 亚洲精品国产自在久久| 免费精品无码AV片在线观看| 亚洲日本va一区二区三区| 久久久久久A亚洲欧洲AV冫| 99在线精品视频观看免费| 羞羞漫画在线成人漫画阅读免费| 亚洲AV无码乱码国产麻豆穿越| 成人免费毛片视频| 国产自国产自愉自愉免费24区|