Вэб-сервиз на java под tomcat
От: Аноним  
Дата: 21.04.05 10:58
Оценка:
Хочу сделать веб-сервис на java (простой, типа HelloWorld), чтобы он крутился под tomcat

Описал интерфейс:
public interface IChatService {
public String postMessage(String message, String nickname);
}

Вот сам сервис:

public class ChatService implements IChatService {

public String postMessage(String message, String nickname) {
return "Hello, " + nickname + " your message:\"" + message + "\" was deliveryed";
}
}

Теперь создал сервлет, в конфиге web.xml прописал, чтобы он стартовал при запуске tomcat

public void init(ServletConfig config) throws ServletException {
try{
Wasp.init("C:/systinet/server_java55");
Wasp.startServer("http://localhost:6060");
ServiceEndpoint service = ServiceEndpoint.create("/ChatService/", ChatService.class);
Registry.publish(service);
System.out.println("publish");
System.out.println("Chat server is up and running.");
} catch(Exception e){
e.printStackTrace();
}
}

Потом запускаю клиент:

public class SimpleChatClient extends Object {

private static String wsdlURL;

static{
wsdlURL = System.getProperty("demo.srv.wsdl",
"http://localhost:6060/ChatService/wsdl");
}

public static void main(String args[]) throws Exception {
ServiceClient service = ServiceClient.create(wsdlURL);
ChatService serviceProxy;
serviceProxy = (ChatService) service.createProxy(ChatService.class);
System.out.println(serviceProxy.postMessage("Hello world!!!", "username"));
}
}

И вылетает эксепшн:

org.systinet.wasp.webservice.LookupException: Error obtaining WSDL definition from http://localhost:
6060/ChatService/wsdl
at com.systinet.wasp.webservice.ServiceClientImpl.lookup(ServiceClientImpl.java:553)
at com.systinet.wasp.webservice.ServiceClientImpl.createProxy(ServiceClientImpl.java:433)
at com.systinet.simplechat.client.SimpleChatClient.main(Unknown Source)
Caused by: WSDLException: faultCode=INVALID_WSDL: Cannot get WSDL from URL 'http://localhost:6060/Ch
atService/wsdl' (status code 404):
at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:273)
at com.idoox.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:375)
at com.idoox.wasp.wsdl.WSDLRepositoryImpl.getDefinition(WSDLRepositoryImpl.java:142)
at com.idoox.wasp.SOAPServiceInfoCache.getServiceInfos(SOAPServiceInfoCache.java:53)
at com.systinet.wasp.webservice.ServiceClientImpl.lookup(ServiceClientImpl.java:551)
... 2 more
Exception in thread "main"
Java Result: 1

Мне не понятно, в какой момент нужно создавать WSDL и как его вообще создавать, подскажите, если кто знает.
Re: Вэб-сервиз на java под tomcat
От: Vanja  
Дата: 21.04.05 18:23
Оценка:
WSDL является необязательным элементом SOAP, но крайне желательным. Он сожаржит в себе информацию для клиента/сервера как себя вести. Какой протокол, пространство имен использовать. Т.е. по сути это некий файл который описывает методы взаимодействия клиента и сервера.
В данном случае, насколько я понимаю не будучи знатоком Java, клиенту нужен wsdl для работы иначео н работать отказывается.
Posted via RSDN NNTP Server 1.7 "Bedlam"
Re[2]: Вэб-сервиc на java под tomcat
От: mitro  
Дата: 03.05.05 11:26
Оценка:
Здравствуйте, Vanja, Вы писали:

V>WSDL является необязательным элементом SOAP, но крайне желательным. Он сожаржит в себе информацию для клиента/сервера как себя вести. Какой протокол, пространство имен использовать. Т.е. по сути это некий файл который описывает методы взаимодействия клиента и сервера.

V>В данном случае, насколько я понимаю не будучи знатоком Java, клиенту нужен wsdl для работы иначео н работать отказывается.


Да, совершенно верно, из-за этого не работало, сейчас этот пример работает, теперь другая проблема. Тут я использовал готовый сервер (systinet server java), а сейчас мне нужно прикрутить вэб-сервис к готовому джава-приложению, которое крутиться под tomcat, сделать нужно это через SOAP. Как это проще можно сделать, если кто делал такое, подскажите пожалуйста, нужен простой пример, типа hello world, но чтобы не устанавливать никаких посторонних серверов, а просто использовать какую-нибудь библиотеку (*.jar).
Re[3]: Вэб-сервиc на java под tomcat
От: Protey Россия  
Дата: 03.05.05 14:33
Оценка:
Здесь Apache SOAP.
В принципе только один jar для Tomcat, но приплясов с конфигрурированием — мама не горюй ...
Re[4]: Вэб-сервиc на java под tomcat
От: mitro  
Дата: 05.05.05 06:02
Оценка:
Здравствуйте, Protey, Вы писали:

P>Здесь Apache SOAP.

P>В принципе только один jar для Tomcat, но приплясов с конфигрурированием — мама не горюй ...

А что за приплясы? Мне для начала нужен совсем простой сервис, главное, чтоб через SOAP. И мне почему-то кажеться, что одним jar`ником тут не обойтись, во всех примерах которые я смотрел их больше. Или просто я чего-то недопонимаю
Re[5]: Вэб-сервиc на java под tomcat
От: Protey Россия  
Дата: 05.05.05 11:56
Оценка:
Здравствуйте, mitro, Вы писали:

M>Здравствуйте, Protey, Вы писали:


M>А что за приплясы? Мне для начала нужен совсем простой сервис, главное, чтоб через

SOAP — это транспорт, поэтому примлясы нужны для :
— При вызове функции SOAP SOAP роутер вызывает некий класс, прописнный в его репозитории
— При получении параметорв в соотвествии с предоставленным WDSL SOAP роутер конвертит переданные стринги в параметры Java.

M>SOAP. И мне почему-то кажеться, что одним jar`ником тут не обойтись, во всех примерах которые я смотрел их больше. Или просто я чего-то недопонимаю


Этот jar — не SOAP сервер, а приблуда для Tomcat, поэтому он и один (но большой!)
И ещё он хочет в либах mail и xalan ...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.