当前位置:首页 > 开发 > 行业应用 > 正文

struts2标签使用需注意的几个地方

发表于: 2011-10-10   作者:bingyingao   来源:转载   浏览次数:
摘要: 1.在jsp页面上直接使用struts2的s标签,要求必须经过FileterDispatcher过滤,否则总会报错 org.apache.jasper.JasperException: The Struts dispatcher cannot be found.  This is usually caused by using Struts tags without the assoc
1.在jsp页面上直接使用struts2的s标签,要求必须经过FileterDispatcher过滤,否则总会报错
org.apache.jasper.JasperException: 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.

解决办法:
<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
	</filter>
	<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>
<!--因为若在jsp页面使用struts标签,就必须经过FilterDispacher的过滤,这样配置便可保证所有的jsp都经过FilterDispatcher了,否则要为每一个jsp写配置一个action地址转入-->
	</filter-mapping>





2.在使用struts标签的过程中,会生成一些table,td标签并且标签自动换行,去除的方法如下:
1.在标签中加theme="simple"
<s:textfield name="userName" theme="simple" ></s:textfield>--普通文本框的使用
2.在struts.xml文件中进行配置:
<constant name="struts.ui.theme" value="simple" />
这便可去除标签并解决自动换行的问题。

3.ognl表达式不能直接访问static方法的问题


今天在页面直接用ognl调用方法:

<s:property value="@com.DateUtil@getTimeArray()"/>来获取时间,但始终进不去方法。

后来把此代码拷到另外一个工程中,就可以正常调用方法了。

查了网上资料,原因如下,有些struts2的配置项里其中有一个名为struts.ognl.allowStaticMethodAccess的配置项默认是false;

解决办法:

在struts.properties中配置:
struts.ognl.allowStaticMethodAccess=true


或者

在struts.xml中配置:
<constant name="struts.ognl.allowStaticMethodAccess" value="true" />


可直接调用方法:
eg: <a
                          href="http://v.t.sina.com.cn/share/share.php?url=http://<s:property value="couponDetailVO.cityGbName"/>.koubei.com/youhuiquan/<s:property value="couponDetailVO.id"/>&title=<s:property value="@java.net.URLEncoder@encode(couponDetailVO.name,'UTF-8')"/>"
                          class="k2-icon-node-m k2-icon-s-sina" target="_blank">分享到新浪微博</a>
问题解决

struts2标签使用需注意的几个地方

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
1.输出打印 System.out.print(s);打印字符串S System.out.println(s);打印字符串S 并换行 <span
1. 条件标签 JSTL: <!--<br /> <br /> Code highlighting produced by Actipro Code
数据标签主要包括: action bean data debug i18n include param push set text url property 1 <
工程中使用struts2标签   一、 struts2标签定义文件在struts2-core-2.0.11.1META-INF 下面,文件名
Web 应用区别于普通的站点之处在于 Web 应用可以创建一个动态的响应。为了使从一个页面中链接一个动
先看代码: 非IE浏览器效果: IE浏览器效果: 注意到在IE中,代码中的<style>p{background:#f
1. 新水浒传中好多处出现玉米场景,这是极其荒唐的,水浒传是宋朝宋徽宗(公元1100年前后)的故事,
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号