![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
||||
|
||||
y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 7 Всего: 13 |
кстати, кто-нить возьмется накатать простенький примерчИг с использованием стандартного боевого комплекта для вебсервисов из мустанга? Собственно нужно показать как с помощью аннтотации сделать сервис, как с помощью батника сгенерить WSDL-ник и как клиента сделать...
-------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
Хотелось бы узнать, может у кого нить, есть ссылки на электронные книги по WEB программированию на Java (Servlet , jsp, .......) Подкиньте плз, кто знает....
|
|||
|
||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
||||
|
||||
Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
Maksym, ok
|
|||
|
||||
Alenka_ |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 18.6.2007 Репутация: нет Всего: нет |
Что же получается? Есть два (а может больше?) способов передать данные между сервисом и клиентом поверх http.
Это веб-сервисы, с wsdl, SOAP-оболочкой и стабами. И Burlap/Hessian без всего перечисленного. Оба способа требуют application server, причем в случае с burlap/hessian не обязательно Resin. А в случае с веб- сервисом происходит автоматическая генерация и wsdl, и SOAP-пакетов и стабов. Оба способа требуют написания собственной сериализации/ десериализации сложных структур даных. Оба работают на разных платформах ( Java, PHP, Python, C++, and C# implementations ). Чем же так хорош чудо-burlap/hessian протокол? Простотой? Когда лучше применять тот или другой протокол? |
|||
|
||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
Угу. Они и позиционируют себя как легковесное решение. Плюс hessian изначально заточен под передачу бинарных данных безо всяких attachments. Но, имхо, если нет автогенерации из/в wsdl то нет web-сервиса в его идеологическом смысле. Зато применять burlap/hessian просто и удобно, не сравнить с монстроидальным axis2. |
|||
|
||||
Alenka_ |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 18.6.2007 Репутация: нет Всего: нет |
Мне все-таки интересно, не страдает ли функциональность от такой "легковесности". Может есть какие-то преимущества у веб-сервисов на Axis, ради которых пренебрегают простотой исполнения?..
|
|||
|
||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
Есть, та же автогенерация. Мое имхо: если вызвать сервис (хотя бы теоретически в будущем) будеш не ты (не код вышей команды), то используй axis2 -- стандарты надо уважать; если же это решение сугубо внутри вашей системы, то hessian -- простота залог успеха. ![]() |
|||
|
||||
Alenka_ |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 18.6.2007 Репутация: нет Всего: нет |
Т.е если сервис написан на hessian, то некто сторонний ) не будет знать, что за служба ему доступна? А у сервиса написанного с помощью Axis2- будет преимущество в виде описания wsdl?
|
|||
|
||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
Ну если он вообще не в курсе дела, есть ли там сервисы, то да ![]() Но проблема несколько глубже. "Некто сторонний" будет нуждаться в том, чтобы ему каким-то образом передали пакет с интерфейсами, которые предоставляет сервис на hessian. Более того, если что то там, в этих интерфейсах, поменяется, то ему надо будет предоставить обновленный пакет. То есть на лицо проблема синхронизации версий сервиса и клиента. В axis все можно мгновенно перегенерировать из wsdl. То есть разработчику сервисов не нужно думать о клиентах, они в состоянии сами о себе позаботиться. Кроме того, клиент из другого языка (технологии) программирования может использовать любую реализацию для работы с wsdl отличную от axis (правда я не знаю есть ли такие, но должны быть раз уж wsdl это стандарт). А в случае с hessian -- выбор ограничивается только hessian'овской реализацией клиента (поскольку это не стандарт и никто кроме hessian его протокол не поддерживает). Это сообщение отредактировал(а) Maksym - 21.9.2007, 22:00 |
|||
|
||||
stup |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 17.4.2007 Репутация: 1 Всего: 1 |
axis2 - полный отстой. Когда сгенерировался скелет на 70 000 строк, да еще и на русском языке, то тут уже никаких удовств этих стабов не видно и в помине. Java API для него извращенное и документировано плохо. На сайте апач лежат туториалы, который ограничиваются написанием хелловорлдов, поэтому приходится перелопачивать джавадоки :( Возможно, со временем что то выкристаллизируется, но пока - очень сыро.
|
|||
|
||||
Foo |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 20.10.2006 Репутация: 1 Всего: 3 |
Возможно ктото использовал в своих проектах XFire или Web Methods Glue для работы с SOAP и может поделиться впечатлениями?
--------------------
qip |
|||
|
||||
sarjsheff |
|
||||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 6.7.2006 Где: Moscow Репутация: 1 Всего: 1 |
Пример веб сервиса на Spring Web Services.
Требуемое ПО: 1)Tomcat 6.0.14 (по идее можно и более ранние версии я пробовал под 6.0.14) 2)Spring Web Services 1.5 WebService. Структура приложения: simple-ws/ WEB-INF/ lib/ activation-1.1.jar antlr-2.7.6rc1.jar aopalliance-1.0.jar asm-2.2.3.jar asm-commons-2.2.3.jar bsh-2.0b1.jar commons-codec-1.3.jar commons-fileupload-1.1.1.jar commons-httpclient-3.0.1.jar commons-io-1.1.jar commons-logging-1.1.jar groovy-1.0.jar jruby.jar jsr173_1.0_api.jar jstl.jar log4j-1.2.13.jar log4j.jar mail-1.4.jar pe_api.jar qname.jar resolver.jar saaj-api-1.3.jar saaj-impl-1.3.jar simple-ws.jar - наш сервис. spring-beans-2.0.6.jar spring-context-2.0.6.jar spring-core-2.0.6.jar spring.jar spring-oxm-1.0.0.jar spring-oxm-tiger-1.0.0.jar spring-web-2.0.6.jar spring-webmvc-2.0.6.jar spring-ws-core-1.0.0.jar spring-ws-core-tiger-1.0.0.jar spring-ws-security-1.0.0.jar spring-xml-1.0.0.jar standard.jar stax-api-1.0.1.jar uwi_api.jar wsdl4j-1.6.1.jar xalan-2.7.0.jar xercesImpl-2.8.1.jar xml-apis-1.3.04.jar xmlbeans-qname.jar xmlpublic.jar xws-security-2.0-FCS.jar web.xml spring-ws-servlet.xml Исходный код: Конфигурационный файл приложения web.xml
Конфиг спрингов spring-ws-servlet.xml
Схема сообщений simple-ws.xsd
Сам сервис ru/sarjsheff/simplews/EchoEndpoint.java
Клиент ru/sarjsheff/simplews/Client.java
WSDL доступен по http://localhost:8080/simple-ws/simple-ws.wsdl . Это сообщение отредактировал(а) sarjsheff - 9.1.2008, 13:33 |
||||||||||
|
|||||||||||
sarjsheff |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 6.7.2006 Где: Moscow Репутация: 1 Всего: 1 |
Реализация SOAP сервера на Groovy проще не бывает.
http://ubuntu.cica.es/mirrors/maven2/groov...l-jsr06-0.1.jar Создаем сервис который обрабатывает входную страку и выплевывает ее обратно. EchoService.groovy
Код запускающий SOAP сервер. SoapServer.groovy
Клиент к нашему SOAP сервису. SoapClient.groovy
Запуск.
|
||||||||
|
|||||||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |