91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

WebWork中xwork.xml文件是怎么樣的

發布時間:2021-12-18 21:49:16 來源:億速云 閱讀:286 作者:柒染 欄目:編程語言

本篇文章給大家分享的是有關WebWork中xwork.xml文件是怎么樣的,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

示例

﹤?xml version="1.0" encoding="ISO-8859-1"?﹥  ﹤!DOCTYPE xwork   PUBLIC   "-//OpenSymphony Group//XWork 1.0//EN"   "http://www.opensymphony.com/xwork/xwork-1.0.dtd"﹥  ﹤xwork﹥  ﹤include file="webwork-default.xml"/﹥  ﹤package name="default" extends="webwork-default"﹥  ﹤interceptors﹥  ﹤interceptor-stack name="defaultComponentStack"﹥  ﹤interceptor-ref name="component"/﹥  ﹤interceptor-ref name="defaultStack"/﹥  ﹤/interceptor-stack﹥  ﹤/interceptors﹥  ﹤default-interceptor-ref name="defaultStack"/﹥  ﹤action name="SimpleCounter" class="com.opensymphony.  webwork.example.counter.SimpleCounter"﹥  ﹤result name="success" type="dispatcher"﹥  /success.jsp﹤/result﹥  ﹤interceptor-ref name="defaultComponentStack"/﹥  ﹤/action﹥  ﹤!--  - Velocity implementation of the SimpleCounter.    Also demonstrate a more verbose version of result element  --﹥  ﹤action name="VelocityCounter" class="com.opensymphony.webwork.  example.counter.SimpleCounter"﹥  ﹤result name="success" type="velocity"﹥  ﹤param name="location"﹥/success.vm﹤/param﹥  ﹤/result﹥  ﹤interceptor-ref name="defaultComponentStack"/﹥  ﹤/action﹥  ﹤!--  - Different method can be used (processForm).   --﹥  ﹤action name="formTest" class="com.opensymphony.webwork.example.  FormAction" method="processForm" ﹥  ﹤result name="success" type="dispatcher"﹥/formSuccess.jsp﹤/result﹥  ﹤result name="invalid.token" type="dispatcher"﹥/form.jsp﹤/result﹥  ﹤interceptor-ref name="defaultStack"/﹥  ﹤interceptor-ref name="token"/﹥  ﹤/action﹥  ﹤/package﹥  ﹤/xwork﹥

活動

﹤action name="formTest"   class="com.opensymphony.webwork.example.FormAction"   method="processForm"﹥

活動是WebWork的基本工作單元, 它正是定義了活動. 活動通常有一個請求(通常是點擊按鈕, 或提交表單). 主要的action元素有兩部分, 友好的名字(在URL中引用, 如saveForm.action)和對應的"處理(handler)"類.

可選的"method"屬性告訴WebWork應當調用活動的哪個方法.

如果你不填寫method屬性, WebWork缺省調用execute(). 如果活動沒有execute()方法, 也沒有在xml中指定method屬性, WebWork將拋出異常.

同樣, 你也可以在表單中指定"actionName!something"來告訴WebWork調用"doSomething"方法. 例如, "formTest!save.action"將調用FormAction的"save"方法. 該方法必須是public且沒有參數:

public String save() throws Exception  {  ...  return SUCCESS;  }

活動的所有配置都可以用在"actionName!something"中(截取器, 結果類型等)

〈result name="missing-data" type="dispatcher"〉  〈param name="location"〉/form.jsp〈/param〉  〈param name="parameterA"〉A〈/param〉  〈param name="parameterB"〉B〈/param〉  〈/result〉

Result元素告訴WebWork活動執行后下一步該做什么. "name"屬性對應活動execute() 方法返回的結果代碼. "type"屬性表示使用哪個結果類型(參見結果類型). 可以使用"param"元素向視圖傳遞參數:

〈result-types 〉  ....  〈result-type name="header" class="com.opensymphony.webwork.dispatcher.  HttpHeaderResult"/ 〉  〈/result-types 〉  〈result name="no-content" type="header" 〉  〈param name="status" 〉204〈/param 〉  〈param name="headers.customHeaderA" 〉A〈/param 〉  〈param name="headers.customHeaderB" 〉B〈/param 〉  〈/result 〉

下面是WebWork內置的標準結果代碼(定義在Action接口中), 包括:

Action.SUCCESS = "success";

Action.NONE    = "none";

Action.ERROR   = "error";

