Dear experts,
I am trying to invoke a web service through Data Services. The version of Data Services is 12.2.3.0.
The wsdl file works fine in SOAPUI.
We created two datastores.
- Datastore type: Web Service. The wsdl file, username and password are all correct. Keystore path is left empty. From this datastore, we could import functions. Then we built a batch job and called the function imported from this datastore. The problem is that we have the below error after the job is completed successfully.
ERROR1
There is no response for the web service <getRespondents>. Ensure that the network, the web service and the service are running.
Then after reading a post http://scn.sap.com/thread/1826365 , saying the HTTPS doesn’t work well with web service datastore, and use a properly specified keystore path and an adapter datastore, the problem can be resolved.
- Then second datastore is created as an adapter datastore.
Datastore type: adapter.
Adapter instance name is WebService. - It is the default adapter instance by default.
URL of Web Service is the same wsdl link
keystore path is the path on the server where the keystore.jks is created. I built the .csr file and imported a signed certificate of the server where the wsdl is hosted into the keystore.jks.
The adapter setup validates. Then when I try to open the datastore, it gives me this error:
ERROR2
Cannot browse external metadata for adapter instance <WebService> at <ourdomainname:port number>
Error message: Error browsing root nodes. Xml generated so far:[]. com.acta.adapter.sdk.AdapterException: Unable to parse WSDL from Web Service. Error: WSDLException: faultCode=OTHER_ERROR: Unable to resolve imported document at 'https://......wsdl link'.:sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.acta.adapter.webservice.adapter.WebServiceBrowse.getRootNodes(WebServiceBrowse.java:105).....
I read the post http://scn.sap.com/thread/1589052 and changed the WebServices adapter instance metadata character set to UTF-8 to suit for the wsdl.
Yesterday the above error disappeared and I got a different error when I try to import the functions for this adapter datastore. I could see the list of functions yesterday.
This is the error I got when trying to import the function.
ERROR3
Adapter metadata import failed. Error message: (BODI-1112015) Error parsing the <TheFunctionToBeImported> included in the XML sent by the adapter to represet a function <Error importing XML Schema from file <adapter_schema_in.xsd>:<XML parser failed: Error <Schema Representation Constraint: Namespace 'http://result.form.v81.api.keysurvey.com' is referenced without <import> declaration> at line <13>, char <46> in < < xsd:schema xmln:xsd=http://www.w3.org/2001/XMLSchema" xmln:tns="http://result.form.v81.api.keystore.com" xmlns:diws="http://businessobjects.com/diwebservice" targetnamespace="http://www.businessobjects.com/diwebservice"><xsd:import namespace='http://v81.api.keysurvey.com' schemaLocation='C:\Program Files\Business Objects\BusinessObjects Data Services\ext\webservice\FormResultManagemenetgetRespondentsgetRespondents0.xsd'/>
<xsd: import namespace='http://result.form.v81.api.keysurvey.com' schemaLocation='C:\Program Files\Business Objects\BusinessObjects Data Services\ext\webservice\FormResultManagemenetgetRespondentsgetRespondents2.xsd'/> ........
And today for some reason, it come back to the ERROR 2 again.
Is there anyone who can help me on this? Run out of resources and don’t think I could dig more from google and BOB.
THANK YOU!
Amy
AmyQ (BOB member since 2012-07-10)