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

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

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

    zhyiwww
    用平實的筆,記錄編程路上的點點滴滴………
    posts - 536,comments - 394,trackbacks - 0

    ???????????????????????????????????????? Puras 原創
    Struts和Velocity集成相當的簡單,?有Struts的基礎的人,?可以說一看就明白啦.呵.
    下面就簡單的說下這個過程:
    第一步,?在web.xml中加入Velocity?servlet
    ????<servlet>
    ????????<servlet-name>velocity</servlet-name>
    ????????<servlet-class>?org.apache.velocity.tools.view.servlet.VelocityViewServlet</servlet-class>
    ???????
    <!--
    ????????<init-param>
    ????????????<param-name>org.apache.velocity.toolbox</param-name>
    ????????????<param-value>/WEB-INF/toolbox.xml</param-value>
    ????????</init-param>
    ?-->???????
    ????????<load-on-startup>10</load-on-startup>
    ????</servlet>

    ????<servlet-mapping>
    ????????<servlet-name>velocity</servlet-name>
    ????????<url-pattern>*.vm</url-pattern>
    ????</servlet-mapping>

    這樣,?所有的以vm結尾的文件,?都會交到Velocity?Servlet處理,?上面注釋掉的一部分,?是toolbox?是聲明應用程序的可用工具的位置.如果要用這個工具的話,?記得把注釋去掉喲.我下面就用了,?但為了記得明白,?就不去注釋了.嘿

    第二步,?就是把toolbox.xml放到/WEB-INF下嘍.
    不過說一句,?如果你想在頁面中全部使用Velocity的話,?這個是得加的,?反之,?你想在頁面中用Struts標簽和Velocity的話,?這個工具就可以省略啦
    這個toolbox.xml在?Velocity?工具下載中找到,?也可以自己寫一個啦.

    <?xml?version="1.0"?>

    <toolbox>
    ????<tool>
    ????????<key>link</key>
    ????????<scope>request</scope>
    ????????<class>
    ????????????org.apache.velocity.tools.struts.StrutsLinkTool
    ????????</class>
    ????</tool>
    ???
    ????<tool>
    ????????<key>msg</key>
    ????????<scope>request</scope>
    ????????<class>
    ????????????org.apache.velocity.tools.struts.MessageTool
    ????????</class>
    ????</tool>
    ???
    ????<tool>
    ????????<key>errors</key>
    ????????<scope>request</scope>
    ????????<class>
    ????????????org.apache.velocity.tools.struts.ErrorsTool
    ????????</class>
    ????</tool>
    ???
    ????<tool>
    ????????<key>form</key>
    ????????<scope>request</scope>
    ????????<class>
    ????????????org.apache.velocity.tools.struts.FormTool
    ????????</class>
    ????</tool>
    ???
    ????<tool>
    ????????<key>tiles</key>
    ????????<scope>request</scope>
    ????????<class>
    ????????????org.apache.velocity.tools.struts.TilesTool
    ????????</class>
    ????</tool>
    ???
    ????<tool>
    ????????<key>validator</key>
    ????????<scope>request</scope>
    ????????<class>
    ????????????org.apache.velocity.tools.struts.ValidatorTool
    ????????</class>
    ????</tool>
    </toolbox>

    第三步,?修改struts-config.xml
    其實也就是把View層的JSP換成VM而已.
    <?xml?version="1.0"?encoding="ISO-8859-1"??>

    <!DOCTYPE?struts-config?PUBLIC
    ????"-//Apache?Software?Foundation//DTD?Struts?Configuration?1.2//EN"
    ????"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">

    <struts-config>
    ????<form-beans>
    ????????<form-bean?name="searchForm"?type="com.puras.test.velocity.SearchForm"?/>
    ????</form-beans>
    ???
    ????<global-forwards>
    ????????<forward?name="welcome"?path="/welcome.do"?/>
    ????</global-forwards>
    ???
    ????<action-mappings>
    ????????<action?path="/welcome"
    ????????????type="org.apache.struts.actions.ForwardAction"
    ????????????parameter="/pages/search.vm"?/>
    ???????????
    ????????<action?path="/search"
    ????????????type="com.puras.test.velocity.SearchAction"
    ????????????name="searchForm"
    ????????????scope="request"
    ????????????input="/pages/search.vm">
    ????????????<forward?name="success"?path="/pages/results.vm"?/>
    ????????</action>
    ????</action-mappings>
    </struts-config>

    第四步,?創建Velocity模版
    這個Demo中只用到了兩個VM文件,
    分別如下,?里面用到了Velocity的工具喲
    search.vm:
    <html>
    ????<head>
    ????????<title>Search</title>
    ????</head>
    ????<body>
    ????????$!errors.msgs()
    ????????<form?method="POST"
    ????????????action="$link.setAction('/search')">
    ????????????<h2>Book?Search</h2>
    ????????????ISBN:<input?type="text"?name="sea"?/>
    ????????????<input?type="submit"?value="Submit"?name="submit"?/>
    ????????</form>
    ????</body>
    </html>

    results.vm:
    <html>
    ????<head>
    ????????<title>Results</title>
    ????</head>
    ????<body>
    ????????<h1>Book?Details</h1>
    ????????<a?href="$link.setForward("welcome")">Search?again</a>
    ????????<h3>$user.name</h3>
    ???????
    ????????<b>Name:</b>?$user.name<br?/>
    ????????<b>Age:</b>?$user.Age<br?/>
    ????????<b>Sex:</b>?$user.sex<br?/>
    ????</body>
    </html>

    文件是不是很簡單呢?

    只是感覺不用Struts標簽的話,?又得熟悉一下Velocity的工具,?麻煩......
    等用的時候再說吧.



    |----------------------------------------------------------------------------------------|
                               版權聲明  版權所有 @zhyiwww
                引用請注明來源 http://www.tkk7.com/zhyiwww   
    |----------------------------------------------------------------------------------------|
    posted on 2006-06-01 14:36 zhyiwww 閱讀(379) 評論(0)  編輯  收藏 所屬分類: j2ee
    主站蜘蛛池模板: 亚洲人成伊人成综合网久久| 亚在线观看免费视频入口| 亚洲精品mv在线观看| 亚洲国产日韩成人综合天堂| 色窝窝免费一区二区三区| 午夜精品免费在线观看| fc2成年免费共享视频网站| 亚洲av无码一区二区三区天堂| 亚洲欧洲尹人香蕉综合| 亚洲av无码一区二区三区乱子伦| 亚洲成AV人网址| 日韩精品免费电影| 成年女人午夜毛片免费视频| 24小时免费看片| 性无码免费一区二区三区在线| 精品一区二区三区免费视频| 牛牛在线精品观看免费正| 亚洲精品无码av片| 在线亚洲高清揄拍自拍一品区| 亚洲欧洲国产综合| 亚洲高清美女一区二区三区| 亚洲bt加勒比一区二区| 亚洲av成人无码久久精品| 亚洲成a人片在线观看无码| 国产成人精品日本亚洲专区61| 亚洲精品尤物yw在线影院 | 亚洲小视频在线观看| 国产亚洲欧洲精品| 亚洲AV无码一区二区乱子伦| 亚洲av网址在线观看| 久久精品国产亚洲香蕉| 无码乱人伦一区二区亚洲一| 亚洲国产成人一区二区三区 | 爱丫爱丫影院在线观看免费| a级片免费在线播放| 免费观看一区二区三区| 成全在线观看免费观看大全| 女人体1963午夜免费视频| 久久成人免费播放网站| 最近2019免费中文字幕6| 午夜性色一区二区三区免费不卡视频|