В чем разница между пакетом "/ com / sun / xml / ws /" в jaxws-rt.jar и пакетом "/ com / sun / xml / internal / ws /" внутри rt.jar - PullRequest
4 голосов
/ 26 апреля 2011

Я не понимаю, как использовать "внутреннюю" реализацию пакетов jax-ws внутри rt.jar, когда они уже доступны через jaxws-rt.jar.Зачем Sun / Oracle принять такое решение для интеграции jax-ws в jdk ... Я не знаю, если изменения в классах обоих пакетов в обоих jar-файлах выполняются параллельно .... Может кто-нибудь пролить свет нана самом деле должны быть ссылки ... ????

Ответы [ 2 ]

2 голосов
/ 26 апреля 2011

jaxws-rt.jar не является частью Java RE.Но RE нуждается во внутренней реализации JAXWS.Итак, насколько я помню, они реализовали одну в пакете com.sun.xml.internal.ws, чтобы избежать будущих конфликтов и ошибок, если приложения помещают другую реализацию JAXWS в свой путь к классам.

Другой аспект: даже если кто-то добавляет новуюПри реализации в classpath все еще гарантируется, что JRE работает, как и ожидалось, даже если в этой новой реализации есть ошибки.

0 голосов
/ 26 апреля 2011

Вы не предоставляете никакого контекста относительно того, где вы видите это.

По умолчанию, реализация JAX-WS, лежащая в основе типов javax.xml.ws*, поставляется вJRE.JAX-WS определяет SPI ;чтобы переопределить классы JRE, альтернативные реализации должны находиться в одобренных каталогах .

Некоторые серверы приложений Java EE 5 могут работать как на Java 1.5, так и на 1.6;чтобы соответствовать спецификации Java 1.5, серверу приложений потребовалась бы реализация JAX-WS.Реализации Java EE 6 переопределят реализацию Java 6 (Java EE 6 требует JAX-WS 2.2, тогда как Java SE 6 требует 2.0).

Таким образом, можно увидеть несколько реализаций JAX-WS в некоторыхконтексты.Какой из них использовать, зависит от конфигурации.

...