Consuming web service from Lotus Domino with ABAP
Hello,
I'm trying to consume a web service from our Domino Server.
I was able to create a Client Proxy by entering the URL to the WSDL (http://lntraining/taxs/taxscontroltrg.nsf/GBU_Transfer?WSDL).
When I try to consume the web service I get the message "No such operation 'GETGBUDATARequest'" with SoapFaultCode:1.
I assume that SAP has a problem with the URL of the web service (http://lntraining:80/taxs/taxscontroltrg.nsf/GBU_Transfer?OpenWebService). I think the reason is the query prefix of the URL (?OpenWebService). I tried to add it into the RFC Destination but SAP doesn't allow me to do so.
Any suggestions or experiences?
Thx,
Dennis
Hi Lavaughn,
Try maintaining HTTP proxy setting using transaction SM59->RFC->HTTP Proxy Configuration. I suspect your WAS server also need to use proxy server for accessing internet.
Regards,
Sanjeev
Similar Messages
-
How to consume WEB SERVICES from ABAP ??
Q: How to consume WEB SERVICES from ABAP program??
the point here is i am using SAP release 620 and the creation of proxy is out of scenario
and also no XI. Its only through ABAP program i need to consume one web service (its a HTTPS one ),
Using cl_http_client... i tried it but i am totally confused of whats happening ???
Req some senior ppl advice on the same/approach.
any hints will suffice my way of approach...!!!
Please do put in your valuable advices..!!
Thanks in advance..!!!!Hello Srinivas,
Following is the code for calling web service:
data: client type ref to if_http_client,
host type string value 'server url',
service type string value '8080',
path type string value '/sap/public/ping',
errortext type string,
proxy_service type string,
scheme type i value 1.
call method cl_http_client=>create
exporting host = host
service = service
proxy_host = host
proxy_service = service
scheme = scheme
importing client = client
exceptions
argument_not_found = 1
internal_error = 2
plugin_not_active = 3
others = 4.
case sy-subrc.
when 0.
write 'Server reached successfully'.
when others.
write: 'sy-subrc =', sy-subrc.
endcase.
Once you got the client object you can call following methods:
"Set the requrie URL for the web service you want to call. This is not WSDL anyway!!
cl_http_utility=>set_request_uri( request = client->request
uri =' url 2 be called ').
*Then you can call send method with proper inputs for sending request to WS
CALL METHOD client->send
Then you can use receive method for getting the response
CALL METHOD client->receive
*You can get last error in case of exceptions
CALL METHOD cl_http_client=>get_last_error
*Close the client object
CALL METHOD client->close
For more information on full code refer my link in previous replay.
Thanks,
Augustin.
Edited by: Augustarian on Aug 18, 2009 1:49 PM -
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. -
Windows authentification while consuming web service from ABAP
Hi All,
We are consuming web service from ABAP, we have created client proxy in SE80 and configured logical port in LPCONFIG.
This one was working fine. Now we have added windows user authentification to access this service.
Now when I'm trying to regenerate this proxy in R/3 it is asking for user and password. When I enter these details this one is not working.
If I access this service direcly from internet explorer and I enter same user and password then I would able to access this service.
Could you please let me know how to handle this.
Regards
VikramThe dialog that is produced by HTTP Destination object of the logical port is designed only for use within Classic Dynpro applications. There is no prompt produced when running in Web Dynpro. If possible assign a generic user within the logical port definition and this will be used automatically by all users.
-
Consume web service from a PAR file
Hi All,
Is it possible to consume web service from a PAR file? If yes, can you please give me an example / link.
Appreciate your help.
Thanks,
Vimukta<< Do not post the same question across a number of forums >>
-
Problem with consuming web service from abap
Hello,
I want to consume this web service VatatWebService Web Service From SAP.
The transaction code soamanager doesn't exist in our system, i'm the only man who use SAP in our company(we don't have BC peoples....).
I find some advice to use "wsadmin" and "lpconfig", but i do not know the step: wish data i have to fill in in tcode "wsadmin" or "lpconfig".
I'm very new in this case...
Is there any doc showing the step to consume a web service?
Thank u very match.
OuailHi,
Have you tried to search using that magical tool called Google? If I search for "SAP LPConfig" I get lots of promising looking answers:
You could also try searching help.sap.com
I appreciate you are new but one of the best skills you can learn in the world of SAP is how to search out and find information, so you aren't dependant upon SCN and/or others to help you when you get stuck.
Cheers,
G. -
Consuming Web Service from ABAP
I'm using WAS 6.4 SP10.
I'm trying to consume a web service from our Intranet using instructions from ABAP256 from Teched 04.
I get an error when I try to create a Proxy object.
From SE80
Enterprise Services>Create>Proxy Object
URL/HTTP Destination:
http://server/ServiceGATP/ServiceGATP.asmx?wsdl
HTTP error (return code 400, message
"ICM_HTTP_CONNECTION_FAILED")
I've tried with ABAP web services and that works great. But no success with non ABAP Web Services.
From internet explorer the URL above seems fine. I can call it from a .NET application and it works great.
Any suggestions?
Could it be a system setup issue.
Regards,
LavaughnHi Lavaughn,
Try maintaining HTTP proxy setting using transaction SM59->RFC->HTTP Proxy Configuration. I suspect your WAS server also need to use proxy server for accessing internet.
Regards,
Sanjeev -
Problem in consuming web service from esworkplace
Hello
I am useing CE7.2 evaluation version
I want to consume a web service from SAP workplace
I've built a process composer project then I tried to import a WSDL and chose the "service registry" option
However I keep getting the message "internal error in the services registry"
BTW u2013 I defined the "esworkplace" as the services registry in the Preferences.
Any ideas what can be the problem? Thanks.
ThanksHi Experts,
Please help me with this issue. I am really stuck up here.
Thanks,
Radhika -
How to invoke a Web Service from PL/SQL with Complex Type as input.
Hello,
I am trying to invoke a web service from PL/SQL using the UTL_DBWS package.
The web service expects a complex type as input (defined below):
<xs:complexType name="MsgType">
<xs:sequence>
<xs:element name="sender" type="xs:string"/>
<xs:element name="messageId" type="xs:string"/>
<xs:element name="messageType" type="xs:string"/>
<xs:element name="dateSent" type="xs:date"/>
</xs:sequence>
</xs:complexType>
How to construct input to this in PL/SQL Procedure?
Has any body tried this before?
An exmaple will be helpful.
ThanksDear,
I have read your article, it is useful for me. But I cannot Apply to my case. Please kindly help me. Thank you.
When running, the error occurs:
1:39:31 Execution failed: ORA-20000: soapenv:Server.userException - org.xml.sax.SAXParseException: Attribute name "password" associated with an element type "user" must be followed by the ' = ' character.
My webservice Url: http://abc.com.vn:81/axis/ABC_WS_TEST.jws?wsdl
I make PL/SQL (similiar as your example)
FUNCTION INVOKESENDMT
RETURN VARCHAR2
AS
l_request soap_api.t_request;
l_response soap_api.t_response;
l_return VARCHAR2(32767);
l_url VARCHAR2(32767);
l_namespace VARCHAR2(32767);
l_method VARCHAR2(32767);
l_soap_action VARCHAR2(32767);
l_result_name VARCHAR2(32767);
p_zipcode VARCHAR2(160);
BEGIN
--p_zipcode:='''TEST'' ; ''TEST'';''84912187098'';''84912187098'';''0'';''8118'';''1'';''000001'';''ThuNghiem'';''''';
p_zipcode:='TEST';
-- Set proxy details if no direct net connection.
--UTL_HTTP.set_proxy('myproxy:4480', NULL);
--UTL_HTTP.set_persistent_conn_support(TRUE);
-- Set proxy authentication if necessary.
--soap_api.set_proxy_authentication(p_username => 'TEST',
-- p_password => 'TEST');
l_url := 'http://abc.com.vn:81/axis/ABC_WS_TEST.jws';
l_namespace := 'xmlns="' || l_url || '"';
l_method := 'sendMT';
l_soap_action := l_url || '#sendMT';
l_result_name := 'sendMTResponse';
l_request := soap_api.new_request(p_method => l_method,
p_namespace => l_namespace);
soap_api.add_parameter(p_request => l_request,
p_name => 'user password sender receiver chargedflag servicenumber messagetype messageid textcontent binarycontent',
p_type => 'xsd:string',
p_value => p_zipcode);
l_response := soap_api.invoke(p_request => l_request,
p_url => l_url,
p_action => l_soap_action);
l_return := soap_api.get_return_value(p_response => l_response,
p_name => l_result_name,
p_namespace => l_namespace);
RETURN l_return;
END; -
Web Service from an EJB with an Java Bean: createSAXParseException
Hi I am using Together to develop Web Services from an EJB+a Java Bean.
I used the Trader Example, which includes an EJB + a Java Bean.
Running the utility "ant" I get the following exception:
"C:\bea\jdk131\jre\lib\rt.jar;C:\bea\jdk131\lib\rt.jar;c:\bea\wlserver6.1\lib\weblogic.jar;C:\Programme\Together5.5\lib\javax.jar;;"
org.apache.tools.ant.Main
WLS61: Error at line:6 col:12 ':' Already got a ':' in name
WLS61: at weblogic.xml.babel.baseparser.SAXElementFactory.createSAXParseException(SAXElementFactory.java:60)
WLS61: at weblogic.xml.babel.parsers.StreamParser.<init>(StreamParser.java:45)
WLS61: at weblogic.xml.babel.parsers.BabelXMLEventStream.startDocument(BabelXMLEventStream.java:28)
WLS61: at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:600)
WLS61: at weblogic.soap.WebServiceProxy.getXMLStream(WebServiceProxy.java:577)
WLS61: at weblogic.soap.WebServiceProxy.getServiceFrom(WebServiceProxy.java:225)
WLS61: at weblogic.ant.taskdefs.ejb.WSGenHelper.writeClientJar(WSGenHelper.java:1125)
WLS61: at weblogic.ant.taskdefs.ejb.WSGenHelper.writeWSDL(WSGenHelper.java:1285)
WLS61: at weblogic.ant.taskdefs.ejb.WSGenHelper.saveDescriptors(WSGenHelper.java:1418)
WLS61: at weblogic.ant.taskdefs.ejb.WSGenHelper.output(WSGenHelper.java:1486)
WLS61: at weblogic.ant.taskdefs.ejb.WSGenHelper.doit(WSGenHelper.java:1520)
WLS61: at weblogic.ant.taskdefs.ejb.WSGen.execute(WSGen.java:93)
WLS61: at org.apache.tools.ant.Target.execute(Target.java:153)
WLS61: at org.apache.tools.ant.Project.runTarget(Project.java:898)
WLS61: at org.apache.tools.ant.Project.executeTarget(Project.java:536)
WLS61: at org.apache.tools.ant.Project.executeTargets(Project.java:510)
WLS61: at org.apache.tools.ant.Main.runBuild(Main.java:421)
WLS61: at org.apache.tools.ant.Main.main(Main.java:149)
WLS61: Buildfile: build.xml
WLS61:
WLS61: wsgen:
WLS61:
WLS61: BUILD SUCCESSFUL
WLS61:
WLS61: Total time: 7 seconds
WLS61: Finished with 19 Errors, 0 Warnings.Hi,
try these links
http://www.baigzeeshan.com/2010/11/creating-webservice-from-java-class-in.html
http://www.baigzeeshan.com/2010/11/calling-webservice-in-oracle-adf-by.html
Hope it help,
Zeeshan -
Consuming web service from ecc6.0:using webservice proxy -service call
Hi,
<u> On SYSTEM A</u>
AS POC we have generated web service from BAPI_FLIGHT_GETLIST from ECC6.0.
0.we tested using web browser it was working fine.Then saved the WSDL to local pc
<u>On SYSTEM B</u>
1.I have created proxy using wsdl saved on local pc,
2. Created RFC Destination Type "H" giving the web service path
path : /sap/bc/srt/rfc/sap/ZBAPI_FLIGHT_GETLIST_WSD host & http port number.
3. created Logical port using LPCONFIG adn provided the RFC destination.
4. created service call from abap dynpro by using third option "web service proxy"
then selected the proxy generated above.
when i go to component controller context and see,
exporting
output
FLIGHT_LIST
Under FLIGHT_LIST i dont see the node Item then list of elements under that.
How to use this in view as such i dont see output individual parameters??
If i use function module and create service call
then i could see properly like and could use it in view.
CHANGING
FLIGHT_LIST
AIRLINEID
Pointers will be suitable rewarded.
Regards
shekar chandraclosed
-
Consuming Web Service from ABAP Web Dynpro
I have written program to consume KM Web Service through ABAP as well as ABAP Dynpro in SAP R/3 by calling Consumer Proxy.
When I run the program from SE38, it prompts me for user-id & password. If I pass KM Server user-id and password I am able to execute the web service successfully.
However, while I execute the same code through Web Dyn-pro , it does not ask for user-id and password & terminates with CX_AI_SYSTEM_FAULT : SOAP:1,007 SRT: Unsupported xstream found: ("HTTP Code 401 : Unauthorized")
I have created a Logical Port in R/3 & I am using this Logical Port while creating an Object of Consumer Proxy.
Kindly let me know how to resolve this issue.The dialog that is produced by HTTP Destination object of the logical port is designed only for use within Classic Dynpro applications. There is no prompt produced when running in Web Dynpro. If possible assign a generic user within the logical port definition and this will be used automatically by all users.
-
Calling an Abap Web Service from IBM WebSphere with a MYSAPSSO2 Cookie
Hello,
I have the following problem :
I have to develop a proof of concept between IBM Web Sphere 5.1 and SAP AS JAVA 7.0.
I have created an IBM sevlet in Web Sphere, I use a specific redirect from an SAP AS Java to call it, this way I can have a SAP Logon Ticket, and I manage to call an ABAP module function with JCO with SSO.
Scenario 1 : browser + authentication --> AS Java redirect servlet MYSAPSSO2 cookie -> IBM WebSphere servlet JCO -> Abap module function (ECC5)
This scenario works fine.
I have to do the same scenario with a Web Service and I don't know what to do.
I try to use jax-rpc handlers but I don't know how to pass my cookie from my servlet to my handler.
Scenario 2 : browser + authentication --> AS Java redirect servlet MYSAPSSO2 cookie -> IBM WebSphere servlet JCO -> Abap Web Service (ECC5)
Has someone already done that ?
Regards, Julien.Julien,
Why are you using 5.1....go for 6.0 and its cake walk, i have integrated WebSphere 6.0 with R/3 uysing xi.....in a week.
Scenario changed to:--
Browser+ authentication --> WebSphere AS servlet request --> XI --> RFC/bapi --> abap webService
Hope that helps
Regards
Ravi -
Consuming Web Service from ABAP: ERROR_WEBSERVICE_RUNTIME_INIT
Hi fellows,
I have to make a call from SAP (CRM) to external system (via webservice) for this purpose I've setup a new Proxy-Object, uploaded the WSDL file (locally) and Created a Logical port.
In the Logical Port under the tab Call Parameter I've defined the URL of the web-service. I am also not able to upload the WSDL by selecting the option URL/HTTP due to error message "HTTP error (return code 400, message "ICM_HTTP_CONNECTION_FAILED")
Message no. SPRX090" so uploaded the file locally.
However, when testing the service, I didn't received a sucess message but:
<CX_AI_SYSTEM_FAULT>
<CODECONTEXT>Local</CODECONTEXT>
<CODE> ERROR_WEBSERVICE_RUNTIME_INIT </CODE>
<ERRORTEXT> Error when instantiating the Web service runtime (Error when initializing SOAP client application: ' error_text' ) </ERRORTEXT>
<LANGUAGE />
</CX_AI_SYSTEM_FAULT>
</cls:CX_AI_SYSTEM_FAULT>
What might be the Problem ?
/ManikVijay,
I've to make a call to External (non-sap) system --> pass some values --> (and then) get the returning parameters/values from the exernal system. The webservice is created in external system and here SAP will act as a client.
The system is SRM5.0, is it possible to use the RFC - XI soap approach in SRM 5.0 by maintaining the necessay configuration w/o involving XI system exclusively ? or XI is a MUST for this type of scenario ? -
Problem consuming Web Service from ECC 6.0 using dual certificates
Hi, I am trying to consume a secure web service on ECC 6.0 - so far without much luck.
When I try to connect to the ws server, it seems there are three certificates in action: a CICS certificate for establishing the SSL connection, a 'root' certificate from the PKI certificate issuer, and a private certificate issued by the above issuer (please forgive me if a have the syntax wrong - certificates are not my primary line of work). So, using Trust Manager (STRUST), I have created a PSE named 'OES' and imported all three certificates into it.
In SOAMANAGER I have set up the end-point using the WSDL-file and set the following parameters:
- Authentication Method = X.509 Client Certificate
- Trustworthiness Method = Holder of Key
- Issuer = <issuer from the root certificate>
- Name of Attester = <blank>
- Validity of SAML Assertion = 180
- Caching of SAML Assertions = False
- Attester System Destination = <blank>
- Name of Attester = <blank>
- User = SRxxxWS
- Password = <blank>
- Client PSE = OES
When I try to consume the web service, I can see in the log files that the CICS certificat is used for establishing the SSL connection but all I receive back is an HTTP 403 "Client Authentication Error". If I remove the CICS certificate from the PSE, the connection is not made.
How do I make the client certificate available for the connection? Have I approached the problem from the wrong side? Has anybody experienced something similar? Any help will be highly appreciated.
Thanks,
BoHi,
I am not Certificate expert either but you can get plenty of help from "Security" forum on SDN. I can help you bit with some related SAP notes and forum answers:
See following notes :
1324884 - Analysis of ABAP Web Service SOA Configuration
1318906 - Trace analysis of SSL problems
1319507 - Overview: Analysis of ABAP Web Service Configuration
See this forum discussed about consuming secured ws in webdynbpro:
Problem in Calling Secure Webservice.
Articles:
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/92914af6-0d01-0010-3081-ded3a41be8f2&overridelayout=true -
Web Services Security Configuration Guide (discussed IBM and NW WS security but you can find some examples and hints there)
Regards,
Gourav
Maybe you are looking for
-
Swapping the fields in a view cluster
Hi I have a view cluster with the fields in the order FIELD1, FIELD2, FIELD3, FIELD4. My requirement is that it should come in the order FIELD1, FIELD4, FIELD3, FIELD2. Help me on this. Thanks in advance. Regards Karthik
-
Play a frame in timeline from inside 2 movieclips.
Hi. I have tried everything but it just isn't working. On my main timeline I have a MC called "rainbow." Inside "rainbow" I have a MC called "greenbow." Inside "greenbow" I have a MC called "meetbtn2" I want it to play frame 134 on the main timeline
-
After uninstalling and reinstalling itues according to instructions for Vista, QuickTime doesn't appear in my programs, I don't seem to have it anywhere, Isn't QuickTime supposed to be part of the Itunes installation? Is the absence of it why no ip
-
Hi I am trying to develop client for the web component that I have deployed using the j2ee1.4 deploytool but Iam getting the compile time error . http://localhost:8080/math-service/math?WSDL identifies the location of the WSDL file for MyFirstService
-
Video download freezes all the time
Among the (many) issues I've had since "upgrading" to iOS 7, the most annoying one is the fact that I have to try 3-4 times everytime I want to download a movie of a tv episode. The iPad will simply freeze (sometimes for a good 5 minutes) before tell