请问如何在jsp页面中通过strut标签或者其他方式获取struts.xml中配置的action.extendsion值:
<constant name="struts.action.extension" value="html">
在action中可以通过DefaultSettings.get("struts.action.extension");获取到。
不知道能否在jsp中直接获取,难道只能通过action中获取在通过jsp获取action中的值?
问题补充:
请问如何在jsp页面中通过strut标签或者其他方式获取struts.xml中配置的action.extendsion值:
<constant name="struts.action.extension" value="html">
在action中可以通过DefaultSettings.get("struts.action.extension");获取到。
不知道能否在jsp中直接获取,难道只能通过action中获取在通过jsp获取action中的值?
感谢两位的回答,我觉得这个值应该可以直接通过struts2标签获取的,不需要引入什么包,其实两位的回答与action中获取方式是一样的
(有人说这个值已经在值站里了,可我不知道怎么取)
问题补充:
请问如何在jsp页面中通过strut标签或者其他方式获取struts.xml中配置的action.extendsion值:
<constant name="struts.action.extension" value="html">
在action中可以通过DefaultSettings.get("struts.action.extension");获取到。
不知道能否在jsp中直接获取,难道只能通过action中获取在通过jsp获取action中的值?
问题补充:
请问如何在jsp页面中通过strut标签或者其他方式获取struts.xml中配置的action.extendsion值:
<constant name="struts.action.extension" value="html" />
在action中可以通过DefaultSettings.get("struts.action.extension");获取到。
不知道能否在jsp中直接获取,难道只能通过action中获取在通过jsp获取action中的值?
感谢两位的回答,我觉得这个值应该可以直接通过struts2标签获取的,不需要引入什么包,其实两位的回答与action中获取方式是一样的
(有人说这个值已经在值站里了,可我不知道怎么取)
经过测试在action中DefaultSettings.get("struts.action.extension");也无法取到。无语中..
看了一下,action的constant变量放在FilterDispatcher的actionMapper里面,但是它是私有的:
[code="java"]private static ActionMapper actionMapper;[/code]
而且没有提供方法可以获取。
所以只能通过反射去获取了,呵呵。可以在你的BaseAction里面通过反射去拿到,然后传给jsp页面。
[quote]DefaultSettings.get("struts.action.extension");[/quote]
[code="java"]
<%=DefaultSettings.get("struts.action.extension")%>
[/code]
试试不就知道了吗,呵呵
跟在action里面使用一样,只是需要在jsp里面导入DefaultSettings
[code="jsp"]<%@ page import="org.apache.struts2.config.DefaultSettings" %>[/code]
还是这样获取:
[code="jsp"]
<%
DefaultSettings.get("struts.action.extension");
%>
[/code]
刚试了一把,在jsp里面这样获取还会失败:DefaultSettings.get("struts.action.extension");
看来还只能在action里面获取之后传给jsp页面了。可以在BaseAction里实现Preparable接口,然后再prepare方法里面获取,以后就可以在jsp页面直接获取了。
[code="java"]
value="@org.apache.struts2.config.DefaultSettings@get("struts.action.extension")"
[/code]
通过OGNL表达式可以调用静态方法的,试试这样!