`
liyixing1
  • 浏览: 961824 次
  • 性别: Icon_minigender_1
  • 来自: 江西上饶
社区版块
存档分类
最新评论

webwork的过滤器

阅读更多
在webwork的架构中,标准过滤器推荐从ActionContextCleanUp,然后是其他过滤器,最后才是FilterDispatcher,FilterDispatcher通常是将请求提交给ActionMapper。ActionContextCleanUp是首要的任务是为了集成SiteMesh服务。它会通知FilterDispatcher在正确的时间清除请求。否则,ActionContext将在SiteMesh之前会清理数据。


通常我们会让SiteMesh过滤器排在第一位,而FilterDispatcher排在第二位,如我们希望SiteMesh修修饰器中使用webwork特性,包括value stack,但FilterDispatcher将清除ActionContext,因此修饰器就访问不到想要的数据了。因此如果我们想要让sitemesh访问到webwork特性,就要将ActionContextCleanUp位于他们的前面

webwork提供了一个SiteMesh的PageFilter过滤器的一个扩展版本,协助其与Velocity和FreeMarker集成。建议使用该过滤器代替SiteMesh的过滤器。如果想要使用velocity作为siteMesh修饰器,推荐使用VelocityPageFilter过滤器。位于ActionContextCleanUp和FilterDispatecher之间。这样Velocity修饰器可以使用$stack和$request来访问webwork的变量了。而如果想要使用FreeMarker作为sitemesh修饰器,使用FreeMarkerPageFilter。位于ActionContextCleanUp和FilterDispatecher之间。这样就可以通过${stack}和${request}来访问webwork变量了。

Velocity的过滤器配置
<filter>
<filter-name>webwork-cleanup</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.ActionContextCleanUp</filter-class>
</filter>
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.webwork.sitemesh.VelocityPageFilter</filter-class>
</filter>
<filter>
<filter-name>webwork</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>webwork-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>webwork</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

freemarker的过滤器配置
<filter>
<filter-name>webwork-cleanup</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.ActionContextCleanUp</filter-class>
</filter>
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.webwork.sitemesh.FreeMarkerPageFilter</filter-class>
</filter>
<filter>
<filter-name>webwork</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>webwork-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>webwork</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
分享到:
评论

相关推荐

    WEBWORK

    在提供的示例中,`&lt;filter&gt;` 和 `&lt;filter-mapping&gt;` 元素定义了名为 `webwork` 的过滤器,它将所有以 `/` 开头的 URL 映射到 `FilterDispatcher` 类。这使得 WebWork 能够处理所有传入的请求。 2. **Taglib** 配置...

    WebWork2.0讲解说明

    WebWork2.0的配置主要集中在`webwork.xml`文件中,包括Action配置、Interceptor配置、过滤器设置等。配置文件可以定制Action的路径映射、指定Action的拦截器链,以及设定全局或局部的配置选项。 四、WebWork2.0实践...

    struts2.0字符编码使用过滤器

    本示例通过使用过滤器(Filter)来解决这个问题,确保了数据在传输过程中的正确编码,从而避免乱码。 1. **Struts2.0框架介绍** Struts2.0是一个基于MVC设计模式的Java Web框架,它整合了WebWork和Struts1的优点,...

    webWork,xwork.xml,web.xml配置

    在WebWork中,`web.xml`主要用来设置Servlet、过滤器(Filter)以及监听器(Listener): 1. **WebWork Dispatcher Servlet**:WebWork通过DispatcherServlet处理HTTP请求。你需要在`web.xml`中注册这个Servlet,并...

    webwork简单例子

    - web.xml文件,配置了WebWork的DispatcherServlet和过滤器。 - 可能还有其他的资源文件,如图片、CSS样式表或JavaScript脚本。 了解WebWork的工作原理和这个简单例子,对于学习Java Web开发以及理解MVC模式是非常...

    webwork中文帮助文档

    - 配置Web应用的`web.xml`文件,设置过滤器和监听器来初始化WebWork。 - 需要配置Action配置文件,定义Action类及其关联的视图和URL映射。 2. **Action类**: - Action类是WebWork的核心,它处理用户请求,执行...

    Webwork教程

    - **WebWork**相较于**Struts1.x**提供了更为灵活的配置方式,支持更丰富的数据类型转换及验证机制,并且采用了拦截器(Interceptor)而非过滤器(Filter)的设计模式。 - **Struts2**在WebWork的基础上进行了扩展...

    过滤器对于session周期的控制

    例如,在上面的例子中,`OpenSessionInViewFilter`被配置在`webwork`过滤器之前,这是为了确保在处理Struts2相关的请求之前,Session已经被打开。 #### 单个Session vs 多个Session 当`singleSession`参数设置为`...

    java私塾][Spring讲解+webwork2整合+webwork2整合全套

    - **Interceptor**:类似于过滤器,可以在请求到达Action之前或之后执行某些操作。 - **Module**:一组相关的Action和配置文件的集合。 - **Configuration**:用于配置Action、Interceptor等组件的信息。 ### ...

    webwork所需jar包

    3. 配置Web.xml:更新Web应用的配置文件,包括Servlet和过滤器的配置,以启用WebWork。 4. 编写Action:创建符合WebWork规范的动作类,定义动作方法和结果。 5. 创建视图:根据Action的结果,创建相应的JSP或...

    webwork之HelloWorld篇

    1. `web.xml`:这是Web应用程序的部署描述符,用于配置Servlet和过滤器。在这里,你需要配置WebWork的DispatcherServlet和ActionServlet,以及相关的监听器。 2. `struts-config.xml`或`webwork-config.xml`:这是...

    webwork 配置文件

    2. **过滤器(Filter)**:WebWork通常会使用一个或多个过滤器来处理请求,如`ActionServletFilter`,它确保所有的请求都被WebWork正确处理。 3. **初始化参数**:在这里,你可以设置WebWork的初始化参数,如`xwork...

    webwork2.2.4包

    2. **配置Web.xml**:在你的Web应用的`web.xml`配置文件中,你需要配置WebWork的过滤器和监听器,以便拦截HTTP请求并启动WebWork。 3. **创建动作类**:编写Java类作为动作,这些类将处理HTTP请求并调用业务逻辑。 ...

    webwork+spring+hibernate入门实例

    1. **配置WebWork**: 配置web.xml以启动WebWork,设置ActionServlet和过滤器。 2. **配置Spring**: 创建Spring配置文件,定义bean并实现依赖注入。 3. **配置Hibernate**: 配置Hibernate的hibernate.cfg.xml文件,...

    webwork2.0 webwork2.0 帮助文档

    2. 配置`web.xml`文件,将WebWork的Servlets和过滤器添加到Web应用配置中。 3. 创建基本的`Action`类,这通常是你的业务逻辑的入口点。 4. 设定视图解析,例如使用JSP或FreeMarker模板。 5. 编写一个简单的"Hello, ...

    WebWork2.2入门

    接着,配置 Web 应用的 `web.xml` 文件,添加 WebWork 的过滤器和上下文初始化参数。这些配置将告诉 WebWork 如何处理 HTTP 请求并指定应用程序的主配置文件位置。 ### 3. 创建第一个 Action 创建一个 Action 类,...

    webwork2.2.7+spring+hibernate+oracle整合

    - **FilterDispatcher配置**:通过`&lt;filter&gt;`和`&lt;filter-mapping&gt;`标签配置了WebWork的`FilterDispatcher`过滤器,使其对所有的HTTP请求进行拦截处理。 - **作用**:这一步是让WebWork能够捕获所有进入应用的HTTP...

    搭建WEBWORK+SPRING+HIBERNATE框架

    - 在`web.xml`中配置过滤器和Servlet,如`FilterDispatcher`和`ServletDispatcher`,它们是WebWork的核心组件,负责拦截请求并分发到相应的Action。 - 定义`webwork`的taglib,确保视图层能正确解析WebWork标签。 ...

Global site tag (gtag.js) - Google Analytics