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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Нужен пример взаим-я клиента и сервера ч/з SOAP 
:(
    Опции темы
VSergeyV
Дата 9.8.2006, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Нужен пример взаим-я клиента и сервера ч/з SOAP
PM MAIL ICQ   Вверх
Fameing
Дата 9.8.2006, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 21.2.2006
Где: Ukraine. Kiev

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



Client 
Код

        String url = "http://DDDDD.ru/soap.cgi";
        String hello;
        Service service = new Service();
        Call call = (Call) service.createCall();
        call.setTargetEndpointAddress(new URL(url));
        call.setEncodingStyle(NamespaceConstants.NSURI_SOAP_ENCODING);
        call.setOperationName(new QName("urn:CCC", method));
        hello = (String) call.invoke(new Object[]{msisdn, ne});
        return hello;



сам сервер можно зделать на чем угодно.  smile 
PM MAIL ICQ   Вверх
VSergeyV
Дата 9.8.2006, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Fameing @ 9.8.2006,  10:29)
сам сервер можно зделать на чем угодно.

в смысле серверную часть smile 
на J2EE это будет уровень Веб-приложения
PM MAIL ICQ   Вверх
Tony
Дата 9.8.2006, 11:49 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1159
Регистрация: 3.3.2006
Где: Riga

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



Лови.Как установить Axis прочитаеш на форуме.

Добавлено @ 11:52 
Axis client
Код

package axisTest;
import java.net.URL;
import java.util.Vector;

import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

import axisTest.Order;
public class AxisClient {


    public static void main(String[] args) throws Exception{        
        Order order = new Order();
        Vector <Order>vector=new Vector<Order>();
        vector.add(order);
        order.setFirstName("Tony");
        
        Service service = new Service();
        Call call=(Call) service.createCall();
        QName qn=new QName("urn:BeanService", "Order");
        //ukazivaem serializaciju i desirializaciju dlja beana Oreder
        call.registerTypeMapping(Order.class,qn,
                      new org.apache.axis.encoding.ser.BeanSerializerFactory(Order.class,qn),        
                      new org.apache.axis.encoding.ser.BeanDeserializerFactory(Order.class,qn));        
        Order result=null;
      
        call.setTargetEndpointAddress(new URL("http://127.0.0.1:8080/axis/services"));
        //ukazivaem imja serisa,imja metoda
        call.setOperationName( new QName("OrderProcessor", "processOrder") );
        call.addParameter("arg1", qn, ParameterMode.IN);
        //esli vozvrashaetsja tip String
        //call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING );
        call.setReturnType(qn,Order.class);
        result = (Order) call.invoke(new Object[] {vector});

        System.out.println("Client result "+result.getFirstName());


    }

}



Axis Ser4vice: 
Код


package axisTest;

import java.util.Vector;
/*
 * Service class with one method
 */

public class BeanService{
    
    public Order processOrder(Vector vector){
        System.out.println("-------------------");
        Order order=(Order)vector.get(0);
        System.out.println(order.getFirstName());

        return order;
    }
}



Bean:
Код


 package axisTest;

public class Order{
   private String firstName;

    public String getFirstName() {
        return firstName;
    }
    
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }
}



Присоединённый файл ( Кол-во скачиваний: 30 )
Присоединённый файл  testSerice.wsdd 0,52 Kb


--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
VSergeyV
Дата 16.8.2006, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



А для SJSAS 9.0 встроенных средств, аналогичных AXIS, нет?
PM MAIL ICQ   Вверх
VSergeyV
Дата 16.8.2006, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Tony @ 9.8.2006,  11:49)
Добавлено @ 11:52 
Axis client
Код

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

...

        //ukazivaem serializaciju i desirializaciju dlja beana Oreder
        call.registerTypeMapping(Order.class,qn,
                      new org.apache.axis.encoding.ser.BeanSerializerFactory(Order.class,qn),        
                      new org.apache.axis.encoding.ser.BeanDeserializerFactory(Order.class,qn));        

...

получается что клиент также использует либы axis? Т.е. они у него должны быть

Добавлено @ 09:49 
Вообщем, все еще ищу "чистый" пример взаимодействия клиента и сервера...
PM MAIL ICQ   Вверх
Tony
Дата 17.8.2006, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1159
Регистрация: 3.3.2006
Где: Riga

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



получается что клиент также использует либы axis? Т.е. они у него должны быть...
Естественно.


--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
VSergeyV
Дата 18.8.2006, 07:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Как пишут сами апатчевцы их AXIS использует JAX-WS, уже сам JAX-WS инкапсулирует взаимодействие через SOAP по идеи можно напрямую делать через JAX-WS, без AXIS? По крайней мере примеры из сановского титоринала меня удовлетворили. Теперь еще бы сделать чтоб с защитой smile,  например взаимодействие через HTTPS
PM MAIL ICQ   Вверх
VSergeyV
Дата 18.8.2006, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Теперь вот ищу пример чтобы SOAP гонял по HTTPS а клиентское приложение подписывалось сертификатом smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0491 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


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

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