Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> soap client по wsdl на Spring 
:(
    Опции темы
Samotnik
Дата 20.9.2011, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



Привет. Есть WSDL с описанием сервисов.
Нужно на Java написать логику работы с ним. Это в какую сторону копать ?  smile 

Это сообщение отредактировал(а) Samotnik - 21.9.2011, 10:33
PM MAIL   Вверх
AxNe0
Дата 20.9.2011, 10:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 263
Регистрация: 24.4.2006
Где: St. Petersburg

Репутация: нет
Всего: 5



для начала в сторону гугла


--------------------
SCJP 6, SCBCD 5, OCEWSD 6
blog
PM ICQ Skype   Вверх
Samotnik
Дата 20.9.2011, 11:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



В общем, я с помощью Eclipse сгенерировал Web Service Client Скормил ему wsdl, он мне выплюнул классы. 
Это правильно ? Так можно ? )
Или обязательно "вручную" парсить wsdl, если да, то как лучше и быстрее ? 
PM MAIL   Вверх
Farmazon
Дата 20.9.2011, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: 3
Всего: 5



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


--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
Samotnik
Дата 20.9.2011, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



Farmazon, спасибо, тогда еще вопрос: 
Если вдруг описание сервисов когда-нибудь поменяется(wsdl изменится) то как об этом узнают мои классы ? smile
PM MAIL   Вверх
Samotnik
Дата 20.9.2011, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



А как классы юзать ? smile
class Mage_Api_Model_Server_HandlerBindingStub
interface Mage_Api_Model_Server_HandlerPortType
class Mage_Api_Model_Server_HandlerPortTypeProxy
interface MagentoService
class MagentoServiceLocator

пишу:
Код

public static void main(String[] args) throws UnsupportedOperationException, SOAPException, IOException, TransformerException {
   Mage_Api_Model_Server_HandlerBindingStub client = new Mage_Api_Model_Server_HandlerBindingStub();
   String sessionId = client.login(name, password);
   System.out.println(client.call(sessionId, "catalog_category.tree", null));
}


получаю:
Цитата

11:48:51.116 [main] DEBUG o.a.axis.i18n.ProjectResourceBundle - org.apache.axis.i18n.resource::handleGetObject(noEndpoint)
Exception in thread "main" AxisFault
 faultCode: {http://xml.apache.org/axis/}Server.NoEndpoint
 faultSubcode: 
 faultString: No endpoint
 faultActor: 
 faultNode: 
 faultDetail: 
    {http://xml.apache.org/axis/}exceptionName:org.apache.axis.NoEndPointException


тут и тут проблемы как у меня.
Видимо класс MagentoServiceLocator нужно юзать, только как ?  smile

Добавлено через 9 минут и 54 секунды
Разобрался  smile 

Это сообщение отредактировал(а) Samotnik - 20.9.2011, 11:50
PM MAIL   Вверх
Farmazon
Дата 20.9.2011, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: 3
Всего: 5



Я ничего сказать не успел, молоток)


--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
Samotnik
Дата 20.9.2011, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



Не народ. Нужно на Спринге делать.
Делаю по мануалу
Получаю:
Цитата

Sep 20, 2011 7:03:39 PM com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl lookForEnvelope
SEVERE: SAAJ0514: Unable to create envelope from given source because the root element is not named Envelope
Sep 20, 2011 7:03:39 PM com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory createEnvelope
SEVERE: SAAJ0511: Unable to create envelope from given source
Exception in thread "main" org.springframework.ws.soap.saaj.SaajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable to create envelope from given source: 
    at org.springframework.ws.soap.saaj.SaajSoapMessage.getSaajVersion(SaajSoapMessage.java:260)
    at org.springframework.ws.soap.saaj.SaajSoapMessage.getImplementation(SaajSoapMessage.java:342)
    at org.springframework.ws.soap.saaj.SaajSoapMessage.<init>(SaajSoapMessage.java:117)
    at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:184)
    at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:58)
    at org.springframework.ws.transport.AbstractWebServiceConnection.receive(AbstractWebServiceConnection.java:90)
    at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:548)
    at org.springframework.ws.client.core.WebServiceTemplate.sendAndReceive(WebServiceTemplate.java:496)
    at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:451)
    at org.springframework.ws.client.core.WebServiceTemplate.sendSourceAndReceiveToResult(WebServiceTemplate.java:395)
    at org.springframework.ws.client.core.WebServiceTemplate.sendSourceAndReceiveToResult(WebServiceTemplate.java:386)
    at org.springframework.ws.client.core.WebServiceTemplate.sendSourceAndReceiveToResult(WebServiceTemplate.java:376)
    at com.pmssoftware.prodigitalis.core.webservice.client.WebServiceClient.simpleSendAndReceive(WebServiceClient.java:36)
    at com.pmssoftware.prodigitalis.core.common.ServiceRunner.main(ServiceRunner.java:19)
Caused by: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable to create envelope from given source: 
    at com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:114)
    at com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:70)
    at com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:122)
    at org.springframework.ws.soap.saaj.support.SaajUtils.getSaajVersion(SaajUtils.java:155)
    at org.springframework.ws.soap.saaj.SaajSoapMessage.getSaajVersion(SaajSoapMessage.java:257)
    ... 13 more
Caused by: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable to create envelope from given source because the root element is not named "Envelope"
    at com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.lookForEnvelope(SOAPPartImpl.java:148)
    at com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:115)
    at com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:104)
    ... 17 more


PM MAIL   Вверх
Farmazon
Дата 20.9.2011, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: 3
Всего: 5



мануал версии 1.5...
есть немного новее http://static.springsource.org/spring-ws/s...tml/client.html 

есть ещё это
http://static.springsource.org/spring/docs...es-jaxws-access

точнее могу глянуть в чём дело завтра, с работы я уже ушёл)


--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
Samotnik
Дата 21.9.2011, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



Цитата(Farmazon @  20.9.2011,  20:46 Найти цитируемый пост)
мануал версии 1.5...
есть немного новее http://static.springsource.org/spring-ws/s...tml/client.html 

тут тот же не рабочий пример  smile 
PM MAIL   Вверх
Samotnik
Дата 21.9.2011, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



Ужос, вторые сутки гуглю, нету ни одного рабочего примера, как можно по wsdl работать с веб сервисами  smile 
Хоть на чём. Хоть спринг, хоть cxf.
Может у вас есть пример рабочий ?  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1045 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.