`

struts2标签使用注意事项

 
阅读更多
   本文主要为项目过程中碰到Struts2的s标签不能使用的问题的一个记录,先将产生的原因记录如下:
因过滤器配置不当引起s标签不能使用
在jsp页面中加入了<%@ taglib uri="/struts-tags" prefix="s" %>后使用s标签报错,错误如下:
org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/stores/AddStoresIn.jsp at line 95

92: </head>

93:
94: <body>
95: <s:text name="gtest">asfdasfdsf</s:text>
96: <table class="mainTable" width="100%" border="0" cellspacing="0"
97: cellpadding="0">
98: <tr>


Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

root cause
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. - [unknown location]
org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:60)
org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:44)
org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:48)
org.apache.jsp.jsp.stores.AddStoresIn_jsp._jspx_meth_s_005ftext_005f0(AddStoresIn_jsp.java:462)
org.apache.jsp.jsp.stores.AddStoresIn_jsp._jspService(AddStoresIn_jsp.java:152)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
参考文章:http://www.huomo.cn/developer/article-bd15.html
原因:因为web.xml中的
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
拦截的是*.action的请求行为,如果不经过action就无法调用struts2的标签包,使得s标签无法使用
解决办法:把<url-pattern>*.action</url-pattern>改为<url-pattern>/*</url-pattern>或者通过action访问带s标签的jsp页面
另一个注意事项,如果使用的是servlet2.3以下的规范须在web.xml加入taglib申明。。。。。
分享到:
评论
1 楼 daizhonghai1314 2012-11-01  
  自己写的tld怎么引用,一直报错

相关推荐

    使用Struts 2标签的注意事项

    Struts 2 标签的使用注意事项 Struts 2 是一个基于MVC架构的Java Web应用程序框架,它提供了一系列的标签来简化Web开发。然而,在使用Struts 2标签时,需要注意一些重要的事项。 首先,在使用Struts 2标签之前,...

    struts2标签使用方法

    下面我们将详细探讨Struts2标签的使用方法以及EL(Expression Language)表达式。 1. **Struts2标签库**: - **s:textfield**: 用于创建输入字段,可以设置属性如name、value、size、maxlength等。 - **s:...

    struts2使用json注意事项

    在使用Struts2框架开发Web应用时,JSON(JavaScript Object Notation)作为一种轻量级的数据...理解并掌握这些注意事项,可以帮助开发者更有效地在Struts2框架中利用JSON进行数据交换,提高应用程序的效率和安全性。

    struts2 标签使用帮助

    本文将深入探讨Struts2的标签使用,主要分为以下几个部分: 1. **标签库介绍** Struts2的标签库包括核心标签库、展示标签库、逻辑标签库等。核心标签库提供基本的控制结构,如迭代、条件判断等;展示标签库主要...

    Struts2 API 以及标签手册

    中文版的`struts2-tags-API.chm`文件是Struts2标签库的详细文档,包含了每个标签的用法、属性、示例和注意事项。通过查阅这个手册,开发者可以更深入地理解如何在JSP页面上使用Struts2标签,提高开发效率和代码质量...

    struts标签库使用大典

    6. **优势与注意事项** 使用Struts标签库能提高开发效率,减少JSP页面中的脚本代码,使页面更易于维护。然而,需要注意的是,随着Struts框架的发展,Struts2引入了更多功能强大的标签,而Struts1.x逐渐被淘汰。在新...

    Struts Struts1例子Struts注意事项

    在使用Struts1时,有几点注意事项: 1. **配置文件准确性**:struts-config.xml是Struts框架的核心配置文件,必须正确配置Action、ActionForm和ActionMapping,否则可能导致请求无法正确处理。 2. **异常处理**:...

    Struts使用技巧和注意事项

    ### Struts 使用技巧和注意事项 #### 一、Struts Validate 使用详解 在 Struts 框架中,数据验证是一项非常重要的功能,它确保了应用程序能够接收到合法且符合预期的数据输入。Struts 提供了多种方式进行数据验证...

    struts2标签库详解

    以上是对Struts2标签库的详细概述,涵盖了常用标签的使用方法和注意事项。了解并熟练应用这些标签,能够帮助开发者更好地构建Struts2应用,提升开发效率。文档中的"Struts2标签库详解.doc"应该包含了更详细的实例和...

    struts2做的分页标签

    6. **注意事项**: - 考虑到性能,不要一次性加载所有数据,而是根据当前页和每页条目数量动态查询。 - 分页标签的设计应考虑边缘情况,如第一页和最后一页的处理,以及无效的页码请求。 - 考虑用户体验,提供...

    JSP Struts之HTML标签库详解

    **使用注意事项** 使用Struts标签时,应注意避免在属性值中直接使用scriptlet表达式,而是应使用完整的表达式。例如,`&lt;html:link&gt;`标签的`href`属性应包含整个URL路径。 总结起来,JSP Struts的HTML标签库大大简化...

    struts2的jar包,中文教程,标签介绍

    它可能包括了安装配置、MVC架构、Action类的创建、结果类型、拦截器、插件使用、国际化、异常处理、安全注意事项等内容。通过阅读这份教程,开发者可以系统地学习Struts2框架,解决开发过程中的问题。 然后是Struts...

    Struts标签解压包

    6. **最佳实践**:提供了使用Struts2标签的最佳实践和注意事项,以提高代码的可读性和可维护性。 7. **问题排查**:可能还涵盖了在实际开发中遇到的一些常见问题及解决方法。 通过深入学习这个解压包提供的内容,...

    Java EE Struts 标签

    7. **注意事项**: - 确保正确导入Struts标签库:在JSP文件中通过`&lt;%@ taglib %&gt; `指令引入。 - 标签的使用需遵循语法规则,例如属性的大小写敏感,标签的嵌套等。 - 与Struts配置文件的配合:Struts标签的功能...

    Struts1.2标签库资料

    - 提高可维护性:Struts标签使得代码更加清晰,降低了耦合度。 - 动态语言支持:标签可以动态地生成HTML,减少了硬编码,适应需求变化。 - 自动数据绑定:HTML标签库的标签可以直接与ActionForm或Action类的属性...

    struts2简单案例

    6. **注意事项** - 使用Struts2时要注意安全问题,如SQL注入、XSS攻击等,合理使用Struts2的安全拦截器。 - 理解MVC模式的重要性,避免在JSP中编写过多的业务逻辑。 - 保持良好的编程习惯,如代码注释、命名规范...

    Migrating From Struts1 To Struts2

    ### 从Struts1迁移到Struts2 #### 引言 随着技术的发展与进步,Struts1作为曾经广泛使用的Web应用框架,逐渐被Struts2等新一代框架所取代。...通过上述步骤和注意事项,可以确保迁移过程顺利进行。

    struts标签库文档

    **关于Struts标签的使用注意事项** - 虽然Struts标签设计目的是减少使用scriptlet(Java代码片段),但在必要时,可以使用scriptlet表达式,但应确保提供完整的属性值。 - 使用嵌套属性引用时,如`Property="foo.bar...

    Struts标签 解说和练习

    本教程将详细解说Struts标签的使用,并提供实战练习,帮助开发者更好地理解和掌握这一技术。 一、Struts标签简介 Struts标签库是Apache Struts框架的一部分,它提供了丰富的标签来处理常见的JSP任务,如显示和隐藏...

    eclipse 配置struts2

    **标题:“Eclipse配置Struts2”** 在Java Web开发中,Struts2是一个非常流行的MVC(模型-...文件列表中的“eclipse配置struts.docx”可能包含了更详细的配置步骤或注意事项,如果需要更详尽的信息,建议查阅该文档。

Global site tag (gtag.js) - Google Analytics