2010-07-21 3 views
0

Я хотел бы создать приложение на C#, которое подключается к веб-службе Apache AXIS и выполняет следующие операции через SOAP.Подключиться к неизвестной веб-службе SOAP

  1. Войти на сервер.
  2. POST строковых данных на сервер
  3. Прием и отображение ответа сервера

Вот жесткая часть. У меня нет доступа к серверу, и я не знаю, где находится файл .JWS на сервере. Мне удалось попасть в WSDL-файл в моем веб-браузере, поэтому я знаю, что существует операция «Вход», а также операция по обработке данных.

Я пытался получить доступ к веб-службы с помощью URL, но я получаю это сообщение:

Привет, это сервис AXIS!

Возможно, там будет форма для ссылающегося сервис здесь ...

В общем, есть в любом случае я могу подключиться к этой веб-службы, когда все, что я это URL файла WSDL? Доступны ли веб-службы через URL-адрес?

Спасибо

ответ

1

Используйте WCF и создавать клиентские прокси для веб-службы с помощью инструмента svcutil.exe.

running svcutil.exe http://url.to/webservice?WSDL the_wsdl.wsdl /language:C# должен генерировать прокси-классы, которые вы можете использовать в своем проекте C#, и вы должны вызвать службу, например. подобные

BasicHttpBinding myBinding = new BasicHttpBinding(); //might not even need these 
        // 2 lines if you ran svcutil.exe directly on the web service URL 
    EndpointAddress myEndpoint = new EndpointAddress("http://url.to/webservice"); 
    TestClient client = new TestClient(myBinding,myEndpoint); //the generated classes 
                  // svcutil.exe created 
    client.SomeOperation(42); // call an SomeOperation of the web service 
1

Благодарим за помощь всем. Оглядываясь назад на этот вопрос, я вижу, насколько сильно я был смущен. Вот решение, которое я последовал.

Предполагая, что вам известен URL-адрес WSDL-файла службы, с которой вы хотите подключиться, просто выполните следующее.

  1. загрузки до Visual Studio
  2. На верхней панели навигации для данных -> Добавить новый источник данных выберите Сервис в новом диалоговом
  3. В адресной строке введите URL-адрес файла WSDL (пример : http://server.com/services/displayName?wsdl)
  4. в нижней части диалогового окна, изменить пространство имен к чему-то отношение к проекту (Пример: sampleService)
  5. Теперь Visual Studio должны компилировать клиентские прокси для вас, что вы можете использовать для доступа к веб-службам на вашем сервере. Чтобы получить доступ к одной из служб, все, что вам нужно сделать, это создать новый объект из класса.

    //Example 
        sampleService.ClassName test = new sampleService.ClassName(); 
    
         test.displayName("Jack"); 
    
Смежные вопросы