Error Consuming Web Services
Hi All,
I'm using CFINVOKE to consume an enterprise web service. Now, I'm not well versed in web services. But, from reading the CF documentation on them, you're supposed to be able to use <CFINVOKE...> to access them. So, on my test page I have:
<cfinvoke webservice="http://domain.xxx/webservice/EnterpriseWebService?WSDL" method="neededMethod" returnVariable="theOutput"> <cfinvokeargument name="input1" value="#myInput#" />
</cfinvoke>
I'm trying to use a method called "neededMethod". When the <cfinvoke...> tag is reached, I get the following error: coldfusion.jsp.CompilationFailedException: Errors reported by Java compiler: Found 2 semantic errors compiling "/export/jrun4/servers/cfusion/cfusion-ear/cfusion-war/WEB-INF/cfusion/stubs/WS-147004589 /EnterpriseWebService/webservice/xxx/gov/us/EnterpriseWebService.java: 13. public EnterpriseWebService.webservice.xxx.gov.us.EnterpriseWebServicePort getEnterpriseWebServicePort() throws javax.xml.rpc.ServiceException; ^--------^ *** Semantic Error: Type "EnterpriseWebService.webservice.xxx.gov.us.EnterpriseWebService$webservice" was not found. 15. public EnterpriseWebService.webservice.xxx.gov.us.EnterpriseWebServicePort getEnterpriseWebServicePort(java.net.URLportAddress) throws javax.xml.rpc.ServiceException; ^--------^ *** Semantic Error: Type "EnterpriseWebService.webservice.xxx.gov.us.EnterpriseWebService$webservice" was not found 8 semantic errors compiling "/export/jrun4/servers/cfusion/cfusion-ear/cfusion-war/WEB-INF/cfusion/stubs/WS-147004589 /EnterpriseWebService....
I looked at the Java files in the referenced directories. They seem to be generated by something called Axis. But, compiling these fail. Is there something in the CF admin that I can tweak?
Place your wsdl on your URL browser, and at the bottom of the output, there should be a an http pointing to your webserver. Make sure that your server domain or IP address is listed on the http pointer. If not, then correct and run.
Try that, and see how it goes.
HTH.
Melvin T.
Similar Messages
-
Error consuming Web service from an ABAP Program
Hello guys,
I'm trying to consume a Web Service that is exposed in the internet. The conecction to the Web Service its via SSL.
I'm having a problem at the moment I call the web service from my abap program. But I'm able to test the same web service, from the SE80 tx with out trouble.
I have identify that there is a difference in the SOAP envelope, that its received in the Web service, when I call it from the test enviorment and when I call it from the program.
This is how it is received from the TEST tool (a succesfull call of th WS) :
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header><n0:Trace xmlns:n0="http://www.sap.com/webas/630/soap/features/runtime/tracing/"><TraceLevel xmlns="http://www.sap.com/webas/630/soap/features/runtime/tracing/">Error</TraceLevel></n0:Trace></soap-env:Header><soap-env:Body><nr1:putXMLDocument xmlns:nr1="http://bel.bci.cl/WsBEL/services/Carga"><body><?xml version="1.0" encoding="ISO-8859-1"?><Mensaje><RutEmpresa><Numero>76555400</Numero><Digito>4</Digito></RutEmpresa><RutUsuario><Numero>12307972</Numero><Digito>8</Digito></RutUsuario><Convenio>58422</Convenio><Pin>aro79728</Pin><Archivo><Tipo>PPR</Tipo><Plantilla>2142970592</Plantilla><Nombre>cargatest174.txt</Nombre><Cuerpo><![CDATA[G126919727 JORGE CRISTIAN VARGAS ROMERO 0000VVC01600000000000000000000245FAC0000000089900032000021030000010000000000190000 2910200714082008Boletas honorarios|]]></Cuerpo></Archivo><Fecha>20080814</Fecha></Mensaje></body></nr1:putXMLDocument></soap-env:Body></soap-env:Envelope>
And this is how it is received when I consume the web service from the ABAP program.
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header><n0:Trace xmlns:n0="http://www.sap.com/webas/630/soap/features/runtime/tracing/"><TraceLevel xmlns="http://www.sap.com/webas/630/soap/features/runtime/tracing/">Error</TraceLevel></n0:Trace></soap-env:Header><soap-env:Body><nr1:putXMLDocument xmlns:nr1="http://bel.bci.cl/WsBEL/services/Carga"><body><?xml version="1.0" encoding="utf-8" ?><nr1:putXMLDocument xmlns:nr1="http://bel.bci.cl/WsBEL/services/Carga"><body><?xml version="1.0" encoding="ISO-8859-1"?><Mensaje><RutEmpresa><Numero>76555400</Numero><Digito>4</Digito></RutEmpresa><RutUsuario><Numero>12307972</Numero><Digito>8</Digito></RutUsuario><Convenio>58422</Convenio><Pin>aro79728</Pin><Archivo><Tipo>PPR</Tipo><Plantilla>2142970592</Plantilla><Nombre>cargatest174.txt</Nombre><Cuerpo><![CDATA[G126919727 JORGE CRISTIAN VARGAS ROMERO 0000VVC01600000000000000000000245FAC0000000089900032000021030000010000000000190000 2910200714082008Boletas honorarios|]]></Cuerpo></Archivo><Fecha>20080814</Fecha></Mensaje></body></nr1:putXMLDocument></body></nr1:putXMLDocument></soap-env:Body></soap-env:Envelope>
As you can see, it is generating a nr1:putXMLDocument tag, that it should not go there.
Why do you think that this situation is happening? Please guys, this is very important, and need your help. Thanks in advance.
Samuel.BSP a Developer's Journal Part XIV - Consuming WebServices with ABAP
Calling WebServices from ABAP via HTTPS
Consuming Web Service from ABAP by Durairaj Athavan Raja
Search on SDN wiki, and you will find above mentioned links. -
Error consuming web service in web dynpro
Im looking up https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c0d9336b-b4cf-2910-bdbf-b00d89bd2929 to consume a webservice in web dynpro.
I deployed the ear file containing the web service.
Now when I create an adaptive web service model in web dynpro project i get an error:
Error in loading wsdl file. Check the error log for more details.It seems to work well with just "Import web service model" - but its deprecated...
What can we do about the adaptive option? -
Error consuming Web service with object hierarchy
I am creating a Web reference to a Web service deployed on JBoss application server. Incidentally, I am able to consume this Web service and run a client against it in .NET. Sun Java Studio Creator has a problem with one of methods in my Web service.
As far as I can tell from my experimentation, the problem lies in the fact that the JavaBean returned from the Web service extends another JavaBean (rather than Object). When I flatten the value object in question, I am able to run the same Web service method in Studio Creator.
I encountered the following post on this forum: http://swforum.sun.com/jive/thread.jspa?forumID=123&threadID=49056. It appears to describe a similar problem. I tried to follow the instructions in that forum by upgrading the JWSDP version (to 1.5) to no avail. I continue to receive the following error when trying to test the Web Service method after creating a Web Service reference in Creator.
The relevant error appears to be
deserialization error: deserialization error: unexpected XML reader state. expected: END but found: START: entityID (where entityID is one of the attributes of the object being returned by the Web Service, which is defined in that object's parent class).
InvocationTargetException com.sun.rave.websvc.ui.ReflectionHelper.callMethodWithParams(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.invokeMethod(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.access$500(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg$4.run(Unknown Source) java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178) java.awt.EventQueue.dispatchEvent(EventQueue.java:454) java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201) java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137) java.awt.EventDispatchThread.run(EventDispatchThread.java:100) null sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:324) com.sun.rave.websvc.ui.ReflectionHelper.callMethodWithParams(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.invokeMethod(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.access$500(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg$4.run(Unknown Source) java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178) java.awt.EventQueue.dispatchEvent(EventQueue.java:454) java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201) java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137) java.awt.EventDispatchThread.run(EventDispatchThread.java:100) Runtime exception; nested exception is: deserialization error: deserialization error: unexpected XML reader state. expected: END but found: START: entityID com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(StreamingSender.java:248) com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:230) webservice.carmanagerservice.CarManager_Stub.findAllAsArray(CarManager_Stub.java:358) webservice.carmanagerservice.CarManagerServiceClient.carmanagerserviceFindAllAsArray(CarManagerServiceClient.java:35) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:324) com.sun.rave.websvc.ui.ReflectionHelper.callMethodWithParams(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.invokeMethod(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.access$500(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg$4.run(Unknown Source) java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178) java.awt.EventQueue.dispatchEvent(EventQueue.java:454) java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201) java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137) java.awt.EventDispatchThread.run(EventDispatchThread.java:100) deserialization error: deserialization error: unexpected XML reader state. expected: END but found: START: entityID com.sun.xml.rpc.encoding.SOAPDeserializationContext.deserializeMultiRefObjects(SOAPDeserializationContext.java:82) com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:163) webservice.carmanagerservice.CarManager_Stub.findAllAsArray(CarManager_Stub.java:358) webservice.carmanagerservice.CarManagerServiceClient.carmanagerserviceFindAllAsArray(CarManagerServiceClient.java:35) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:324) com.sun.rave.websvc.ui.ReflectionHelper.callMethodWithParams(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.invokeMethod(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg.access$500(Unknown Source) com.sun.rave.websvc.ui.TestWebServiceMethodDlg$4.run(Unknown Source) java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178) java.awt.EventQueue.dispatchEvent(EventQueue.java:454) java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201) java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137) java.awt.EventDispatchThread.run(EventDispatchThread.java:100)<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" xmlns:intf="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns1="urn:CarManager" xmlns:tns2="http://common.ejb.application.jetson.datasourceinc.com" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><wsdl:types><schema targetNamespace="http://common.ejb.application.jetson.datasourceinc.com" xmlns="http://www.w3.org/2001/XMLSchema"><import namespace="http://schemas.xmlsoap.org/soap/encoding/"/><complexType abstract="true" name="InfoBase"><sequence><element name="primaryKey" nillable="true" type="xsd:long"/><element name="filterType" nillable="true" type="xsd:short"/><element name="userID" nillable="true" type="xsd:string"/><element name="lastUpdateDate" nillable="true" type="xsd:dateTime"/><element name="entityID" nillable="true" type="xsd:long"/></sequence></complexType><complexType name="BusinessException"><sequence><element name="scriptMessage" nillable="true" type="xsd:string"/><element name="errorCode" type="xsd:int"/></sequence></complexType></schema><schema targetNamespace="urn:CarManager" xmlns="http://www.w3.org/2001/XMLSchema"><import namespace="http://schemas.xmlsoap.org/soap/encoding/"/><complexType name="CarInfo"><complexContent><extension base="tns2:InfoBase"><sequence><element name="year" nillable="true" type="xsd:int"/><element name="make" nillable="true" type="xsd:string"/><element name="model" nillable="true" type="xsd:string"/></sequence></extension></complexContent></complexType><complexType abstract="true" name="List"><sequence><element name="empty" type="xsd:boolean"/></sequence></complexType></schema><schema targetNamespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" xmlns="http://www.w3.org/2001/XMLSchema"><import namespace="http://schemas.xmlsoap.org/soap/encoding/"/><complexType name="ArrayOf_tns1_CarInfo"><complexContent><restriction base="soapenc:Array"><attribute ref="soapenc:arrayType" wsdl:arrayType="tns1:CarInfo[]"/></restriction></complexContent></complexType></schema></wsdl:types>
<wsdl:message name="createRequest">
<wsdl:part name="in0" type="tns1:CarInfo"/>
</wsdl:message>
<wsdl:message name="findByPrimaryKeyResponse">
<wsdl:part name="findByPrimaryKeyReturn" type="tns1:CarInfo"/>
</wsdl:message>
<wsdl:message name="removeRequest">
<wsdl:part name="in0" type="tns1:CarInfo"/>
</wsdl:message>
<wsdl:message name="findByPrimaryKeyRequest">
<wsdl:part name="in0" type="xsd:long"/>
</wsdl:message>
<wsdl:message name="updateRequest">
<wsdl:part name="in0" type="tns1:CarInfo"/>
</wsdl:message>
<wsdl:message name="createResponse">
<wsdl:part name="createReturn" type="tns1:CarInfo"/>
</wsdl:message>
<wsdl:message name="removeResponse">
</wsdl:message>
<wsdl:message name="findAllAsArrayResponse">
<wsdl:part name="findAllAsArrayReturn" type="impl:ArrayOf_tns1_CarInfo"/>
</wsdl:message>
<wsdl:message name="findAllAsArrayRequest">
</wsdl:message>
<wsdl:message name="updateResponse">
<wsdl:part name="updateReturn" type="tns1:CarInfo"/>
</wsdl:message>
<wsdl:message name="BusinessException">
<wsdl:part name="fault" type="tns2:BusinessException"/>
</wsdl:message>
<wsdl:portType name="CarManager">
<wsdl:operation name="remove" parameterOrder="in0">
<wsdl:input message="impl:removeRequest" name="removeRequest"/>
<wsdl:output message="impl:removeResponse" name="removeResponse"/>
<wsdl:fault message="impl:BusinessException" name="BusinessException"/>
</wsdl:operation>
<wsdl:operation name="create" parameterOrder="in0">
<wsdl:input message="impl:createRequest" name="createRequest"/>
<wsdl:output message="impl:createResponse" name="createResponse"/>
<wsdl:fault message="impl:BusinessException" name="BusinessException"/>
</wsdl:operation>
<wsdl:operation name="update" parameterOrder="in0">
<wsdl:input message="impl:updateRequest" name="updateRequest"/>
<wsdl:output message="impl:updateResponse" name="updateResponse"/>
<wsdl:fault message="impl:BusinessException" name="BusinessException"/>
</wsdl:operation>
<wsdl:operation name="findByPrimaryKey" parameterOrder="in0">
<wsdl:input message="impl:findByPrimaryKeyRequest" name="findByPrimaryKeyRequest"/>
<wsdl:output message="impl:findByPrimaryKeyResponse" name="findByPrimaryKeyResponse"/>
<wsdl:fault message="impl:BusinessException" name="BusinessException"/>
</wsdl:operation>
<wsdl:operation name="findAllAsArray">
<wsdl:input message="impl:findAllAsArrayRequest" name="findAllAsArrayRequest"/>
<wsdl:output message="impl:findAllAsArrayResponse" name="findAllAsArrayResponse"/>
<wsdl:fault message="impl:BusinessException" name="BusinessException"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="CarManagerServiceSoapBinding" type="impl:CarManager">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="remove">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="removeRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:input>
<wsdl:output name="removeResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:output>
<wsdl:fault name="BusinessException">
<wsdlsoap:fault encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="create">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="createRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:input>
<wsdl:output name="createResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:output>
<wsdl:fault name="BusinessException">
<wsdlsoap:fault encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="update">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="updateRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:input>
<wsdl:output name="updateResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:output>
<wsdl:fault name="BusinessException">
<wsdlsoap:fault encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="findByPrimaryKey">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="findByPrimaryKeyRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:input>
<wsdl:output name="findByPrimaryKeyResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:output>
<wsdl:fault name="BusinessException">
<wsdlsoap:fault encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="findAllAsArray">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="findAllAsArrayRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:input>
<wsdl:output name="findAllAsArrayResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:output>
<wsdl:fault name="BusinessException">
<wsdlsoap:fault encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService" use="encoded"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="CarManagerService">
<wsdl:port binding="impl:CarManagerServiceSoapBinding" name="CarManagerService">
<wsdlsoap:address location="http://w2k3-vs-msmolyak:7223/jetson-axis/services/CarManagerService"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions> -
I am trying to consume a web service from an Outbound Proxy. I am getting the following error message:-
Unsupported xstream found: ("HTTP Code 200 : OK")
This is a System Exception generated while I call the Outbound Proxy.
Kindly let me know what could be the issue.
An early reply will be highly appreciated as I am getting this issue in my Production Server.This doesn't appear to be a Web Dynpro related question. Please only post Web Dynpro ABAP related questions in this forum.
-
Data Services - Error Consuming Web Service from SAP CE
Hello all,
I developed a very quick sample real-time job in Data Services just to test the web services and connectivity between BoBJ DS and SAP CE. The real-time job doesn't do anything fancy, just converts characters from lower case to upper case. In SAP CE I am attempting to use the web service navigator to test the WSDL (http://localhost:28080/DataServices/servlet/webservices?ver=2.0&wsdlxml). SAP CE correctly connects to the WSDL and gives me a selection list where I can drill down to Real-Time Services -> my real time job. I put in some test data and execute the web service and I get the following error:
Invalid transport binding settingsDocument is not well-formed: Expected End-tag 'MAIN', received:a, on position: 0 (:main:, row:1, col:0)
The strange thing is that the HTTP response message shows that the service actually executed, because the data has been converted to upper case as it was supposed to. Also, if I go into the Data Services Management Console it shows the service was executed with no errors. The strange thing is that I notice something wrong when I look at the response message vs. the source message:
Source:
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<pns:MAIN xmlns:pns="private">
<pns:RECORD>
<pns:NAME>Test Name</pns:NAME>
<pns:NUMBER>Test1234</pns:NUMBER>
<pns:ADDRESS>123 Testing Lane</pns:ADDRESS>
<pns:CITY>Santa Clara</pns:CITY>
<pns:STATE>CA</pns:STATE>
<pns:POSTAL>95057</pns:POSTAL>
</pns:RECORD>
</pns:MAIN>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Target:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><MAIN xmlns="private" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\Documents%20and%20Settings\TEMP\Desktop\Schema.xsd">
<RECORD><NAME>TEST NAME</NAME>
<NUMBER>TEST1234</NUMBER>
<ADDRESS>123 TESTING LANE</ADDRESS>
<CITY>SANTA CLARA</CITY>
<STATE>CA</STATE>
<POSTAL>95057</POSTAL>
</RECORD>
</aw:MAIN></soapenv:Body></soapenv:Envelope>
If you notice in the target message the closing <MAIN> tag is preceded by "aw". I'm not sure what this means, and I'm not sure where it's coming from, but I think it could have something to do with the error because it doesn't match the opening tag.
I'm not sure if this is something that is set in Data Services? I've checked around quite a bit but I am stumped! Can anyone help?what is the version of dataServices you are using ? there was a bug that was fixed related to this issue, if you are on 12.1 (DS XI 3.1) then use the latest 12.1 Fix Pack 12.1.1.7
if you are on 12.2 (DS XI 3.2) then use the latest SP and FP 12.2.2.1 -
Hi all,
We are trying to interact with Documentum server through DFS exposed WCF which communicates through port 9443 and we are provided with documentum issued Public Key certificates. We have successfully imported the certificates in client machine and configured
the bindings as below in our .Net web application config file.
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding
name="ObjectServicePortBinding1">
<security
mode="Transport">
<transport
clientCredentialType="None"
proxyCredentialType="None"
realm=""
/>
<message
clientCredentialType="Certificate"
algorithmSuite="Default"
/>
</security>
</binding>
<binding
name="QueryServicePortBinding">
<security
mode="Transport">
<transport
clientCredentialType="None"
proxyCredentialType="None"
realm=""
/>
<message
clientCredentialType="Certificate"
algorithmSuite="Default"
/>
</security>
</binding>
</wsHttpBinding>
</bindings>
Also, we set the message encoding as MTOM and the wcf client object initialization code snippet is as below,
ObjectServicePortClient
serviceClient = new
ObjectServicePortClient(new
WSHttpBinding("ObjectServicePortBinding1"),
new
EndpointAddress(UriUtil.ObjectServiceUri));
if (serviceClient.Endpoint.Binding
is
WSHttpBinding)
WSHttpBinding
wsBinding = serviceClient.Endpoint.Binding as
WSHttpBinding;
wsBinding.MessageEncoding =
"MTOM".Equals(transferMode) ?
WSMessageEncoding.Mtom :
WSMessageEncoding.Text;
serviceClient.Endpoint.Behaviors.Add(new
ServiceContextBehavior(Config.RepositoryName,
Config.DocumentumUserName,
Config.DocumentumPassword));
When we execute the above code, we are getting error message as below,
Exception: The content type text/xml;charset=utf-8 of the response message does not match the content type of the binding (multipart/related; type="application/xop+xml"). If using a custom encoder, be sure that the IsContentTypeSupported
method is implemented properly. The first 407 bytes of the response were: '<?xml version="1.0" ?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope"><faultcode>S:VersionMismatch</faultcode><faultstring>Couldn't
create SOAP message. Expecting Envelope in namespace http://schemas.xmlsoap.org/soap/envelope/, but got http://www.w3.org/2003/05/soap-envelope </faultstring></S:Fault></S:Body></S:Envelope>'
Then, we changed the bindings as below
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding
name="ObjectServicePortBinding1">
<security
mode="Transport">
<transport
clientCredentialType="Certificate"
proxyCredentialType="None"
realm=""
/>
<message
clientCredentialType="Certificate"
algorithmSuite="Default"
/>
</security>
</binding>
<binding
name="QueryServicePortBinding">
<security
mode="Transport">
<transport
clientCredentialType="
Certificate"
proxyCredentialType="None"
realm=""
/>
<message
clientCredentialType="Certificate"
algorithmSuite="Default"
/>
</security>
</binding>
</wsHttpBinding>
</bindings>
We are getting another error message,
Exception: The client certificate is not provided. Specify a client certificate in ClientCredentials.
Any pointers on resolving this issue would be highly helpful.
ThanksHi Dhanasegaran,
As per your case, the corresponding details which may guide you to resolve this issue:
1. First of all, you can try to call the wcf service directly from the browser & check where it will point out the correct location.
2. In config file ,Set IncludeExceptionDetailInFaults to true to enable exception information to flow to clients for debugging purposes .
Set this to true only during development to troubleshoot a service like below :
<serviceBehaviors>
<behavior name="metadataAndDebugEnabled">
<serviceDebug
includeExceptionDetailInFaults="true"
/>
<serviceMetadata
httpGetEnabled="true"
httpGetUrl=""
/>
</behavior>
</serviceBehaviors>
3. I suggest you to change that <security mode ="TransportWithMessageCredential"> instead of <security mode ="Transport">
for more information, refer the following link :
https://msdn.microsoft.com/en-us/library/aa354508(v=vs.110).aspx -
Error running demo PL/SQL consuming web services
I downloaded and installed the code from:
http://technet.oracle.com/tech/webservices/htdocs/samples/dbwebservice/DBWebServices_PLSQL.html
on Oracle 9i version 2 (on both Windows and Solaris).
But I got the following error running the local time
demo:
ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1022
ORA-12545: Connect failed because target host or object does not exist
ORA-06512: at "XN.DEMO_SOAP", line 72
ORA-06512: at "XN.TIME_SERVICE", line 13
ORA-06512: at line 2
The error occurs on this line:
http_req := utl_http.begin_request(url, 'POST','HTTP/1.0');
Can anybody tell me what I do wrong? Thanks a lot!
Also, is there any alternative ways to consume web services
using PL/SQL only? Many thanks!
Henry X.Mike,
Thanks so much for your help. I tried your code just now.
Same error:
ORA-30625: method dispatch on NULL SELF argument is disallowed
ORA-06512: at "XN.DEMO_SOAP", line 50
ORA-06512: at "XN.DEMO_SOAP", line 83
ORA-06512: at "XN.TIME_SERVICE", line 27
ORA-06512: at line 7
Let me post the code I am using. Note that
I removed the code for using proxy in time_service.
Henry
-- code for calling the time_service
DECLARE
ZIPCODE VARCHAR2(200);
v_Return VARCHAR2(200);
BEGIN
ZIPCODE := '94065';
v_Return := TIME_SERVICE.GET_LOCAL_TIME(ZIPCODE => ZIPCODE);
DBMS_OUTPUT.PUT_LINE('v_Return = ' || v_Return);
END;
-- code for the package demo_soap
CREATE OR REPLACE PACKAGE demo_soap AS
TYPE request IS RECORD (
method VARCHAR2(256),
namespace VARCHAR2(256),
body VARCHAR2(32767));
TYPE response IS RECORD (
doc xmltype);
FUNCTION new_request(method IN VARCHAR2,
namespace IN VARCHAR2)
RETURN request;
PROCEDURE add_parameter(req IN OUT NOCOPY request,
name IN VARCHAR2,
type IN VARCHAR2,
value IN VARCHAR2);
FUNCTION invoke(req IN OUT NOCOPY request,
url IN VARCHAR2,
action IN VARCHAR2) RETURN response;
FUNCTION get_return_value(resp IN OUT NOCOPY response,
name IN VARCHAR2,
namespace IN VARCHAR2) RETURN VARCHAR2;
END;
CREATE OR REPLACE PACKAGE BODY demo_soap AS
FUNCTION new_request(method IN VARCHAR2,
namespace IN VARCHAR2)
RETURN request AS
req request;
BEGIN
req.method := method;
req.namespace := namespace;
RETURN req;
END;
PROCEDURE add_parameter(req IN OUT NOCOPY request,
name IN VARCHAR2,
type IN VARCHAR2,
value IN VARCHAR2) AS
BEGIN
req.body := req.body ||
'<'||name||' xsi:type="'||type||'">'||value||'</'||name||'>';
END;
PROCEDURE generate_envelope(req IN OUT NOCOPY request,
env IN OUT NOCOPY VARCHAR2) AS
BEGIN
env := '<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/1999/XMLSchema">
<SOAP-ENV:Body><'||req.method||' '||req.namespace||'
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">'||
req.body||'</'||req.method||'></SOAP-ENV:Body></SOAP-ENV:Envelope>';
END;
PROCEDURE show_envelope(env IN VARCHAR2) AS
i pls_integer;
len pls_integer;
BEGIN
i := 1; len := length(env);
WHILE (i <= len) LOOP
dbms_output.put_line(substr(env, i, 60));
i := i + 60;
END LOOP;
END;
PROCEDURE check_fault(resp IN OUT NOCOPY response) AS
fault_node xmltype;
fault_code VARCHAR2(256);
fault_string VARCHAR2(32767);
BEGIN
fault_node := resp.doc.extract('/soap:Fault',
'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/');
IF (fault_node IS NOT NULL) THEN
fault_code := fault_node.extract('/soap:Fault/faultcode/child::text()',
'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
fault_string := fault_node.extract('/soap:Fault/faultstring/child::text()',
'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
raise_application_error(-20000, fault_code || ' - ' || fault_string);
END IF;
END;
FUNCTION invoke(req IN OUT NOCOPY request,
url IN VARCHAR2,
action IN VARCHAR2) RETURN response AS
env VARCHAR2(32767);
http_req utl_http.req;
http_resp utl_http.resp;
resp response;
BEGIN
generate_envelope(req, env);
-- show_envelope(env);
http_req := utl_http.begin_request(url, 'POST','HTTP/1.0');
utl_http.set_header(http_req, 'Content-Type', 'text/xml');
utl_http.set_header(http_req, 'Content-Length', length(env));
utl_http.set_header(http_req, 'SOAPAction', action);
utl_http.write_text(http_req, env);
http_resp := utl_http.get_response(http_req);
utl_http.read_text(http_resp, env);
utl_http.end_response(http_resp);
resp.doc := xmltype.createxml(env);
resp.doc := resp.doc.extract('/soap:Envelope/soap:Body/child::node()',
'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"');
-- show_envelope(resp.doc.getstringval());
check_fault(resp);
RETURN resp;
END;
FUNCTION get_return_value(resp IN OUT NOCOPY response,
name IN VARCHAR2,
namespace IN VARCHAR2) RETURN VARCHAR2 AS
BEGIN
RETURN resp.doc.extract('//'||name||'/child::text()',
namespace).getstringval();
END;
END;
-- code for the package time_service
CREATE OR REPLACE PACKAGE time_service AS
FUNCTION get_local_time(zipcode IN VARCHAR2) RETURN VARCHAR2;
END;
CREATE OR REPLACE PACKAGE BODY time_service AS
-- Location of Web service definition
-- http://www.alethea.net/webservices/LocalTime.asmx?WSDL
FUNCTION get_local_time(zipcode IN VARCHAR2) RETURN VARCHAR2 IS
req demo_soap.request;
resp demo_soap.response;
BEGIN
req := demo_soap.new_request('LocalTimeByZipCode',
'xmlns="http://www.alethea.net/webservices/"');
demo_soap.add_parameter(req, 'ZipCode', 'xsd:string', zipcode);
resp := demo_soap.invoke(req,
'http://www.alethea.net/webservices/LocalTime.asmx',
'http://www.alethea.net/webservices/LocalTimeByZipCode');
RETURN demo_soap.get_return_value(resp, 'LocalTimeByZipCodeResult',
'xmlns="http://www.alethea.net/webservices/"');
END;
END; -
Consume Web Service In Coldfusion Error
I'm having a problem using cfinvoke or adding this web service url in the coldfusion admin.
<cfinvoke returnvariable="returndata" webservice="http://www.fortedata.com:8080/axis2/services/FdsWebService?wsdl" refreshwsdl="yes" method="PostData">
I get the error for cfinvoke
"Cannot generate stub objects for web service invocation. "
"Name:
http://www.fortedata.com:8080/axis2/services/FdsWebService?wsdl. WSDL:
http://www.fortedata.com:8080/axis2/services/FdsWebService?wsdl. java.io.IOException: ERROR: Missing element inFault "SQLException" in operation "SQLException", in binding GetRates It is recommended that you use a web browser to retrieve and examine the requested WSDL document to ensure it is correct. If the requested WSDL document cannot be retrieved or is dynamically generated, it is likely that the target web service has programming errors. "
and in the administrator
""Error creating web service. Please ensure that you have entered a correct Web Service name or URL.""
The url is
http://www.fortedata.com:8080/axis2/services/FdsWebService?wsdl
page loads fine in a browser...
I do see an issue being brought up here in the wsdl, but I have no idea why...this isnt my wsdl btw..
<wsdl:operation name="GetRates">
<wsdl:input message="ns:GetRatesRequest" wsaw:Action="urn:GetRates"/>
<wsdl:output message="ns:GetRatesResponse" wsaw:Action="urn:GetRatesResponse"/>
<wsdl:fault message="ns:SQLException" name="SQLException" wsaw:Action="urn:GetRatesSQLException"/>
</wsdl:operation>
line 3
any ideas?
Thanks for any help...Sorry didnt post everything for the sake of space
I just ended up using .NET to deal with the service..CF just didnt even recognize the url as a valid web service let alone care if I was passing arguments to it.
On a side note, CF admin doesnt recognize the url as a web service and dreamweaver doesnt recognize the url as a web service either.
<cfinvoke method="PostLead" returnvariable="returndata" webservice="http://www.fortedata.com:8080/axis2/services/FdsWebService?wsdl" refreshwsdl="yes">
<cfinvokeargument name="SpecVersion" value="0">
<cfinvokeargument name="ForteId" value="TESTID">
<cfinvokeargument name="AuthKey" value="guestauthenticationkey">
<cfinvokeargument name="LastName" value="0">
<cfinvokeargument name="FirstName" value="0">
<cfinvokeargument name="Address" value="0">
<cfinvokeargument name="city" value="0">
<cfinvokeargument name="state" value="0">
<cfinvokeargument name="zip" value="0">
<cfinvokeargument name="year" value="0">
<cfinvokeargument name="vin" value="0">
<cfinvokeargument name="make" value="0">
<cfinvokeargument name="model" value="0">
<cfinvokeargument name="phone" value="0">
<cfinvokeargument name="crdate" value="0">
<cfinvokeargument name="listcode" value="0">
<cfinvokeargument name="odometer" value="0">
<cfinvokeargument name="dually" value="0">
<cfinvokeargument name="commercial" value="0">
<cfinvokeargument name="convvan" value="0">
<cfinvokeargument name="coverage" value="0">
<cfinvokeargument name="term" value="0">
<cfinvokeargument name="deduct" value="0">
<cfinvokeargument name="av" value="0">
<cfinvokeargument name="gps" value="0">
<cfinvokeargument name="wt" value="0">
<cfinvokeargument name="sg" value="0">
<cfinvokeargument name="emis" value="0">
<cfinvokeargument name="fintype" value="0">
<cfinvokeargument name="finterm" value="0">
<cfinvokeargument name="downpay" value="0">
<cfinvokeargument name="cuscost" value="0">
<cfinvokeargument name="paymeth" value="0">
<cfinvokeargument name="cc" value="0">
<cfinvokeargument name="expdt" value="0">
<cfinvokeargument name="ccid" value="0">
<cfinvokeargument name="routing" value="0">
<cfinvokeargument name="banacct" value="0">
<cfinvokeargument name="checking" value="0">
<cfinvokeargument name="fbdt" value="0">
<cfinvokeargument name="promo" value="0">
<cfinvokeargument name="timeofday" value="0">
<cfinvokeargument name="prefmeth" value="0">
<cfinvokeargument name="email" value="0">
</cfinvoke> -
"Error consuming WCF service metadata.
Object reference not set to an instance of an object."
I have no clue what happen to my BizTalk. I checked all the below forum but m clueless why BTS not consuming WCF through Generated Items. I tried both metadata exhange endpoint and metadata file through
svcutil. but all my wcf services are working fine with .net C# client.
http://blogs.msdn.com/b/appfabriccat/archive/2010/11/23/how-using-duplex-mep-to-communicate-with-biztalk-from-a-net-application-or-a-wf-workflow-running-inside-appfabric-part-1.aspx
http://msdn.microsoft.com/en-us/library/bb226552.aspx
http://msdn.microsoft.com/en-us/library/bb798122.aspx
http://masteringbiztalkserver.wordpress.com/tag/wcf-service-consuming-wizard/
I reinstall the WCF lob Adapter SDK to my BizTalk VM but still no clue. no erros in event viewer nothing.
http://www.abdulazizfarooqi.wordpress.com Abdul Aziz Farooqi [BizTalk & SharePoint Consultant] MCPD Web & MCPD SharePoint 2010Thanks from me too Neal - this worked from me. I wan't able to consume directly from exchange because the certificate is broken. However, I was able to convince Google Chrome to let me view the /Services.wsdl and from there I could save the .wsdl and two
.xsd files. In my case the problem lay at the top of the .wsdl file. I changed the following:
<wsdl:types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.microsoft.com/exchange/services/2006/messages" schemaLocation="messages.xsd"/>
</xs:schema>
by giving the same targetNamespace as assigned in the <wsdl:definitions element, so I ended up with
<wsdl:types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/exchange/services/2006/messages">
<xs:import namespace="http://schemas.microsoft.com/exchange/services/2006/messages" schemaLocation="messages.xsd"/>
</xs:schema> -
Consume web service in ABAP proxy with SOAP header
Hi Thomas ,
I am trying to consume web service in ABAP . I have followed the procedure from one of your web blog <a href="/people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap a Developer's Journal Part XIV - Consuming WebServices with ABAP</a> . (640 release).
I need to pass SOAP header along with SOAP body. As you mentioned I have used if_wsprotocol_ws_header interface to pass header but it is still failing.
Please see below code and please give some direction to fix the issue.
1.Create ABAP proxy for WSDL (http://ws.strikeiron.com/SwanandMokashi/StockQuotes?WSDL). It has created structures only for SOAP body.
2.Create Logical port
3.Create following program to call proxy
REPORT zproxy.
DATA: ref_stock TYPE REF TO zzco_stock_quotes_soap ,
ws_header TYPE REF TO if_wsprotocol_ws_header,
name TYPE string,
namespace TYPE string.
TRY.
CREATE OBJECT ref_stock
get WS_HEADER protocol
ws_header ?= ref_stock->get_protocol('IF_WSPROTOCOL_WS_HEADER').
set somehow header as iXML-DOM tree
DATA: ixml TYPE REF TO if_ixml,
xml_document TYPE REF TO if_ixml_document,
xml_root TYPE REF TO if_ixml_element,
xml_element TYPE REF TO if_ixml_element,
xml_node TYPE REF TO if_ixml_node.
DATA l_xstring TYPE xstring.
DATA l_string TYPE string.
FIELD-SYMBOLS <fs_xstring> TYPE xstring.
Additional Header:
CONCATENATE
'<soap:Header>'
'<s1:LicenseInfo xmlns:s1="http://ws.strikeiron.com">'
'<s1:RegisteredUser>'
'<s1:UserID>[email protected]</s1:UserID>'
'<s1:Password>aaaaaaaa</s1:Password>'
'</s1:RegisteredUser></s1:LicenseInfo>'
'</soap:Header>' INTO l_string.
convert to xstring
l_xstring = cl_proxy_service=>cstring2xstring( l_string ).
IF NOT l_string IS INITIAL.
create iXML DOM document from XML xstring
CALL FUNCTION 'SDIXML_XML_TO_DOM'
EXPORTING
xml = l_xstring
IMPORTING
document = xml_document
EXCEPTIONS
invalid_input = 1
OTHERS = 2.
IF sy-subrc = 0 AND NOT xml_document IS INITIAL.
xml_root = xml_document->get_root_element( ).
xml_element ?= xml_root->get_first_child( ).
add header element by element to SOAP header
WHILE NOT xml_element IS INITIAL.
name = xml_element->get_name( ).
namespace = 'http://swanandmokashi.com' . "xml_element->get_namespace_uri( ).
IF NOT xml_element IS INITIAL.
ENDIF.
ws_header->set_request_header(
name = name
namespace = namespace
dom = xml_element ).
xml_element ?= xml_element->get_next( ).
ENDWHILE.
ENDIF.
ENDIF.
CATCH cx_ai_system_fault .
ENDTRY.
*Call soap body using abap proxy class.
DATA: get_quotes TYPE zzget_quotes_soap_out .
DATA: get_quotes1 TYPE zzget_quotes_soap_in .
get_quotes1-quote_ticker = 'GE'.
TRY.
CALL METHOD ref_stock->get_stock_quotes
EXPORTING
get_quotes1 = get_quotes1
IMPORTING
get_quotes = get_quotes.
CATCH cx_ai_system_fault .
CATCH cx_ai_application_fault .
ENDTRY.
4.It is throwing cx_ai_system_fault error.
SOAP details:
Input:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:enc="http://schemas.xmlsoap.org/soap/encoding" >
<soap:Header>
<s1:LicenseInfo xmlns:s1="http://ws.strikeiron.com">
<s1:RegisteredUser>
<s1:UserID>[email protected]</s1:UserID>
<s1:Password>aaaaaaaa</s1:Password>
</s1:RegisteredUser>
</s1:LicenseInfo>
</soap:Header>
<soap:Body>
<tns:GetQuotes xmlns:tns="http://swanandmokashi.com">
<tns:QuoteTicker>GE</tns:QuoteTicker>
</tns:GetQuotes>
</soap:Body>
</soap:Envelope>
Thanks,
Kavitha.Hi ,
Thank you for the response. Did you passed user email and password ([email protected] /aaaaaaaa) part of licenseinfo->resisteredUser along with Quoteticker GE in analyzer?
<a href="http://www.strikeiron.com/Analyzer/OnlineAnalyzer.aspx?WSDL=http://ws.strikeiron.com/SwanandMokashi/StockQuotes?WSDL">ANALYZER</a>
Thanks,
Kavitha. -
To consume web service in ABAP is it required that server should be XI.
Hi ,
I am trying to connect to a webservice from netweaver 7.0 systemand it gives an error " Not configured as integration engine". Is it required to have integration engine to consume web service.
SanjayHi Sanjay
You can consume webservices in ABAP but its better to use XI in mid to avoid point to point communication. Using XI you can have a central hub for all services you consume or publish
Check this link as well
BSP a Developer's Journal Part XIV - Consuming WebServices with ABAP
Thanks
Gaurav -
Code for consuming web services in ABAP
*& Report ZVM_GET_CITY_TIME
REPORT zvm_get_city_time.
PARAMETERS:
p_city TYPE zget_city_time_soap_in-city.
DATA:
cl_proxy TYPE REF TO zco_time_service_soap,
input TYPE zget_city_time_soap_in,
output TYPE zget_city_time_soap_out,
systerr TYPE REF TO cx_ai_system_fault,
w_error TYPE c.
TRY.
CREATE OBJECT cl_proxy
EXPORTING
logical_port_name = 'ZCO_TIME_SERVICE_SOAP'.
CATCH cx_ai_system_fault.
CREATE OBJECT systerr.
WRITE:/ 'Error in creating object - ', systerr->errortext.
ENDTRY.
TRY.
input-city = p_city.
CALL METHOD cl_proxy->get_city_time
EXPORTING
input = input
IMPORTING
output = output.
CATCH cx_ai_system_fault.
CREATE OBJECT systerr.
WRITE:/ 'Error in calling the method - ', systerr->errortext.
w_error = 'X'.
ENDTRY.
CHECK w_error NE 'X'.
SKIP.
WRITE:/ 'The current time in ', p_city, ' is ',
output-get_city_time_result.<i> is there any other way to consume web services in ABAP</i>
you can use cl_http_client class to make your program to act as http client and post the soap message too webservice. This way you dont need to generate proxy, but you should know the soap message format.
Regards
Raja -
Problem when consuming web service on WIndows authentication applcation
Hi,
I am having a tough time in consuming web services on a
Windows authentication IIS server.
In one of my application I have created web services and
consuming those web services from my another application.
If I turned off the Windows authentication everything works
fine, but If I turned on the Windows authentication web services
stop working.
Has anyone encountered such error while working with web
services on Windows authentication server.
Attach Code
Could not perform web service invocation "funGetCustomer".
Here is the fault returned when invoking the web service
operation:
AxisFault
faultCode: {
http://xml.apache.org/axis/}HTTP
faultSubcode:
faultString: (401)Unauthorized
faultActor:
faultNode:
faultDetail:
{}:return code: 401
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>You are not authorized
to view this page</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html;
charset=Windows-1252">
<STYLE type="text/css">
BODY { font: 8pt/12pt verdana }
H1 { font: 13pt/15pt verdana }
H2 { font: 8pt/12pt verdana }
A:link { color: red }
A:visited { color: maroon }
</STYLE>
</HEAD><BODY><TABLE width=500 border=0
cellspacing=10><TR><TD>
<h1>You are not authorized to view this page</h1>
You do not have permission to view this directory or page
using the credentials that you supplied because your Web browser is
sending a WWW-Authenticate header fi...You could try switching the HTTP transport provided in the
Apache Axis embedded in ColdFusion to "CommonsHTTPSender".
See this blog post:
http://tjordahl.blogspot.com/2007/03/apache-axis-and-commons-httpclient.html -
Biztalk 2010 - Consume Web Service with Certificate
Hi
I have to consume a java web service with Biztalk that requires authentication via a client certificate. Until now I have not been able to consume any web service where any kind of authentication was needed. Simple web services without authentication are
no problem. Also using SoapUI works perfectly fine.
I am generating the XSDs and the port binding with the WCF wizard in VS2010. I've read several comments that it's not possible to consume web services with the WCF-WSHttp adapter when the message format should be SOAP 1.1. Therefore I'm trying with the WCF-BasicHttp
and WCF-Custom adapters, but I did not suceed in receiving a positive response yet.
The web service I want to consume uses a client certificate (with a private key) and two root certificates. When I use the BasicHttp adapter I choose either 'Transport' or 'TransportWithMessageCredential' but none of them work. I also have to supply a client
and a service certificate. I always use the one with the private key for the client but I'm not sure which one I have to use for the service. Is there a possibility that I have to provide both root certificates and if so, how can I achieve this?
Hope the question makes sense somehow... thanks for any input.
Error message that I receive currently is that the server needs a client certificate. However I attached it in the send port properties under the tab "Security" => mode "TransportWithMessageCredential".Adapter: WCF-Custom
Binding: customBinding
Cannot send pictures (yet).
<configuration>
<enterpriseLibrary.ConfigurationSource selectedSource="ESB File Configuration Source" />
<system.serviceModel>
<client>
<endpoint address="...." behaviorConfiguration="EndpointBehavior" binding="customBinding" bindingConfiguration="ReceiptBinding" contract="BizTalk" name="WebServicePort" />
</client>
<behaviors>
<endpointBehaviors>
<behavior name="EndpointBehavior">
<clientCredentials>
<clientCertificate findValue="..." x509FindType="FindByThumbprint" />
<serviceCertificate>
<defaultCertificate findValue="..." storeLocation="LocalMachine" storeName="AuthRoot" x509FindType="FindByThumbprint" />
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior" />
</serviceBehaviors>
</behaviors>
<bindings>
<customBinding>
<clear />
<binding name="ReceiptBinding">
<textMessageEncoding messageVersion="Soap11" />
<security authenticationMode="MutualCertificate" />
<httpsTransport proxyAuthenticationScheme="Basic" requireClientCertificate="true" />
</binding>
</customBinding>
</bindings>
</system.serviceModel>
</configuration>
Maybe you are looking for
-
How do I include Facebook and website links on my feedback form?
-
False Paper Jam on HP Officejet Pro 8000
I am getting a paper jam (misfeed) message, but there is no paper jam. The power and the resume lights are both blinking. I have checked everything about the printer, but no paper jam. I push the resume button to turn off the blinking light. I can th
-
How to change the web service address of NetBeans generated WS client
I am currently experimenting with web services using netbeans and Sun Application Server. Basically I am creating simple web services using net beans and then deploy them on the app server and then create another pfoject with web service reference to
-
JMS Adapter Configuration at reciver side
Hi, Actaully I have to configure JMS adapter HAving Content Conversion. I m getting XML throuh XI and wan to convert it to TEXT File. Can anyone tell me wat MODULE NAME, TYPE, MODULE Key , PARAmeter NAMe and VAlue i have to take. Hemant
-
Deployment error when running simple serlet application
Hello folks! I am a newbie in developing Java Servlets and my problem might sound almost too trivial for professionals, however I hope to find help here after I have tried to solve this problem on my own for almost 2 days now... I have been trying to