首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SAXParseException局部化

SAXParseException局部化
EN

Stack Overflow用户
提问于 2013-09-26 12:00:41
回答 2查看 1.9K关注 0票数 1

我的服务是解析XML并使用exception.getMessage() (exception.getMessage()返回相同的)生成解析器错误列表(确切地说是解析器错误列表),这是人类可以读取和理解的。如何将此异常消息本地化为英语以外的语言?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-11 13:59:51

我找到解决办法了。首先需要从XMLSchemaMessages.properties获得Apache Xerces。我从Xerces-J-src.2.11.0.tar.gz下载了http://xerces.apache.org/,解压缩并从location:...\src\org\apache\xerces\impl\msg获得了这个文件。

现在将这个文件重命名为XMLSchemaMessages_pl.properties或您需要的本地化,并放置在类路径中。我在Maven中有一个项目,所以我把这个文件放在:src\main\resources\com\sun\org\apache\xerces\internal\impl\msg中。

仅此而已。此文件的更改将在异常消息中可见。

票数 4
EN

Stack Overflow用户

发布于 2013-09-26 12:07:24

根据爪哇文档,您需要扩展SAXParseException并覆盖getLocalizedMessage,默认实现返回与getMessage相同的内容。

编辑:您可以对每种语言都有单独的属性文件,在每种语言中都可以有codelocal message。在引发SAXParseException时,根据locale和某些code返回适当的message

代码语言:javascript
复制
MySAXParseException ex = new MySAXParseException(<code>);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19027681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档