3
我最近迁移JBoss的应用5〜8 Wildfly,因此不得不搬到从Java 6到Java 8UTF-8字符JAXB在Java中8
我现在遇到问题时运行的我的单元测试一个通过蚂蚁:
[javac] C:\Users\test\JAXBClassTest.java:123: error: unmappable character for encoding UTF8
线路测试类的123是:
Assert.assertEquals("Jµhn", JAXBClass.getValue());
该试验是在地方特别以确保JAXB编组可以处理UTF-8字符,我相信e µ
是。我添加了一个属性到JAXB编组,以确保这些字符是允许的:
marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8");
我已经看到了多个问题(1,2,3),这似乎是相似的,但他们的答案枯萎解释为什么先前以单向方式解码的无效字符现在在另一个方面被解码或者看起来实际上与我没有相同的问题。
如果所有的字符都是有效的应该这会导致一个问题?我知道我必须失去一些东西,但我看不到什么。
是源文件编码UTF-8呢? – andrucz
是,从与声明的XML文件读取'<?XML版本= “1.0” 编码= “UTF-8” 独立= “是”?>' – kirsty
看一看http://stackoverflow.com/questions/ 464874 /不可映射的字符的编码预警式的Java – andrucz