`

初试webwork->进阶

阅读更多

一、部署工程web.xml里没有定义webwork,为什么页面直接可以使用webwork
<%@   taglib   prefix="ww"   uri="/webwork"%>
原因如下:
 1   用WINRAR打开webwork.jar  
   
  2  找到META-INF文件夹  
   
  3   打开里面的taglib.tld文件  
   
  4   会看到里面有一个<uri>/webwork</uri>标签只要<%@ taglib prefix="ww" uri="/webwork"%>中的uri和<uri>/webwork</uri>的内容一致就可以不必在web.xml中定义<taglib> 
二、XWork配置文件详解
  XWork配置文件是以“xwork”命名的.xml文件,它必需放到类路径(classPath)的根目录, Web应用一般放在classes目录中,它需要遵守DTD的规范。这个文件定义了我们的Action,Interceptor,Result的配置和相互之间的映射。
    将总的配置文件和业务上的配置文件分离,即1+N模式:
  1文件:xwork.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!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"
        externalReferenceResolver="com.atlassian.xwork.ext.SpringServletContextReferenceResolver">
        <interceptors>
            <interceptor name="reference-resolver"
                class="com.opensymphony.xwork.interceptor.ExternalReferencesInterceptor"/>

            <interceptor-stack name="modelParamsStack">  
                <interceptor-ref name="model-driven"/>
                <interceptor-ref name="params"/>
                <interceptor-ref name="validationWorkflowStack"/>
                <interceptor-ref name="reference-resolver"/>
            </interceptor-stack>
        </interceptors>

        <default-interceptor-ref name="modelParamsStack"/>

    </package>

    <include file="xwork/system.xml"/>
    ......
</xwork>


  N文件:system.xml,......:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">
<xwork>
  <package name="login" extends="default" namespace="/system">
    <action name="login" class="com.linkage.manage.ui.system.LoginAction" method="login">
        <external-ref name="systemBO">systemBO</external-ref>
        <result name="success" type="dispatcher">
            <param name="location">/manage/index.jsp</param>
        </result>
        <result name="input" type="dispatcher">
            <param name="location">/manage/login.jsp</param>
        </result>
    </action>
    <action name="logout" class="com.linkage.manage.ui.system.LogoutAction" method="logout">
        <result name="success" type="dispatcher">
            <param name="location">/manage/login.jsp</param>
        </result>
    </action>
  </package>
</xwork>


三、xwork.xml文件的标签元素
  xwork配置文件的所有内容,都是定义在<xwork>标签中,它的直接子标签有<package>和<include>。

URL:xxxx/system/logout.action
<package>

 

配置文件按文档的顺序,由上向下执行,用“extends”引用的package必需在引用之前定义

是否必需

  

name

用来标识package的名称 eg:logout

extends

继承它所扩展的package配置信息

namespace

指定package的命名空间,默认是”” eg:/system

abstract

声明package是抽象的

 

 四、页面iterator标签使用

如果action返回一个名为list的List(注意:该变量必须要有getXXX()方法),里面存放User类的列表,User类中有一个username的属性:

<ww:iterator =”list”>

<ww:property =”username”/>

</ww:iterator>

分享到:
评论

相关推荐

    webwork-2.2.5源码包下载.txt

    ### WebWork-2.2.5源码包下载与解析 #### 一、WebWork框架简介 WebWork是一个开源的Java Web应用开发框架,它基于Java Servlet API,并且支持多种编程模型,包括MVC(Model-View-Controller)模式。WebWork框架的...

    webwork-2.1.6.jar

    webwork-2.1.6.jar

    WebWork-2.1.7 中文开发文档-小白

    WebWork-2.1.7 中文开发文档-小白

    webwork-2.1.jar webwork相关jar包

    webwork-2.1.jar webwork相关jar包

    webwork-2.1.7.jar

    描述: webwork-2.1.7.jar &lt;br/&gt; 修改: package com.opensymphony.webwork.interceptor.FileUploadInterceptor 类line88 to line 93 &lt;br/&gt; 修复bug:upload empty file cause nullponit exception &lt;br/&gt; 博文链接:...

    webwork-tags-API

    类似于JSTL,WebWork-Tags也包含条件和逻辑控制标签,如`&lt;ww:if&gt;`、`&lt;ww:else&gt;`和`&lt;ww:choose&gt;`等,它们使得在JSP页面中实现复杂的逻辑判断成为可能。 6. **国际化和本地化**: WebWork-Tags API 还支持国际化和...

    webwork-2.1.zip

    这个"webwork-2.1.zip"压缩包包含了使用WebWork 2.1版本所需的一些关键组件和资源。 首先,`README.html` 文件通常包含关于如何安装、配置和使用WebWork 2.1的基本指南,以及可能的注意事项和更新信息。它是开发者...

    webwork-reference-2.2.2.pdf

    从给定的文件信息“webwork-reference-2.2.2.pdf”中,我们可以提炼出一系列与WebWork框架相关的IT知识点。以下是对这些知识点的详细解释: ### WebWork框架概览 WebWork是一个用于Java Web应用程序开发的轻量级...

    webwork-2.2.7_api_doc.CHM

    webwork-2.2.7_api_doc,chm webwork-2.2.7_api_doc,chm

    webwork-register.rar_webwork_webwork 验证_webwork spring

    本项目"webwork-register.rar"显然是一个基于WebWork和Spring构建的注册管理系统,让我们深入探讨这两个框架以及它们如何协同工作。 WebWork是由Apache Struts 2的前身发展而来的一个轻量级MVC(模型-视图-控制器)...

    struts框架搭建

    - 打开Eclipse或MyEclipse,选择`Window -&gt; Preferences -&gt; MyEclipse -&gt; Files and Editors -&gt; XML -&gt; XML Catalog`。 - 选择`User Specified Entries`选项卡,点击`Add`按钮。 - 左侧选择`Catalog Entry`,右侧...

    webwork的jar包

    而`webwork-src-2.2.7.jar` 文件则包含了源代码,这对于开发者来说非常有用,因为可以方便地查看和学习框架的内部实现。 在WebWork 2.2.4+Spring+Hibernate的组合中,我们可以看到WebWork与两个其他流行框架的集成...

    webwork-1.4-src.zip_webwork_webwork s_webwork.zip_webwork1.4.zip

    在"webwork-1.4-src.zip"这个压缩包中,包含了WebWork1.4的源代码,这对于学习和理解WebWork的工作原理以及进行定制开发非常有帮助。 1. **MVC模式**:WebWork1.4遵循MVC架构,将应用程序分为模型、视图和控制器三...

    webwork-spring-hibernate.rar_spring_webwork

    标题中的"webwork-spring-hibernate.rar_spring_webwork"暗示了这个压缩包涉及的是一个集成WebWork、Spring和Hibernate的项目。这三个框架是Java Web开发中的重要组件,分别负责不同的职责:WebWork(或Struts)是...

    appfuse-light-webwork-spring-jdbc-1.8.2.zip_Java 8_appfuse_webwo

    在"appfuse-light-webwork-spring-jdbc-1.8.2.zip"这个压缩包中,我们能看到一个基于Java 8、WebWork、Spring和JDBC的项目实例。 **Java 8** Java 8是Java平台的重大更新,引入了许多新特性,如lambda表达式、函数...

    webwork-2.2.7.part04

    WebWrok最新发布的Jar包。...将webwork-2.2.7.jar放到你部署目录下WEB-INF\lib目录里,同时将WebWrok解压目录lib\default下的所有.jar文件也拷贝到WEB-INF\lib目录,这些是运行WebWork必需要用到的jar包。

    webwork-2.2.7.part03

    WebWrok最新发布的Jar包。...将webwork-2.2.7.jar放到你部署目录下WEB-INF\lib目录里,同时将WebWrok解压目录lib\default下的所有.jar文件也拷贝到WEB-INF\lib目录,这些是运行WebWork必需要用到的jar包。

    webwork-2.2.7.part06

    WebWrok最新发布的Jar包。...将webwork-2.2.7.jar放到你部署目录下WEB-INF\lib目录里,同时将WebWrok解压目录lib\default下的所有.jar文件也拷贝到WEB-INF\lib目录,这些是运行WebWork必需要用到的jar包。

    webwork-2.2.7.part05

    WebWrok最新发布的Jar包。...将webwork-2.2.7.jar放到你部署目录下WEB-INF\lib目录里,同时将WebWrok解压目录lib\default下的所有.jar文件也拷贝到WEB-INF\lib目录,这些是运行WebWork必需要用到的jar包。

Global site tag (gtag.js) - Google Analytics