我正在为我的 .xhtml 页面使用 messages.properties 包。如果 key 有一个名称,我就可以访问并使用它们。链接同一类别的键并将它们除以 .
会导致问题。
例如 消息.属性:
bookTitle=Title
我像这样加载我的包:
<f:loadBundle var="msg" basename="messages"/>
并像这样使用 bundle :
<p:column headerText="#{msg.bookTitle}" filterBy="#{row.book.title}" filterMatchMode="contains">
<h:outputText value="#{row.book.title}" />
</p:column>
这工作得很好。
问题:
使用:
book.title=Title
book.url=URL
我无法使用 #{msg.book.title}
访问值并收到以下错误消息:
headerText="#{msg.book.title}": Property [title] not found on type [java.lang.String]
我正在使用 Lombok 生成 getter 和 setter。我担心问题是第一个键 book
作为字符串检索,然后 lombok 尝试在字符串对象(book)上使用 getTitle()
方法,从而抛出异常(exception)
最佳答案
使用
#{msg['book.title']}
相反。应该是这样。
恕我直言,这种语法只能用于名称中包含点的键。
顺便说一句,Lombok 没有参与其中。
关于java - messages.properties 键具有多个点不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55282178/