如何避免此警告:com.sun.org.apache.xerces.internal.parsers.SAXParser是Sun专有API,可能会在将来的版本中删除

时间:2013-08-26 17:24:04

标签: java sax saxparser

最近从JDK1.5升级到JDK1.6,在编译期间会抛出警告。

import com.sun.org.apache.xerces.internal.parsers.SAXParser;

...

org.xml.sax.XMLReader l_oParser = new SAXParser();   

编译期间

  

[javac] C:\ Users \ project \ src \ com \ test \ ecommerce \ services \ paymentservices \ authorization \ HistoryTransactionResponseParser.java:14:warning:com.sun.org.apache.xerces.internal.parsers.SAXParser是Sun专有API,可能会在将来的版本中删除   [javac] import com.sun.org.apache.xerces.internal.parsers.SAXParser;

使用JDK1.5进行编译时,不会显示此警告。

3 个答案:

答案 0 :(得分:4)

您应该使用Java API for XML Processing (JAXP)中建议的方法,让运行时决定SAX解析器的实现。例如:

SAXParserFactory spf = SAXParserFactory.newInstance();
spf.setNamespaceAware(true);
SAXParser saxParser = spf.newSAXParser();

答案 1 :(得分:0)

不要从com.sun导入内容。它可能会或可能不会出现在未来的版本中,这正是警告所说的。

答案 2 :(得分:0)

您需要找到该库的替代品。专有意味着Sun可以随时删除该软件包。

如果他们决定从下一个JDK版本中删除它,那么一旦升级了JVM,它就会破坏依赖该专有代码的所有内容。