Доступ к опубликованной конечной точке JAX-WS не работает - PullRequest
0 голосов
/ 11 декабря 2018

Я пытаюсь создать службу Web , используя JAX-WS .У меня есть очень простой проект Java со следующим:

EmployeeService .java

import javax.jws.WebMethod;
import javax.jws.WebService;

@WebService
public class EmployeeService {

    @WebMethod
    public String getEmployee(String id) {
        return "Vlad Danila";
    }
}

Exporter.java

import javax.xml.ws.Endpoint;

import services.EmployeeService;

public class Exporter {
    public static void main(String[] args) {
        Endpoint.publish("http://localhost:8080/hello", 
                new EmployeeService());
        System.out.println("Successfull!");
    }
}

При выполнении вышеизложенного выдается нет ошибки и выводится сообщение «Успешно!».

Однако, доступ к http://localhost:8080/hello в браузере дает Эта страницане работает .

Чего мне не хватает?

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Я сделал пример с вашим кодом, и он работает .. Вы должны добавить это в браузер, чтобы увидеть

http://localhost:9999/ws/hello?wsdl

Это URL моего дела.Тогда потребляйте это с мылом пользовательский интерфейс или другой клиент WS.Ошибка, которую вы видите, является причиной того, что вы выполняете запрос get по этому URL, а не запрос мыла.

0 голосов
/ 11 декабря 2018

Вы не представляете много контекста о том, что вы делаете.JAX-WS должен работать в контейнере.Вы запускаете в контейнере, который совместим с JEE.Посмотрите этот урок, особенно последнюю часть: https://docs.oracle.com/javaee/6/tutorial/doc/bnayn.html#gjyge

Если вы хотите что-то простое, я бы порекомендовал сделать приложение с весенней загрузкой, которое будет работать для вас из коробки.Забудьте о тяжелых JEE-контейнерах и попробуйте запустить простое приложение для весенней загрузки, в которое встроен сервер внутри приложения для весенней загрузки.

Ниже приведена ссылка: https://spring.io/guides/gs/rest-service/

...