Как реализовать ошибки Soap в веб-сервисах Java? - PullRequest
0 голосов
/ 15 марта 2012

Я довольно новичок в веб-сервисах и пытался реализовать ошибки мыла.Я использовал Apache Axis2 для создания веб-сервиса следующим образом.

public interface XYZ{
public String myMethod(User[] user)
}

Здесь я создал класс User с некоторыми переменными, чтобы я мог генерировать объект User в среде .Net для передачи объекта User [].

Public class Webservice implements XYZ
{
Public String myMethod(User[] user){
//My implementation
}
}

Теперь я создал динамический проект с использованием Eclipse и с помощью плагина Axis2 я создал веб-сервис для своего класса "Webservice", который генерирует файл wsdl.Я развернул веб-контент в папке Tomcat и смог получить доступ к файлу WSDL в среде .Net.Я могу передать массив объектов (User []) из .Net в Java и выполнить свою задачу.Теперь мне нужно реализовать ошибки Java в Java, которые я не знаю, как реализовать.

Может кто-нибудь помочь мне с примером или учебником?

Ответы [ 3 ]

1 голос
/ 15 марта 2012

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

См. здесь для некоторых деталей по оси

1 голос
/ 15 марта 2012

Как правило, вам не нужно никакого конкретного кодирования для реализации ошибки SOAP. Всякий раз, когда метод вызывает какое-либо исключение (здесь myMethod в вашем примере.), Ось автоматически генерирует элемент SOAPFault в полученном ответе. Исключение фактически обернуто в AxisFault исключение и отправлено клиенту.

Смотрите здесь i .

1 голос
/ 15 марта 2012

Ваша лучшая ставка в Google - что-то вроде "jax-ws faults". Например:

http://www.ibm.com/developerworks/webservices/library/ws-jaxws-faults/index.html

Вы также можете реализовать обработчик ошибок, как описано в разделе «Использование обработчиков в веб-службах JAX-WS» здесь:

http://axis.apache.org/axis2/java/core/docs/jaxws-guide.html#BottomUpService

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...