<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
最近使用struts,在使用标签的时候,出现了这样一个问题。
原本使用标签,引用方法是默认配置:web.xml:
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/struts/*</url-pattern>
</filter-mapping>
在页面中引用struts标签:
<%@ taglib prefix="s" uri="/struts-tags"%>
然后点击下面链接访问页面:
//用户管理
$("#usersManage").click(function(){
$("#iframe").attr('src','sysconfig/userlist.jsp');
});
结果报错:
The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher needed for this tag.
原因是:如果想要在jsp文件中,采用 struts的tag,那么jsp必须是通过action跳转得到,也就是必须通过web.xml所配置的过滤器访问文件,否则会有异常。
解决方法:
在web.xml文件中添加一个对.jsp的过滤器,代码如下:
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/struts/*</url-pattern>
</filter-mapping>
分享到:
相关推荐
5. **值栈(Value Stack)**:Struts2使用值栈存储请求中的数据,简化视图层的数据访问。 **JSP技术的基本概念:** 1. **指令元素(Directives)**:如page、include、taglib,它们用于设置全局属性、包含其他页面...
【标题】"jsp+struts2完整实例"揭示了这个项目是基于Java Web技术栈,主要使用了JSP(JavaServer Pages)和Struts2框架来实现一个完整的应用程序。Struts2是一个开源的MVC(Model-View-Controller)框架,它在Java ...
在Struts2中,我们可以创建一个Action类,定义对应的方法(如addAction、deleteAction、updateAction和listAction),然后配置struts.xml文件以指定这些方法与URL的映射。对于每个方法,我们可以通过ModelDriven接口...
Java Struts2 OGNL(Object-Graph Navigation Language)标签是用于在JSP页面中动态地访问和操作Java对象的强大工具。以下是对这些知识点的详细解释: 1. **对象树的访问**: OGNL允许开发者通过点号(`.`)来遍历...
EL则允许在JSP页面中直接访问JavaBean属性,使得页面与后台数据的交互更为简洁。 综上所述,"struts2+jsp宿舍管理系统"整合了Struts2的控制能力、JSP的视图展示以及MySQL的数据存储功能,构建了一个功能完善的Web...
在这个系统中,Struts2作为控制器负责处理用户的请求,Ibatis作为数据持久层框架用于数据库操作,而jsp和jQuery则分别在视图和前端交互上发挥作用。DWZ(UI Framework)可能被用作前端页面的布局和组件库。 **...
在Struts2中,访问web元素是开发过程中常见的需求,比如获取请求参数、session数据或者cookie等。本篇文章将详细介绍Struts2中四种访问web元素的方法。 1. **Action上下文(ActionContext)** ActionContext是...
通过OGNL,可以在JSP页面中直接访问Action中的属性,或者在Action中动态设置模型数据。 6. **Struts2配置**:包括struts.xml或struts.properties等配置文件,用于定义Action、拦截器、结果类型等。在本项目中,可能...
Action是Struts2中的核心组件,它是处理用户请求并返回结果的对象。每个Action对应一个特定的业务逻辑,通过配置文件(如struts.xml)来定义Action与URL的映射关系。当用户发起请求时,Struts2的Dispatcher Servlet...
在Struts2的视图层,例如JSP中,可以使用OGNL(Object-Graph Navigation Language)表达式直接访问Servlet API。例如,`#request`代表`HttpServletRequest`,`#response`代表`HttpServletResponse`。 5. **使用...
- **Struts2**: Struts2中的Action更像是工厂模式下的产品,每个Action实例都是线程安全的。Struts2提供了ActionSupport基类来简化Action的实现。Action本身可以是任何实现了特定接口的Java对象,甚至是普通的POJO。...
jsp通过Ajax无刷新获取Action返回的模拟数据,然后通过struts2转化成json数据返回页面....这里面Map,List,对象等等,一些常用的操作都有。主要的代码在Action和 json.js里面。适合新手入门
4. **Action类**:Struts2中的核心组件,负责接收HTTP请求,调用Service层进行业务处理,然后将结果返回给视图。 5. **Interceptor(拦截器)**:Struts2的拦截器可以实现一些通用的功能,如权限验证、日志记录等,...
在Struts2中,Action类可以有各种属性,这些属性可以直接与HTTP请求参数关联。当用户提交表单时,Struts2框架会自动将请求参数绑定到Action的相应属性上,简化了数据的处理。 3. **Domain Model(实体模型)** ...
总之,通过使用Servlet Filter技术,我们可以对未登录用户的JSP页面访问进行有效控制,避免了非法用户绕过登录页面直接访问系统其他页面的风险。这种做法不仅增强了系统的安全性,也提升了用户体验,因为它确保了...
4. **使用JSP的隐式对象request或session**:在Servlet或者JSP中,可以将数据放入request或session,然后在JSP页面上直接访问这些数据,绕过Action。 需要注意的是,不使用Action处理请求虽然可能简化流程,但也...
在Struts2中,我们可以使用OGNL(Object-Graph Navigation Language)表达式来访问Action中的属性并展示在页面上。 4. **拦截器(Interceptors)**:Struts2提供了一种机制,允许在Action执行前后执行一些通用任务...
Struts2 框架提供了访问 Servlet API 的功能,允许在 Action 中访问 Servlet 的各种对象。 Struts2 框架提供了一个灵活、可扩展的解决方案来构建企业级 web 应用程序,它具有强大的功能和灵活的配置方式。
它允许开发者在JSP或其他视图层中直接访问Action对象的属性,或者设置模型数据。例如,`${user.name}`可以在页面上显示User对象的name属性。 5. **Struts2配置**:Struts2的配置分为XML配置和注解配置两种方式。XML...
- OGNL(对象图导航语言)是一种强大的表达式语言,用于在Struts2中访问和操作对象。OGNL的根对象是`ValueStack`,它是Struts2框架内部用于存储请求作用域中的所有对象的容器。 #### 九、在jsp页面中可以通过Struts2...