HTTPS web service datastore : does not work in case of proxy

Data Services 12.2 on Windows XP SP2

I’ve set up a datastore, type “web service”, url is https://… (an external web service, outside of our company)
I’m able to import the functions of this web service into the datastore.
In a DF, in a query transform, I call one these functions.

The job fails with this error message :
There is no response for the web service . Ensure that the network, web server, and service are running properly. Also ensure that the service client call time out is set properly.

I have to pass a proxy.

When I do not have to pass a proxy (when I execute this job on my laptop not connected to the office network) the job runs fine !

How can you configure the axis2.xml so that https can run with a proxy ? (no problem to this for http web services, but I do not see a solution for https web services !)

Thanks !!


hsegers :belgium: (BOB member since 2009-06-05)

try using the WebService Adapter, set the following in the Additional Java Launcher Options

-Dhttp.proxyHost=[Your proxy server name] -Dhttp.proxyPort=[Your proxy server port]

for this will have to setup a Job Server to Manage Adapters and configure a Webservice Adapter from Management Console


manoj_d (BOB member since 2009-01-02)

Thanks for this workaround.

I’ve created a new datastore, type = adapter, adapter instance name = webservice

When I try to import the function of the web service, I’m getting this error message :

Error parsing the included in the XML sent by the adapter to represent a function <Error importing XML
Schema from file <adapter_schema_in.xsd>: <XML parser failed: Error <Schema Representation Constraint: Namespace ‘traceswsns’
is referenced without declaration> at line <11>, char <85> in <<xsd:schema
xmlns:xsd=“http://www.w3.org/2001/XMLSchema
xmlns:tns=“traceswsns” xmlns:diws=“http://www.businessobjects.com/diwebservice
targetNamespace=“http://www.businessobjects.com/diwebservice”>
<xsd:import namespace=‘traceswsns’
schemaLocation=‘http://BRUN60179179A:/webservice/CertificateSearchWebServicesearchCertificatesearchCertificate0.xsd’/>
<xsd:element name=“searchCertificate”>
xsd:complexType
xsd:sequence
<xsd:element name=‘certificateSearchCriterion’ type=‘tns:CertificateRequest’/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>>, file <<xsd:schema
xmlns:xsd=“http://www.w3.org/2001/XMLSchema
xmlns:tns=“traceswsns” xmlns:diws=“http://www.businessobjects.com/diwebservice
targetNamespace=“http://www.businessobjects.com/diwebservice”>
<xsd:import namespace=‘traceswsns’
schemaLocation=‘http://BRUN60179179A:/webservice/CertificateSearchWebServicesearchCertificatesearchCertificate0.xsd’/>
<xsd:element name=“searchCertificate”>
xsd:complexType
xsd:sequence
<xsd:element name=‘certificateSearchCriterion’ type=‘tns:CertificateRequest’/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>>.>. Please validate your XML Schema using external schema validators (found at w3.org).>: .


hsegers :belgium: (BOB member since 2009-06-05)

is the following location correct ?
I think the port number is missing after the server name (BRUN60179179A: )

http://BRUN60179179A:/webservice/CertificateSearchWebServicesearchCertificatesearchCertificate0.xsd’/


manoj_d (BOB member since 2009-01-02)

Thanks for your response.

You are right that the portnumber in that url is missing, I suspect this is a possible cause. I do not know how you can configure that.

Do you see a way to configure ?

Thanks


hsegers :belgium: (BOB member since 2009-06-05)

for this you have to check the WSDL that you are importing, is this WSDL for DS Web Services ?


manoj_d (BOB member since 2009-01-02)

I’m using this url in the “URL of Web Service”-text box in the web service adapter datastore :

http://www.nws.noaa.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl

The functions are showns in the External Metadata. When I import one of them, this error message pops up :

[i]

