我有.jspx模板,其中有页眉,内容和页脚
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
xmlns:tr="http://myfaces.apache.org/trinidad"
xmlns:rah="http://xmlns.oracle.com/webcenter/resourcehandler"
xmlns:wcdc="http://xmlns.oracle.com/webcenter/spaces/taglib">
,我有2个属性文件ar.properties和en.properties。 在页脚中,我有一个版权消息 会在选定的语言环境中显示,从而被取消显示
所以我做到了
<af:outputFormatted value=" جميع الحقوق محفوظة " rendered="#{facesContext.ELContext.locale eq 'ar'}" />
<af:outputFormatted value="all right reserved " rendered="#{facesContext.ELContext.locale eq 'en'}" />
它工作正常,但是这种方式效率不高,因为我将不得不在整个页面中复制每个标签
我试图放
<c:set var="bundle" value="{#facesContext.ELContext.locale eq 'en' ? {adfBundle['com.en']} : {adfBundle['com.ar']}}" />
并且仅使用了一个输出标签
<af:outputFormatted value="#{bundle.copyright}" />
但是它警告我找不到参考包 如何解决这个问题
答案 0 :(得分:0)
如您先前的问题(Cant render an outputText depending on my systemLocal Variable)
中提供的(尚未验证)答案中所述。您可以按照这份易于阅读的文档来了解如何创建本地化包:https://docs.oracle.com/cd/E15051_01/web.1111/b31973/af_global.htm#ADFUI433
您正确地将第二种方法与捆绑销售结合使用,以具有可翻译的价值。如果出现“找不到参考束”警告,则意味着您错过了必须在项目属性中定义束的部分。
请参见 21.2.1如何设置资源束选项:
创建项目后,可以在“项目属性”对话框中设置资源束选项。
要为项目设置资源束选项:
在“应用程序导航器”中,双击项目。
在“项目属性”对话框中,选择“资源包”以显示 资源束选项,如图21-3所示。
图21-3“项目属性资源束”对话框
项目属性资源包。如果您想让JDeveloper 自动生成默认资源文件,选择自动 同步捆绑包。
选择以下资源束文件选项之一:
每个项目一个捆绑包-在名为的文件中配置 .properties。
每页一个捆绑软件-在名为的文件中配置 .properties。
多个共享捆绑包。
从下拉列表中选择资源包类型:
XML本地化交换文件格式(XLIFF)包
列出资源包
属性包
单击确定。