Вызов веб-службы Apache Axis 1 из Apache CXF - PullRequest
2 голосов
/ 27 сентября 2010

Я пытаюсь вызвать веб-сервис Apache Axis 1 с клиента, использующего CXF, но сталкиваюсь с этой проблемой:

Java: Rsc / закодированные wsdls не поддерживаются в JAXWS 2.0

Теперь, хотя переключение клиента решило бы эту проблему, мой клиент работает в Osgi, а axis1 не работает нормально.

Моя идея заключалась в том, чтобы написать веб-сервис в CXF или Axis2 - чтобы я мог вызывать его с моего клиента - и затем использовать его в качестве прокси для вызова веб-службы Axis1.

Кто-нибудь делал что-нибудь подобное раньше? Или кто-нибудь может предложить какие-то другие подходы?

Спасибо

1 Ответ

1 голос
/ 15 сентября 2011

Вы наверняка можете использовать подход, который вы предлагаете использовать Axis2 / CXF -> Axis 1.x, но может быть и более простой подход.Вы «владеете» веб-сервисом Axis 1.x?В Axis 1.x часто используются службы, использующие RPD-кодированные WSDL.Однако вы можете переопределить это в Axis 1.2 forward через файл конфигурации, используемый Axis.

Вот документы для спецификации конфигурации службы Axis 1.2: http://ws.apache.org/axis/java/user-guide.html#ServiceStylesRPCDocumentWrappedAndMessage

Я бы рекомендовал оставитьсуществующая служба в качестве службы с кодировкой RPC, чтобы сохранить любые существующие интеграции и просто предоставить дополнительную службу через конфигурацию, которая является литеральной службой документов, которую затем можно было бы легко использовать из любого места.

...