hin*_*ind 6 jstl properties taglib
我试图使用taglib从JSTL中读取"属性文件",但我无法访问它
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%>
Run Code Online (Sandbox Code Playgroud)
我已经在web.xml中正确找到了tld文件,我确定这一点
<taglib>
<taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/lib/fmt.tld</taglib-location>
</taglib>
Run Code Online (Sandbox Code Playgroud)
属性文件名是msg.性能
<fmt:bundle basename="msg">
<fmt:message key="error.more" />
</fmt:bundle>
Run Code Online (Sandbox Code Playgroud)
我一直在
???error.more???
Run Code Online (Sandbox Code Playgroud)
而不是属性文件中的消息
我认为问题在于找到属性文件,或者在基本名称中
<fmt:bundle basename="msg">
Run Code Online (Sandbox Code Playgroud)
我应该在哪里找到属性文件,如何在代码中引用它?
感谢大家
Run Code Online (Sandbox Code Playgroud)<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%>
这是错误的URI.这适用于旧的JSTL 1.0,它长期失效.对于JSTL 1.1,您应该使用http://java.sun.com/jsp/jstl/fmt.
我已经在web.xml中正确找到了tld文件,我确定这一点
Run Code Online (Sandbox Code Playgroud)<taglib> <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri> <taglib-location>/WEB-INF/lib/fmt.tld</taglib-location> </taglib>
修复taglib URL时,这是不必要的.将其从您的删除,web.xml并删除所有这些松散的TLD文件.你应该只有jstl.jar和standard.jar在/WEB-INF/lib.或者当你使用JSTL 1.2时,只需要jstl-1.2.jar.没有什么需要做的.
属性文件名是msg.性能
Run Code Online (Sandbox Code Playgroud)<fmt:bundle basename="msg"> <fmt:message key="error.more" /> </fmt:bundle>我一直在
Run Code Online (Sandbox Code Playgroud)???error.more???而不是属性文件中的消息我认为问题是在定位属性文件,或在
<fmt:bundle basename="msg">我应该在哪里找到属性文件的基本名称,以及如何在代码中引用它?
把它放在类路径中.在您的特定情况下,使用基本名称msg,您需要将msg.properties文件放在类路径的根目录中.
小智 3
尝试
< fmt:bundle basename="msg"/>
< fmt:message key="error.more" />
Run Code Online (Sandbox Code Playgroud)