我想访问请求中的某些属性,例如请求中的base
属性,
以下是请求中值的一部分
request ...base=/ecs, stack=com.opensymphony.xwork2.ognl.OgnlValueStack@11c4b31}, __cleanup_recursion_counter=1, .freemarker.RequestParameters=freemarker.ext.servlet.HttpRequestParametersHashModel@1c00cb4 ...
我使用<s:debug /><s:property value="%{#request.base}" />
访问base
中的request
属性,但我的jsp中没有显示任何内容。那为什么呢?
答案 0 :(得分:3)
不确定为什么需要此功能,但只有base
内的request
位于.freemarker.TemplateModel
ScopesHashModel
内。所以你需要使用方法get
从那里获取东西。
<s:property value="#request['.freemarker.TemplateModel'].get('base')" />
试试这个:
<s:property value="#request['javax.servlet.include.context_path']"/>
<强>更新强>
如果您只需要上下文路径,请使用<s:url>
标记。
<s:url value="/"/>
答案 1 :(得分:-1)
如果您想访问以下请求参数
<s:property value="#parameters['base']"/>
如果您想访问请求的属性,那么以下应该可以正常工作
<s:property value="#request.base"/>
或
<s:property value="#request['base']" />