java枚举值转化中文_多个枚举的国际化(枚举值的转换)

好了,现在这是完整的和随时使用的解决方案:(感谢@Joop埃根)

使类

public final class EnumTranslator {

public static String getMessageKey(Enum> e) {

return e.getClass().getSimpleName() + '.' + e.name();

}

}

使它成为一个自定义EL函数

xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"

version="2.0">

http://example.com/enumi18n

xlate

your.package.EnumTranslator

String getMessageKey(java.lang.Enum)

的taglib添加到你的web.xml

javax.faces.FACELETS_LIBRARIES

/WEB-INF/enumi18n.taglib.xml

有属性文件enum_en.properties和enum_yourlanguage.properties这样

TransferStatus.NOT_TRANSFERRED = Not transferred

TransferStatus.TRANSFERRED = Transferred

属性文件作为资源包添加到您的面孔,配置。XML

kk.os.obj.jsf.i18n.enum

enum

自定义标签库添加到您的XHTML文件

而且 - 瞧 - 你现在可以在JSF访问翻译枚举值:


版权声明:本文为weixin_33800724原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。