Existem classes idênticas de java WebServices API e IMPL nesses grupos de pacotes, apenas os nomes dos pacotes são diferentes.
Quais devo usar no meu código? Eu preferiria NON-com.sun. * Conforme as convenções java, mas ainda minhas dependências (por exemplo, Spring) estão usando implementações de com.sun. * OR Não consigo encontrar um pacote de implementação em javax.xml
Alguém tem alguma experiência sobre isso?
Respostas:
2 para resposta № 1Use o javax.xml
pacotes - o com.sun
Os pacotes não fazem parte da API Java pública e podem ser alterados entre as versões Java, ou nem sequer existem se você usar alguém mais do que a implementação Java da Sun.
Vejo: Por que os desenvolvedores não devem gravar programas que chamam pacotes "sun"
Eu não sei exatamente o que você está tentando fazer,mas você normalmente não precisa lidar diretamente com os pacotes de implementação. Geralmente há classes e métodos de fábrica para obter uma instância de, por exemplo, um analisador XML, e seu programa não precisa saber qual implementação é usada nos bastidores. Por exemplo, para obter um analisador SAX, você faz:
import javax.xml.parsers.*;
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();