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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание Веб-сервиса с помощью Axis2, Создание Веб-сервиса с помощью Axis2 
:(
    Опции темы
Aazmandius
Дата 19.7.2007, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


O_o
*


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

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



Пример запустился smile Но вот пока нет полного понимания, что и как делает код, сгенерированный Аксисом :( Где можно почитать про то, что конкретно генерится автоматически и каково назначение каждого из этих классов? А то пока больше методом тыка приходится разбираться...
PM WWW   Вверх
Nikola661
  Дата 15.10.2008, 04:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Здравствуйте!!!
1 раз попробовал службы, сразу понял что это удобная штука, особенно в масштабе корпоративной сети.
Создание службя прошло успешно, так что как и каким образом там генерируется всЁ, я внимания не обратил!
Использую WebSphere App Server. Всё сделал по инструкции http://www.interface.ru/home.asp?artId=1708

Всё нормально создалось, всё за деплоилось, клиент получил от службы всё что нужно!!!
Но когда я начал делать что-то своё у меня возникли проблемы!!!

Мне надо было передать клиенту объект, например:
Код

public class Book implements Serializable {
    private int id;
    private String Name;
    private List author;
    
    ..............................
}


При создании службы говорит:
Код

The service class "org.acs.webservice.BookInfo" does not comply to one or more requirements of the JAX-RPC 1.1 specification, and may not deploy or function correctly.
  The field or property "author" on the value type "org.acs.webservice.Book" used via the service class "org.acs.webservice.BookInfo" has a data type, "java.util.List", that is not supported by the JAX-RPC 1.1 specification. Instances of the type may not serialize or deserialize correctly. Loss of data or complete failure of the Web service may result.


Есть какое-нибудь решение??
PM MAIL   Вверх
tux
Дата 15.10.2008, 05:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Вот список типов данных, которые поддерживаются JAX-RPC - http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JAXRPC4.htmljava.util.List там нет. Для всего остального нужно писать свой сериализатор/десериализатор. Как это сделать, должно быть описано в IBM'овской документации.
PM MAIL Skype GTalk Jabber YIM   Вверх
Nikola661
Дата 15.10.2008, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Вычитал, что можно использовать JAXB2.0. Но не могу понять как его установить и юзать.
PM MAIL   Вверх
Hidrag
Дата 16.12.2008, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 2
Всего: 25



Цитата(tux @  15.10.2008,  05:24 Найти цитируемый пост)
Для всего остального нужно писать свой сериализатор/десериализатор. Как это сделать, должно быть описано в IBM'овской документации. 

А можно пример такого сериализатора/десериализатора для простого класса с парой  полей, или ссылку на IBM'овскую доку. 


--------------------
user posted image
PM WWW ICQ   Вверх
VSergeyV
Дата 3.8.2009, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 299
Регистрация: 9.5.2006
Где: Новосибирск

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



Можно ли в Axis2 передавать бины поля которых имеют тип java.sql.Date? Написал демку, получаю эксепшин

Код

[ERROR] java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
org.apache.axis2.AxisFault: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
        at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:161)
        at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
        at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
        at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:167)
        at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:142)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
        at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
        at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
        at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
        at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
        at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
        at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
        at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
        at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
        at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
        at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
        at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
        at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
        at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.axiom.om.OMException: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
        at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
        at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
        at org.apache.axiom.om.impl.llom.OMElementImpl.build(OMElementImpl.java:737)
        at org.apache.axiom.om.impl.llom.OMElementImpl.detach(OMElementImpl.java:706)
        at org.apache.axiom.om.impl.llom.OMNodeImpl.setParent(OMNodeImpl.java:124)
        at org.apache.axiom.om.impl.llom.OMElementImpl.addChild(OMElementImpl.java:297)
        at org.apache.axiom.om.impl.llom.OMElementImpl.addChild(OMElementImpl.java:213)
        at org.apache.axis2.rpc.receivers.RPCUtil.processResponse(RPCUtil.java:104)
        at org.apache.axis2.rpc.receivers.RPCUtil.processResponseAsDocLitWrapped(RPCUtil.java:437)
        at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:138)        
... 20 more
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
        at org.apache.axis2.databinding.utils.BeanUtil.getPropertyQnameList(BeanUtil.java:265)
        at org.apache.axis2.databinding.utils.BeanUtil.getPullParser(BeanUtil.java:67)
        at org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.processProperties(ADBXMLStreamReaderImpl.java:998)
        at org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.next(ADBXMLStreamReaderImpl.java:835)
        at org.apache.axis2.databinding.utils.reader.WrappingXMLStreamReader.next(WrappingXMLStreamReader.java:49)
        at org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.next(ADBXMLStreamReaderImpl.java:857)
        at org.apache.axis2.util.StreamWrapper.next(StreamWrapper.java:71)
        at javax.xml.stream.util.StreamReaderDelegate.next(StreamReaderDelegate.java:60)
        at org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next(SafeXMLStreamReader.java:183)
        at org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:597)
        at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:172)
        ... 29 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.axis2.databinding.utils.BeanUtil.getPropertyQnameList(BeanUtil.java:146)
        ... 39 more
Caused by: java.lang.IllegalArgumentException
        at java.sql.Date.getHours(Date.java:143)
        ... 44 more

PM MAIL ICQ   Вверх
Galaran
Дата 13.9.2009, 04:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Это выходит, с клиентом надо тянуть все либы Axis2 ? Странно.. стандартный протокол же..
Вопрос снят. МОжно заюзать jax-ws, как пример: http://voituk.kiev.ua/2007/12/18/java-6-web-services/

Это сообщение отредактировал(а) Galaran - 13.9.2009, 07:45
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.0503 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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