当前位置: 首页 > 知识库问答 >
问题:

JSF资源包驻留在JBoss 7模块中时如何声明?

计寒
2023-03-14

我正在移动我们的JSF消息。属性,以便QA和ops人员可以修改消息,而无需生成新的war。

我创建了一个JBoss 7模块,并将messages.properties文件放在$JBOSS_HOME/模块/com/acme/收入/main/messages.properties.我更新了jboss-deployment-structure.xml以包含

<module name="com.acme.revenue"/>

我放了一个模块。$JBOSS\u HOME/modules/com/acme/revenue/main中的xml文件。它包含:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="com.acme.revenue">
    <resources>
        <resource-root path="."/>
    </resources>
</module>

这一切都有效。在java代码中,我可以调用:

ResourceBundle bundle = ResourceBundle.getBundle("messages", Locale.getDefault());
bundle.getString("TargetingKey") 

并返回转换后的值“收入目标”。但是在JSF中。xhtml文件代码调用#{messages.TargetingKey},但它不起作用,因为JSF似乎找不到资源包。

在更改面配置之前。xml包含以下内容,并且运行良好:

<resource-bundle>
    <base-name>com.acme.revenue.messages</base-name>
    <var>messages</var>
</resource-bundle>

如何修复这个JSF声明以找到捆绑包并显示消息?

谢谢你。

共有1个答案

花高爽
2023-03-14

创建模块时,您给出了com名称。顶峰revenue这就像faces配置的静态导入。因此,在资源包声明中,您必须只在基本名称中输入属性文件的文件名。

<resource-bundle>
    <base-name>messages</base-name>
    <var>messages</var>
</resource-bundle>
 类似资料:
  • 环境:JSF2.1.7Seam2.3.0JBoss5.1.2 我的应用程序有一个需要本地化的字符串 “我同意WorldSite的隐私政策和Cookie通知” 斜体的隐私政策和Cookie通知是指向其他页面的超链接。 最初我们的facets是这样设置的: 注意:我们已经准备好了URL重写,需要/jsf/Notice。xhtml并重写为 这允许对各个键进行零碎的转换 但这需要一些语言的变通方法(在“i

  • 问题内容: 我有一个使用Java Webstart技术的项目。我决定将Java版本从8升级到9。但是,在编译时遇到以下错误: 我试图将其包含到类路径中,但仍然存在相同的问题。 问题答案: 看起来默认情况下,类路径上的代码未解析 java.jnlp (非常类似于Java EE模块 )。解决的办法是用明确添加(两者并接受参数)。 JEP 261:模块系统 或此博客文章中讨论了此选项。

  • 因此,我在工作SOAP客户机示例中使用了SOAP示例,将其放入一个文件,并尝试编译它(Debian上的Openjdk 9): 在谷歌搜索了一些之后,我发现编译和运行 作品。请参阅此视频了解一般背景:https://www.youtube.com/watch?v=y8bpKYDrF5I 现在,问题: 编译器不应该自动添加java模块吗。xml。ws?(因为它显然知道需要它)这是javax中的一个bu

  • 问题内容: 因此,我在WorkingSoap客户端示例中使用SOAP示例,将其放入文件中,然后尝试对其进行编译(Debian上的Openjdk 9): 谷歌搜索了一些之后,我发现编译和运行为 作品。另请参见此视频的一般背景:https : //www.youtube.com/watch?v=y8bpKYDrF5I&t=20m17s 现在,问题: 编译器是否应该自动添加模块java.xml.ws?(

  • 我有一个spring boot mavel多模块项目。 如果Spring启动模块依赖于模块,并且在模块的文件夹中有一个属性文件或其他一些资源,我希望捆绑在最终的Spring启动应用程序中,我如何实现这一点。 目前,如果我在模块A JAR上运行,它包括文件: 然而: 提前感谢您的任何建议。