SOAP – не знаю, какой URL-адрес моей конечной точкиJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 SOAP – не знаю, какой URL-адрес моей конечной точки

Сообщение Anonymous »

Я надеюсь, что эта проблема чрезвычайно проста, и это просто я идиот. Я новичок в SOAP и пытаюсь настроить веб-службу SOAP (используя Java и Spring), а затем с помощью инструмента SoapUI пытаюсь отправить запрос SOAP в свою веб-службу. Однако при отправке запроса я всегда получаю ошибку 404 Not Found. Я подозреваю/надеюсь, что я только что неправильно установил конечную точку в SoapUI, но я не знаю, какое значение мне следует там указать. Может ли кто-нибудь помочь?

Вот шаги, которые я предпринял для настройки своего веб-приложения с поддержкой SOAP:

1 ) Я использую существующее веб-приложение (в котором есть существующие веб-службы REST), работающее в Spring Tool Suite (основанное на Eclipse) и использующее Jetty. В файле web.xml я добавил новую веб-службу SOAP:

Код: Выделить всё

SOAPWebService
/ws/SOAP/*


SOAPWebService
org.springframework.ws.transport.http.MessageDispatcherServlet

transformWsdlLocations
true

1

2) Я создал новый класс ProjectSearchEndpoint, который имеет аннотацию @Endpoint. Корень полезной нагрузки = @PayloadRoot(namespace = "http://FOO.FOO/foo", localPart = "ProjectRequest")

3) Я добавил DSD в WEB-INF моего веб-приложения: ws-project.xsd

4) Я создал XML-файл сервлета с именем: SOAPWebService-servlet.xml, который ссылается на ДСД
ПРИМЕЧАНИЕ. код конечной точки и DSD взяты из блога:
http://javaclue.blogspot.co.uk/ 2012/05/soap-web-service-using-spring-ws-20.html Я отредактировал пространство имен, сделав его «http://FOO.FOO/foo», но в остальном код тот же, хотя я добавил Строки System.out для показать, когда объект создан (это так) и когда вызывается метод «searchProjects» (это никогда не происходит).

Я могу успешно запустить свое веб-приложение, и если в моем браузере я перехожу по URL-адресу:

Код: Выделить всё

http://localhost:8080/MyApp/ws/SOAP/projectSearch.wsdl
Я увижу WSDL. Пока все хорошо.

Когда я использую SoapUI, я создаю новый проект и передаю ему WSDL. SoapUI кажется счастливым. Я запрашиваю запрос, и SoapUI создает конверт Soap с моим ProjectRequest в нем. Все идет очень хорошо! Однако для отправки этого запроса SoapUI требуется конечная точка. Я думаю, что моя конечная точка:

Код: Выделить всё

http://localhost:8080/MyApp/ws/SOAP/
но это просто возвращает ошибку 404, которая не найдена. Пробуем другие комбинации, например

Код: Выделить всё

http://localhost:8080/MyApp/ws/SOAP/projectSearch
http://localhost:8080/MyApp/ws/SOAP/projectSearch?wsdl
http://localhost:8080/MyApp/ws/SOAP/ProjectRequest
Все результаты — 404. Какова моя конечная точка? Какую ценность я должен придавать SoapUI?

Обновление 1

Для ясности это то, что я делаю в SoapUI

Запустив SoapUI, я создаю «новый проект SoapUI». Имя А1. Исходный WSDL:

Код: Выделить всё

http://localhost:8080/MyApp/ws/SOAP/projectSearch.wsdl
также в диалоговом окне установлен флажок «Создать запросы».

Я нажимаю «ОК», и создается ProjectSearchSoap11. (со значком зеленого I рядом с ним) с одним проектом под ним (значок красных стрелок) и под этим «Запрос1» (значок слова SOAP). Я щелкаю правой кнопкой мыши Request1 и выбираю «Показать редактор запросов». Откроется окно с конвертом SOAP, моим пространством имен и ProjectRequest. Все это выглядит хорошо.

Теперь я хочу нажать «Отправить запрос на указанный URL-адрес конечной точки» (зеленая стрелка в левом верхнем углу), но она неактивна, пока я не укажу конечную точку (к верно). Я нажимаю на раскрывающийся список конечных точек и выбираю «редактировать текущие». Появится диалог. Я ввожу:

Код: Выделить всё

http://localhost:8080/MyApp/ws/SOAP/
и нажмите «ОК». Теперь значок запуска включен (зеленый). Щелчок по этому значку приводит к появлению пустого окна «ответа», но с необработанными данными:

Код: Выделить всё

HTTP/1.1 404 Not Found
Content-Length: 0
Server: Jetty(6.1.26)
Я предполагаю, что конечная точка, которую я выбираю, неправильная. Можете ли вы подтвердить, что это неправильный формат или мне не хватает какого-то суффикса. Если вы считаете, что это правильно, значит, виновата моя настройка веб-приложения.

Спасибо,

Фил

Подробнее здесь: https://stackoverflow.com/questions/124 ... int-url-is
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»