北京建设网站兼职普工,wordpress+广告联盟,网站规划详细设计怎么写,服装商城网站模板jsf集成spring如果您正在开发针对多种语言的JSF应用程序#xff0c;那么您可能很熟悉f#xff1a;loadBundle标记。 即使您的应用程序不支持使用消息捆绑包进行国际化仍然是一个好主意。 在f#xff1a;loadBundle标签的作用下#xff0c;它从Java java.ut… jsf集成spring 如果您正在开发针对多种语言的JSF应用程序那么您可能很熟悉floadBundle标记。 即使您的应用程序不支持使用消息捆绑包进行国际化仍然是一个好主意。 在floadBundle标签的作用下它从Java java.util.ResourceBundle中读取消息尽管这可以工作但Spring开发人员通常更喜欢org.springframework.context.MessageSource接口。 作为floadBundle的替代方案我一直在开发一个新的smessageSource组件该组件可用于公开来自任何Spring MessageSource的消息并提供其他一些优点。 新组件是floadBundle的直接替代。 s:messageSource source#{messageSource} varmessages/
ph:outputText value#{messages.hello}/
/p source属性可以是任何解析为MessageSource实例的EL表达式。 如果未指定源则将使用Spring ApplicationContext 。 var属性是将用于访问消息的变量的名称。 与标准JSF不同要加载的消息的密钥将根据要呈现的页面的ID构建。 例如假设上面的页面来自文件WEB-INF / pages / messages / simple.xhtml 则用于加载hello消息的密钥将为pages.messages.simple.hello 。 使用这些复合键可以防止消息键冲突并使页面标记清晰美观。 如果需要可以使用prefix属性覆盖此行为。 如果您在XHTML中引用了忘记定义的消息则将看到警告消息在开发中或抛出异常在生产中。 与标准JSF一样您的消息并包含与houtputFormat一起使用的占位符 pages.message.simple.welcomeWelcome to {1} with {0}h:outputFormat value#{messages.welcome}f:param valueSpring/f:param valueJSF/
/h:outputFormat houtputFormat标签有点冗长因此为了方便起见Spring消息可以用作Map 。 这使您可以更简洁地引用占位符 h:outputText value#{messages.welcome[Spring][JSF]}/ 相同的语法允许您将Java对象映射到消息。 默认情况下对象是通过从类名称构建消息键来映射的。 例如以下类 package org.example;
public class ExampleObject {
} 可以在JSF中引用 h:outputText value#{messages[exampleInstance]}/ 解决以下消息 org.example.ExampleObjectexample 对于枚举对象消息键包括枚举名称和类 package org.example;
public enum ExampleObject {ONE, //mapped to message key org.example.ExampleObject.ONETWO //mapped to message key org.example.ExampleObject.TWO
} 对象消息还可以引用应构成消息一部分的属性 org.example.PersonNameName is {first} {last}
...package org.example;
public class PersonName {...public String getFirst() {...}public String getLast() {...}
} 您还可以通过使用实现org.springframework.springfaces.message.ObjectMessageSource接口的消息源来定义自己的对象消息策略。 如果您想查看其中的任何代码请查看GitHub Project中的org.springframework.springfaces.message和org.springframework.springfaces.message.ui软件包。 参考 Phil Webb博客博客中来自我们JCG合作伙伴 Phillip Webb的Spring和JavaServer Faces集成国际化和本地化 。 翻译自: https://www.javacodegeeks.com/2012/06/spring-jsf-integration.htmljsf集成spring