cancel
Showing results for 
Search instead for 
Did you mean: 

Why is the web service cannot be invoked?

isathore
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Experts,

Scenario: I have created a web service from a function module from SAP CRM using SOAMANAGER. I wish to invoke this web service from Data Services.

I have tried to invoke the web service using the 2 types of data store avaible in Data Services:

- One Web Service datastore

- One Adapter datastore

Both have the same WSDL URL and I see the defintion of the web service in both. Fine.

I created 2 dataflows:

- One invoking the function from the Web Service datastore

- One invoking the function from the Adapter datastore

When I execute the batch job, I get different errors in the 2 dataflows, but the root cause seems to be the same: it cannot access and execute the web service.

- In the dataflow using the function from the Web Service data store, I get the error RUN-248005 There is no response for thte web service. Ensure that the network, web server, and service are running properly. Also ensure that the service call time out is set properly

- In the dataflow using the function from the Adaptor data store, I get the error RUN-058110 Error calling function. Web Service client unable to invoke Web Service Server. Error: (0)null

I have checked the Data Integrator documentation and nothing is mentioned on what is a proper time out setting.

I have followed the white paper of Michael Eaton [Building Data Integrator Real Time Jobs and Calling Web Services|http://www.sdn.sap.com/irj/boc/go/portal/prtroot/docs/library/uuid/20bd5e60-11f9-2b10-2bbb-b5109cceff08?quicklink=index&overridelayout=true]. Nothing is mentioned in there in regards of special configuration. Yet, my scenario is a bit different here as I am using and external web service and not a published web service from Data Services.

Is there some Data Services configuration missing here? The web service is not secure: it as the lowest level of security, which is NONE! :).

What am I am missing :(?

Thanks a lot & Best Regards

Isabelle

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

check if the webserver is behind a proxy, in that case for WebServer Adapter, add the following proxy details argument in the Additional Java Launcher Options

-Dhttp.proxyHost=xxxxxx -Dhttp.proxyPort=nnnn

in case of webservice datastore modify the axis2.xml in %LINK_DIR%\ext\webservice-c to pass the proxy details for HTTP

isathore
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Manoj,

Thanks for the tip, unfortunately it still doesn't work.

I had posted a thread to the web service forum [;. I was given the tip to invoke the web service using SOAP UI ([www.soapui.org]). I was able to invoke my web service and execute the service successfully! That's one win!

Yet, in DS it still doesn't work :(. I have:

- Added the Dhttp.proxyHost and Dhttp.proxyPort in the Additional Java Launcher Options in DS Management Console. I am not sure I have the right ones though. I think I might have the wrong values. I will recheck. Yet, when using SOAP UI, I don't need it so I am wondering why DS needs this.

- I have added the user/password in the adaptor datastore where the WSDL is specified.

I couldn't find any documentation related to the possible options for Additional Java Launcher Options. Where is this documented?

Thanks for your help & Best Regards

Isabelle

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Isabelle,

Just wanted to understand one thing.

Are you trying to say that to integrate BODS 4.1  with Sales Force(SFDC) ,we have only option  and that is to use Sales Force Adapters?

Because on consuming webservices for Sales force ,using WSDL , i am facing the same error message as you faced .

""There is no response for the web service <login>. Ensure that the network, web server, and service are running properly. Also ensure that the service client call time out is set properly."

Also if we are having lower version of BODS  ie 3.2, how can we integrate with Sales force ,because as we know ,there are issues with adapters in  BODS3.2.


Your reply would be highly appreciated.

Thanks ,

Mayank

isathore
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Mayank,

I am not working on this topic anymore. However, I was not working with Sales Force at the time. Maybe someone from the community will be able to help you further.

Good Luck

Isabelle

isathore
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

Some updates on the issue of invoking web services in Data Services.

Some hints:

- Ensure to test your web service using SOAP UI [http://www.soapui.org].

- Verify if SOAPUI is using an SSL certificate, under SSL Info tab, once your request is executed.

Most likely, you need to define a SSL certificate which must also be defined in Data Services, under the web service datastore where you are defining your web service, under field Keystore path. Review how to create this certificate based the web server that you are using, TomCat or WebSphere.

Still investigating this topic and will post more once completed.

Best Regards

Isabelle

isathore
Product and Topic Expert
Product and Topic Expert
0 Kudos

Dear followers ,

Thanks to some support from Manoj, one of the contributors on this forum, I could finally invoke the web service using the adapter datastore.

One important discovery: even if the URL used is HTTP, it is automatically redirected to a HTTPS (follow [Why HTTP is redirected to HTTPS even if web service is without security?|;). This occurs even if the web service was configured without any authentication method, without any transport secury, and with HTTP transport protocol.

In this case, the only way to be able to invoke a web service in Data Services, is to use the adapter datastore. There is currently a restriction with the web service datastore that cannot process HTTPS if there is a proxy server in the environment where Data Services is used. However, using adapter datastore works well in this case.

The question is therefore finally answered since the web service can be invoked using the adapter datastore with the keystore path properly specified.