struts2 - 为什么不能访问请求中的属性?

标签 struts2

我想访问请求中的一些属性,例如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 中没有显示任何内容。那为什么?

最佳答案

不确定为什么需要这个,但只有 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="/"/>

关于struts2 - 为什么不能访问请求中的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15755583/

相关文章:

java - Strust2从字符串到字节数组的类型转换错误?

java - 将 sitemesh 与 struts2 结合使用

java - Struts 2 session 超时

java - 如何使用 ajax 显示 DOJO 自动完成值

java - Struts 2 找不到从操作返回的成功结果

java - Struts2 datetimepicker 不显示

jsp - 一次将多个文件上传到Struts2 @Action

java - Struts2 在得到结果后是否关闭 "InputStream"?

java - 如何在 Struts 2 optgroup 中显示 Map 值的元素(对象列表)?

java - 如何确定 JSP 上填充了哪个输入字段?