Как использовать веб-сервис от VB6?

Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:

  1. Вызов метода экземпляра объекта null.
  2. Доступ или изменение поля объекта null.
  3. Принимая длину null, как если бы это был массив.
  4. Доступ или изменение слотов null, как если бы это был массив.
  5. Бросок null как будто это было значение Throwable.

Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null.

Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html

15
задан DaveInCaz 22 January 2019 в 20:24
поделиться

7 ответов

Я использую эту функцию для получения данных из веб-сервиса.

Private Function HttpGetRequest(url As String) As DOMDocument
    Dim req As XMLHTTP60
    Set req = New XMLHTTP60
    req.Open "GET", url, False
    req.send ""

    Dim resp As DOMDocument
    If req.responseText <> vbNullString Then
        Set resp = New DOMDocument60
        resp.loadXML req.responseText
    Else
        Set resp = req.responseXML
    End If
    Set HttpGetRequest = resp
End Function
9
ответ дан 1 December 2019 в 03:44
поделиться

. СЕТЬ имеет хорошую поддержку веб-сервисов со дня один, таким образом, можно разработать клиентскую логику веб-сервиса в.NET как .dll библиотека/блок и использовать ее в приложении VB6 через COM Interop.

4
ответ дан 1 December 2019 в 03:44
поделиться

Предположение, что Вы работаете на Windows XP Professional или выше, один интересный метод, должно использовать моникер SOAP. Вот пример, снятый с некоторой страницы MSDN. Я не знаю, работает ли этот конкретный сервис, но Вы получаете идею...

   set SoapObj = GetObject
       ("soap:wsdl=http://www.xmethods.net/sd/TemperatureService.wsdl")
   WScript.Echo "Fairbanks Temperature = " & SoapObj.getTemp("99707")

Этот механизм также работает от VBScript. Который хорош.

3
ответ дан 1 December 2019 в 03:44
поделиться

Pocketsoap работает очень хорошо. Для генерации объектов используют генератор WSDL . Используя это Вы ничего не должны анализировать сами, плюс все хорошо и со строгим контролем типов.

2
ответ дан 1 December 2019 в 03:44
поделиться

Проверьте эту статью Scott Swigart на информационном центре MSDN VB 6.0.

веб-сервисы Вызова от Visual Basic 6, Простой способ

1
ответ дан 1 December 2019 в 03:44
поделиться

Инструментарий SOAP является возможно лучшим, Вы могли добраться. При попытке сделать то же самое без него потребовало бы значительного дополнительного усилия. У Вас должны быть довольно серьезные причины сделать это.

формат сообщений SOAP не действительно легко читать или записать вручную, и сторонней библиотеке высоко рекомендуют.

0
ответ дан 1 December 2019 в 03:44
поделиться

На данный момент я добился определенного успеха, используя PocketSOAP для подключения к Salesforce API. Я не смог воспользоваться мастером WSDL, поскольку он генерирует имена файлов классов-оберток, используя первые 23 символа имен вызовов, что приводит к дублированию. Тем не менее, PocketSOAP работал достаточно хорошо для меня и без мастера, и это гораздо проще, чем использовать XMLHTTP с DOMDocument.

Я также рассматривал возможность создания обертки в .NET или использования одной из библиотек "MS Office {MSO version} Web Services Toolkit", но эти варианты были сопряжены со значительными трудностями при развертывании. PocketSOAP - это простая COM DLL, не зависящая от конкретной версии MS Office и лицензированная по MPL.

1
ответ дан 1 December 2019 в 03:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: