我收到了这个警告:com.sun.org.apache.xml.internal.serialize.OutputFormat是Sun专有API,可能会在未来的版本中被移除。

6

我的代码是

 OutputFormat wOf = new OutputFormat( "XML", "ISO-8859-1", true );

帮我解决这个警告...

提前感谢


2
五年过去了,“OutputFormat”仍然稳居其位置 :) - Linuslabo
1
我相信现在使用JDK 9已经不再存在了。 - rogerdpack
2个回答

5

一种解决方案是不使用该类。

另一个解决方案是忽略警告。看看这个类,我怀疑这是唯一可行的解决方案……如果你坚持使用Sun XML堆栈。

(FWIW - 这看起来像是Sun在将Apache XML堆栈集成到Java SE中时犯的错误。这个类应该在一个不触发此警告的不同包中。原始的Apache版本显然不是“仅限内部使用”。另一种解释是这不是一个错误,而是Oracle打算在未来的版本中提供更好的API来控制XML格式。)


3
请使用org.apache.xml.serialize.OutputFormat代替com.sun类。

org.apache.xml.serialize.OutputFormat已被弃用。 - Peerapat A
已弃用。此类在Xerces 2.9.0中已被弃用。建议新的应用程序使用DOM Level 3 LSSerializer或JAXP的Transformation API for XML(TrAX)来序列化XML和HTML。有关更多信息,请参阅Xerces文档。https://xerces.apache.org/xerces2-j/javadocs/other/org/apache/xml/serialize/OutputFormat.html - rogerdpack

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接