Action.INPUT   = "input";

Action.LOGIN   = "login";

你可以擴充你認為適合的結果代碼(如"missing-data"). 大多數情況下你只需使用SUCCESS和ERROR, SUCCESS將前進到下一個頁面.

如果你只需要指定"location"屬性, 可以使用簡寫形式:

﹤result name="missing-data"   type="dispatcher"﹥/form.jsp﹤/result﹥

參閱webwork-default.xml或Result Types以了解標準結果類型

截取器

截取器允許定義活動執行前后的代碼. 截取器是編寫Web應用的強大工具. 一些最常用的實現是:

安全檢查(確保用戶已登陸)

跟蹤紀錄 (記錄每一個活動)

檢查執行瓶頸 (在活動前后啟動計時器, 以檢查應用瓶頸)

也可以將截取器連接起來創建一個截取器棧. 如果你想完成登陸檢查, 安全檢查, 并記錄每個活動調用, 使用截取器棧會十分容易.

必須先定義截取器(給它命名)然后才能聯接成棧:

﹤interceptors﹥  ﹤interceptor name="security"   class="com.mycompany.security.SecurityInterceptor"/﹥  ﹤interceptor-stack name="defaultComponentStack"﹥  ﹤interceptor-ref name="component"/﹥  ﹤interceptor-ref name="defaultStack"/﹥   ﹤/interceptor-stack﹥  ﹤/interceptors﹥

要在活動中使用它們:

﹤action name="VelocityCounter"   class="com.opensymphony.webwork.example.  counter.SimpleCounter"﹥  ﹤result name="success"﹥...﹤/result﹥  ﹤interceptor-ref   name="defaultComponentStack"/﹥  ﹤/action﹥

注意: 可以引用攔截器或棧的名字

更多細節參見截取器.

視圖

WebWork支持JSP和Velocity作為應用表示層. 本例使用JSP文件. Webwork附帶了標簽庫(taglibs). 你可以在JSP中項組件一樣使用標簽庫.下面是form.jsp的片斷:

﹤%@ taglib prefix="ww" uri="webwork" %﹥  ﹤html﹥  ﹤head﹥﹤title﹥Webwork Form Example﹤/title﹥  ﹤/head﹥  ﹤body﹥  ﹤ww:form name="myForm" action="'formTest'"   namespace="/" method="POST"﹥  ﹤table﹥  ﹤ww:textfield label="First Name"   name="'formBean.firstName'"   value="formBean.firstName"/﹥  ﹤ww:textfield label="Last Name"  name="'formBean.lastName'"   value="formBean.lastName"/﹥  ﹤ww:submit value="Save Form"/﹥  ﹤/table﹥  ﹤/ww:form﹥  ﹤/body﹥

處理經過如下:

WebWork監控以.action結尾的URI(定義在web.xml中)

WebWork在活動定義中查找活動formTest.

WebWork創建formTest并調用com.opensymphony.webwork.example.FormAction的方法processForm(定義在xwork.xml中).

該方法處理成功并返回SUCCESS

WebWork將返回值SUCCESS轉換成地址formSuccess.jsp(定義在b class="strong">xwork.xml中)并執行重定向.

包含

為了易于管理大規模開發活動(包含大量活動和配置), WebWork允許在xwork.xml中包含其他配置文件 :

﹤xwork﹥  ﹤include file="webwork-default.xml"/﹥  ﹤include file="user.xml"/﹥  ﹤include file="shoppingcart.xml"/﹥  ﹤include file="product.xml"/﹥  ....  ﹤/xwork﹥

被包含文件必須與xwork.xml的格式相同(具有相同的doctype及其它)并放置在類路徑中(通常位于/WEB-INF/classes或/WEB-INF/lib的jar文件中).

以上就是WebWork中xwork.xml文件是怎么樣的,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

恩平市| 永靖县| 融水| 丰镇市| 田林县| 四川省| 保靖县| 平阳县| 阜康市| 长葛市| 互助| 祥云县| 杭州市| 精河县| 关岭| 枣强县| 岱山县| 内黄县| 黄陵县| 东至县| 涡阳县| 临颍县| 依兰县| 禹州市| 汤阴县| 兖州市| 河南省| 拜泉县| 融水| 望谟县| 福安市| 朝阳市| 神木县| 大英县| 龙井市| 朔州市| 库尔勒市| 北海市| 镇平县| 弥渡县| 介休市|