I agree it is apparently not an Access or VBA error. but hopefully
someone else has used Access/vba to consume a web service and may have
encountered this problem.
Having difficulty using Microsoft web services tookkit in Access 2003
vba. I can use the toolkit just fine to create the classes. My module
code is straightforward:
Sub Main()
'To Use:
'Dimension a variable as new clsws_DownloadService, and then
write code to
'use the methods provided by the class.
'Example:
' Dim ExampleVar as New clsws_DownloadService
' debug.print ExampleVar.wsm_DownloadDocument("Sample Input")
Dim begindate As Date
Dim dwService As New clsws_DownloadService
Dim dwserviceParameter As New struct_DownloadParameter
Dim dwserviceResult As New struct_WSDownloadResult
dwserviceParameter.DownloadType = 1
dwserviceParameter.OrganizationNbr = 3
dwserviceParameter.ParentOrganizationNbr = 2
begindate = #9/1/2009#
dwserviceParameter.FromDate = begindate
dwserviceParameter.ToDate = Date
dwserviceResult =
dwService.wsm_DownloadDocument(dwserviceParameter) <<----- Error
occurs while processing this line
'Debug.Print dwService.wsm_DownloadDocument(dwserviceParameter)
Console.WriteLine (dwserviceResult.Errors.length)
Stop
End Sub
I fail in
Public Function wsm_DownloadDocument(ByVal obj_Parameter As
struct_DownloadParameter) As struct_WSDownloadResult
'*****************************************************************
'Proxy function created fromhttp://cmbhstrn.dshs.state.tx.us/cmbhswebservice/service/downloadserv....
'*****************************************************************
'Error Trap
On Error GoTo wsm_DownloadDocumentTrap
Set wsm_DownloadDocument =
sc_DownloadService.DownloadDocument(obj_Parameter) <<<- this line fails
Exit Function
wsm_DownloadDocumentTrap:
Stop
DownloadServiceErrorHandler "wsm_DownloadDocument"
Stop
End Function
The err.description is
Server was unable to process request. ---> The type initializer for
'DSHS.SNF.Model.Message.UserMessageFactory' threw an exception. --->
Application.Messages.File doesn't exist in the Application Settings.
I have tried to look up the message and parts of it via the web and
newsgroups without success.
I am running Vista Ultimate 3 gig memory; Access 2003. I am up to date
of fixes/patches.
I ran Fiddler2 to monitor the activity. I can see an HTTP Get:
GET /cmbhswebservice/service/downloadservice.asmx?WSDL HTTP/1.1
The response is
HTTP/1.1 200 OK
The text of the response appears to be the text of the WDSL:
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:soap="
http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tm="
http://microsoft.com/wsdl/mime/textMatching/"
xmlns:soapenc="
http://schemas.xmlsoap.org/soap/encoding/"
xmlns:mime="
http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:tns="
http://www.dshs.state.tx.us/cmbhs/"
xmlns:s1="
http://dshs.cmbhs/AbstractDomainObject"
xmlns:s="
http://www.w3.org/2001/XMLSchema"
xmlns:soap12="
http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:http="
http://schemas.xmlsoap.org/wsdl/http/"
targetNamespace="
http://www.dshs.state.tx.us/cmbhs/"
xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified"
targetNamespace="
http://www.dshs.state.tx.us/cmbhs/">
<s:import namespace="
http://dshs.cmbhs/AbstractDomainObject" />
<s:element name="DownloadDocument">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Parameter"
type="tns
ownloadParameter" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="DownloadParameter">
<s:complexContent mixed="false">
<s:extension base="s1:AbstractDomainObject">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="ParentOrganizationNbr"
type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="OrganizationNbr"
type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="FromDate" type="s:dateTime" />
<s:element minOccurs="1" maxOccurs="1" name="ToDate" type="s:dateTime" />
<s:element minOccurs="1" maxOccurs="1" name="DownloadType" type="s:short" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:element name="DownloadDocumentResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="DownloadDocumentResult"
type="tns:WSDownloadResult" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="WSDownloadResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="PrimaryObject">
<s:complexType mixed="true">
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
<s:element minOccurs="0" maxOccurs="1" name="Errors"
type="tns:ArrayOfServiceError" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfServiceError">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="ServiceError"
nillable="true" type="tns:ServiceError" />
</s:sequence>
</s:complexType>
<s:complexType name="ServiceError">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Id" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
</s:sequence>
</s:complexType>
<s:element name="CMBHSAuthenticationHeader"
type="tns:CMBHSAuthenticationHeader" />
<s:complexType name="CMBHSAuthenticationHeader">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CMBHSUserName"
type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CMBHSPassword"
type="s:string" />
</s:sequence>
<s:anyAttribute />
</s:complexType>
</s:schema>
<s:schema elementFormDefault="qualified"
targetNamespace="
http://dshs.cmbhs/AbstractDomainObject">
<s:complexType name="AbstractDomainObject" abstract="true" />
</s:schema>
</wsdl:types>
<wsdl:message name="DownloadDocumentSoapIn">
<wsdl
art name="parameters" element="tns
ownloadDocument" />
</wsdl:message>
<wsdl:message name="DownloadDocumentSoapOut">
<wsdl
art name="parameters" element="tns
ownloadDocumentResponse" />
</wsdl:message>
<wsdl:message name="DownloadDocumentCMBHSAuthenticationHeader">
<wsdl
art name="CMBHSAuthenticationHeader"
element="tns:CMBHSAuthenticationHeader" />
</wsdl:message>
<wsdl
ortType name="DownloadServiceSoap">
<wsdl
peration name="DownloadDocument">
<wsdl:documentation
xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/">Process search client
request for match from CMBHS</wsdl:documentation>
<wsdl:input message="tns
ownloadDocumentSoapIn" />
<wsdl
utput message="tns
ownloadDocumentSoapOut" />
</wsdl
peration>
</wsdl
ortType>
<wsdl:binding name="DownloadServiceSoap" type="tns
ownloadServiceSoap">
<soap:binding transport="
http://schemas.xmlsoap.org/soap/http" />
<wsdl
peration name="DownloadDocument">
<soap
peration
soapAction="
http://www.dshs.state.tx.us/cmbhs/DownloadDocument"
style="document" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="tns
ownloadDocumentCMBHSAuthenticationHeader"
part="CMBHSAuthenticationHeader" use="literal" />
</wsdl:input>
<wsdl
utput>
<soap:body use="literal" />
<soap:header message="tns
ownloadDocumentCMBHSAuthenticationHeader"
part="CMBHSAuthenticationHeader" use="literal" />
</wsdl
utput>
</wsdl
peration>
</wsdl:binding>
<wsdl:binding name="DownloadServiceSoap12" type="tns
ownloadServiceSoap">
<soap12:binding transport="
http://schemas.xmlsoap.org/soap/http" />
<wsdl
peration name="DownloadDocument">
<soap12
peration
soapAction="
http://www.dshs.state.tx.us/cmbhs/DownloadDocument"
style="document" />
<wsdl:input>
<soap12:body use="literal" />
<soap12:header message="tns
ownloadDocumentCMBHSAuthenticationHeader"
part="CMBHSAuthenticationHeader" use="literal" />
</wsdl:input>
<wsdl
utput>
<soap12:body use="literal" />
<soap12:header message="tns
ownloadDocumentCMBHSAuthenticationHeader"
part="CMBHSAuthenticationHeader" use="literal" />
</wsdl
utput>
</wsdl
peration>
</wsdl:binding>
<wsdl:service name="DownloadService">
<wsdl
ort name="DownloadServiceSoap" binding="tns
ownloadServiceSoap">
<soap:address
location="
http://cmbhstrn.dshs.state.tx.us/cmbhswebservice/service/downloadserv..."/>
</wsdl
ort>
<wsdl
ort name="DownloadServiceSoap12" binding="tns
ownloadServiceSoap12">
<soap12:address
location="
http://cmbhstrn.dshs.state.tx.us/cmbhswebservice/service/downloadserv..."/>
</wsdl
ort>
</wsdl:service>
I do not see a HTTP Post so I do not think the actual request for
information was transmitted.
I also tried this on a Windows XP system with Access 2003 with the same
result.
Any idea what the error message means?
How can I find out more on the error message and how to resolve it.