无法读取JSP中的属性值
问题描述:
我在Java 6和Spring 3.0上运行Java Web应用程序。无法读取JSP中的属性值
我有属性文件由Web应用程序使用,并由服务器启动时由spring框架加载。
config.properties
url=http://www.url.com
test.url=http://www.test.com
dev.url=http://www.dev.com
我有要求在Java和JSP代码来使用的属性值。我可以使用Spring 3.0中提供的注释访问java中的值:@Value("${test.url}")
要使用JSP中的属性,我试图将属性加载到servlet上下文中,以便可以直接在JSP中引用属性
servletContext.setAttribute("props", properties);
在我的JSP,当我打印${props}
,它会导致以下...
{url=http://www.url.com,test.url=http://www.test.com,dev.url=http://www.dev.com}
但是当我打印${props.test.url}
,不打印输出(同一作品罚款${props.url}
)。
这是一个问题,或者我做错了什么。我如何获得${props.test.url}
在jsp中的工作?
答
你的EL语法不太对。试试这个:
${props['test.url']}
的${props.url}
语法工作由于解决地图的内容,就好像是一个JavaBean属性便利的语法,但在地图密钥本身含有.
这是行不通的,在在这种情况下,您应该使用上面显示的完整的地图查找语法。
非常感谢。这工作。我仍然感到惊讶......它怎么没有打我:( – Johnny 2011-04-22 18:38:53
你应该接受答案,当他们解决你的问题,约翰尼!谢谢skaffman。 – 2011-07-03 07:38:32