1、enjoy无法读取request中的attribute但可以读取model中的attribute
@RequestMapping
public String menuTree(HttpServletRequest request,Model model,HttpSession session) {
System.out.println(testService.getString());
request.setAttribute("test", testService.getString());//无法读取
model.addAttribute("test", testService.getString());//可读取
session.setAttribute("test", testService.getString());//可读取
return "NewFile";
}
#(test)
#(session.test)
2、我想把contextPath通过addShareObject传到页面
但在配置bean时怎么传2个参数
<bean id="viewResolver" class="com.jfinal.template.ext.spring.JFinalViewResolver">
<property name="devMode" value="true" />
<property name="sharedObject"></property>
<property name="sessionInView" value="true" />
<property name="prefix" value="/view/" />
<property name="suffix" value=".html" />
<property name="order" value="1" />
<property name="contentType" value="text/html;charset=utf-8" />
</bean>
还有就是contextPath是在request里面,共享request是否是线程安全的
exposeRequestAttributes = true
由于回复不支持 xml 标记,上面的配置改成 propertye name="setExposeRequestAttributes" value="true" 即可,记得搞定后回来再反馈一下
contextPath 可以设置为 sharedObject,这样就不会污染 request 中的 attribute 了,拿到 JFinalViewResolver 对象,然后调用一下 addSharedObject(...) 将 contexPath 添加进来就可以了
contextPath 对于一个启动后的项目来说一直是不变的一个常量,所以在 request 里面是线程安全的