Конфигурация адреса конечной точки для доступа к Wsdl в jax-ws - PullRequest
2 голосов
/ 03 марта 2010

Я новичок в веб-сервисах с jax-ws, и я немного перепутал с различными файлы. Я делаю простой привет тест и пытаюсь что-то объяснить.

Я успешно установил свой веб-сервис на Glassfish. Я также проверил это с помощью отдельного javaвне сервера) Мой пример взят из helloservice в примерах javaee5. (http://java.sun.com/javaee/5/docs/tutorial/doc/docinfo.html)

В web.xml у меня есть этот раздел:

...
    <servlet-mapping>
        <servlet-name>HelloService</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
...

в sun-jaxws.xml

...
    <endpoint
        name='HelloService'
        implementation='helloservice.endpoint.Hello'
        url-pattern='/hello'/>
...

и на солнце-web.xml:

...
  <context-root>/helloservice</context-root>
...

Я вижу, что корень контекста, указанный в web.xml, совпадает с корнем в sun-jaxws.xml.

  1. Корень контекста в sun-web.xml, имеет ли это значение или он используется только в файле EAR?

  2. Я могу получить доступ к своему wsdl-файлу с 2 разных адресов: http://localhost:8080/helloservice/hello?wsdl http://localhost:8080/helloservice/HelloService?wsdl Я не могу объяснить второй. Откуда это взялось ? Это конфигурация адреса конечной точки? Почему мы можем получить доступ к веб-сервису обоими способами (по корню контекста и по имени сервиса)? Пожалуйста, объясните мне

Спасибо

1 Ответ

0 голосов
/ 14 июня 2011

Вы можете настроить URL для своего сервиса разными способами, в вашем проекте он определен в 3 разных местах, в большинстве случаев определять что-то в нескольких местах не очень хорошая идея.
Поскольку вы определили 2 различных пути к вашему сервису, один для jax-ws, а другой для sun-web (файл конфигурации glassfish), вы получите определения для того же сервиса.

...