Метод Weblogic Web-сервиса, не связанный с пространством имен - PullRequest
1 голос
/ 16 августа 2011

Я обновляю EJB Webservice, работающий в среде Weblogic 8.1, до Weblogic 10.3. Согласно документации weblogic, я преобразовал класс EJB-компонента в обычный класс Java и добавил аннотацию к классу Java, чтобы идентифицировать его как веб-сервис. Собрав уши и развернув на сервере, я увидел, что мой веб-сервис запущен и работает. Однако, когда я запускаю запрос, который дал мне действительный ответ в 8.1, к новому веб-сервису 10.3, я получаю ошибку «Не удалось получить имя операции». Мой запрос на ввод такой:

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tns="http://mycomputer.com:7101/WebServices/HelloService">
   <soapenv:Header/>
   <soapenv:Body>
      <MyRequest soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <string xsi:type="xsd:string">Hello</string>
      </MyRequest>
   </soapenv:Body>
</soapenv:Envelope>

Как видите, элемент MyRequest не является частью какого-либо объявления пространства имен. Веб-сервис 8.1 идентифицирует его как принадлежащий пространству имен - http://mycomputer.com:7101/WebServices/HelloService. Однако веб-сервис 10.3 не идентифицирует его. Когда я префикс "tns:" для элемента MyRequest, я получаю действительный ответ от 10.3 веб-службы. Итак, мой вопрос

  1. Нужно ли вносить какие-либо изменения в конфигурацию веб-службы 10.3 для обработки запроса 8.1 как есть.
  2. Обеспечивает ли Weblogic 10.3, чтобы каждый элемент запроса принадлежал пространству имен.

Спасибо за внимание!

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