Error parsing the included in the XML sent by the adapter to represent a function <Error importing XML Schema from file <adapter_schema_in.xsd>: <XML parser failed: Error <Schema Representation Constraint: Namespace ‘http://www.weather.gov/forecasts/xml/DWMLgen/schema/DWML.xsd’ is referenced without declaration> at line <11>, char <60> in <<xsd:schema
xmlns:xsd=“http://www.w3.org/2001/XMLSchema
xmlns:typens=“http://www.weather.gov/forecasts/xml/DWMLgen/schema/DWML.xsd
xmlns:diws=“http://www.businessobjects.com/diwebservice” targetNamespace=“http://www.businessobjects.com/diwebservice”>
<xsd:import namespace=‘http://www.weather.gov/forecasts/xml/DWMLgen/schema/DWML.xsd
schemaLocation=‘http://BRUN60179179A:/webservice/ndfdXMLCornerPointsCornerPointsRequest0.xsd’/>
<xsd:element name=“CornerPoints”>
xsd:complexType
xsd:sequence
<xsd:element name=‘sector’ type=‘typens:sectorType’/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>>, file <<xsd:schema
xmlns:xsd=“http://www.w3.org/2001/XMLSchema
xmlns:typens=“http://www.weather.gov/forecasts/xml/DWMLgen/schema/DWML.xsd
xmlns:diws=“http://www.businessobjects.com/diwebservice” targetNamespace=“http://www.businessobjects.com/diwebservice”>
<xsd:import namespace=‘http://www.weather.gov/forecasts/xml/DWMLgen/schema/DWML.xsd
schemaLocation=‘http://BRUN60179179A:/webservice/ndfdXMLCornerPointsCornerPointsRequest0.xsd’/>
<xsd:element name=“CornerPoints”>
xsd:complexType
xsd:sequence
<xsd:element name=‘sector’ type=‘typens:sectorType’/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>>.>. Please validate your XML Schema using external schema validators (found at w3.org).>: .[/i]


hsegers :belgium: (BOB member since 2009-06-05)

I am not sure why in your case its referring to target namespace as targetNamespace="http://www.businessobjects.com/diwebservice

I saved the WSDL to the local folder and used the path in the URL etxt field, and I am able to import the functions in both 12.1 and 12.2 version for Adapter Datastore

is BRUN60179179A machine where DS Web Sever is installed ?

while importing funtions from WSDL the request and response xsd will be generated at run time in %LINK_DIR%\ext\webservice folder and imported into Datastore

the targetname space that you see, in your xsd for DS WSDL


manoj_d (BOB member since 2009-01-02)

BRUN60179179A is indeed the name of the machine on which I’m working.
I’ve Data Services and Tomcat on a Windows XP Professional.

I’m going to test on another machine, as the error message is still the same, even when I enter the path and file name in the URL textbox.

(see attachment)
adapter_metadata_import_failed.jpg


hsegers :belgium: (BOB member since 2009-06-05)

I think something is going wrong with the XSD creation for request and response, can you try following

on the machine where you are creating datastore
go to the %LINK_DIR%\ext\webservice folder and check if there are any xsd files related to this WSDL

you can either clean that folder or move all those XSD files to a backup folder, the schema location tag will be genrated for Native Web Service Datastore not for Adapter datastore, if I import th same WSDL in a native webservice datastore the schemalocation is coming as absolute path instead of http:// its C:\Program Files …

can you give me the exact version of DS (you can check this form Designer Help -> About Data Services)


manoj_d (BOB member since 2009-01-02)

I’m working with Data Services 12.2 (the latest version, all components have version 12.2.0.0, repo has 12.2.0.000)

I notice exactly the same behaviour as you have. When I import the wsdl into a native web services datastore, the schema location points to c:\program files… and not to http:\machinename…


hsegers :belgium: (BOB member since 2009-06-05)

is you DS Web Server (tomcat) installed on the same machine as Designer ? or you have distributed env where tomcat is on a different server ?

if your DS Web Server is on different machine, then try the following
copy the DataServices.html file from the DS Web server machine to the Designer machine to the following location

%LINK_DIR%\ext\

or on the Designer machine create %LINK_DIR%\ext\DataServices.html file with the following content


manoj_d (BOB member since 2009-01-02)

Thanks a lot, that is the solution.

In the DataServices.html file, there was no port in the url. I did not notice it as I have a link in the Favorites of my browser to the Management Console.

Thanks a lot


hsegers :belgium: (BOB member since 2009-06-05)