В IntelliJ 10.0.3
я использую пункт меню "новый веб-сервис", и это создает файл класса и добавляет к sun-jaxws.xml - это нормально - это работает.
Теперь, если я пытаюсь написать Java-клиент для этого веб-сервиса, я получаю IllegalArgumentException TestWebService не является интерфейсом
Вот мой код клиента:
public class WebServiceTest {
public static void main(String[] args) throws Exception {
URL url = new URL("http://localhost/services/TestWebService?wsdl");
//1st argument service URI, refer to wsdl document above
//2nd argument is service name, refer to wsdl document above
QName qname = new QName("http://ws.mydomain.com/", "TestWebServiceService");
Service service = Service.create(url, qname);
TestWebService test = service.getPort(TestWebService.class); // fails here
System.out.println(test.sayHelloWorldFrom("TESTING...."));
}
}
Как мне это реализовать?Должен ли я иметь интерфейс и класс?Есть хороший пример?Лучшая практика?
это мое определение конечной точки в sun-jaxws.xml
<endpoint
name='TestWebService'
implementation='com.allscripts.ws.TestWebService'
url-pattern='/services/TestWebService'/>