barbitoff programmer`s blog

Здесь я публикую заметки из программерской жизни: грабли, на которые мне случилось наступить, проблемы, для которых было найдено элегантное (или не очень) решение, а также все, с чем мне пришлось столкнуться и чем хотелось бы поделиться =)
PS Если хотите меня поблагодарить - на странице есть 3 места, чтобы это сделать =)

суббота, 6 июля 2013 г.

Weblogic 10.3.5 + Netbeans 7.3: WSP_1018_POLICY_EXCEPTION_WHILE_FINISHING_PARSING_WSDL

Проблема:

В Netbeans 7.3 создано веб-приложение, содержащее веб-сервис (который создавался с помощью соотв. мастера) и собираемое maven-ом. При развертывании приложения на Wevlogic 10.3.5 валится исключение:
weblogic.application.ModuleException: ...
...
javax.xml.ws.WebServiceException: [failed to localize] WSP_1018_POLICY_EXCEPTION_WHILE_FINISHING_PARSING_WSDL()
...
Caused by: com.sun.xml.ws.policy.PolicyException:[failed to localize] WSP_1014_POLICY_REFERENCE_DOES_NOT_EXIST
...
Причина:

Netbeans включил в pom-ку приложения зависимость webservices-rt как compile, в то время как Weblogic имеет свою имплеменацию jax-ws. Именно наличие в CLASSPATH двух имплементаций приводит к данной ошибке (я правда не понял почему именно, но не суть).

Решение:

Изменить scope зависимости webservices-rt на provided:
    <dependency>
      <groupId>com.sun.xml.ws</groupId>
      <artifactId>webservices-rt</artifactId>
      <version>1.4</version>
      <scope>provided</scope>
    </dependency>
Спасибо http://relativelyprime.blogspot.ru/2010/05/netbeans-68-weblogic-1033-and-jax-ws.html


Комментариев нет:

Отправить комментарий