ABAP SE37 Web Service and x.509 certificate

ECC 7.01 EPH 1
I have created a Web Service from an ABAP function module. I then created a service using SOAMANAGER and have configued it and tested it using Web Navigator. This WS uses no auththentication or username/password.  It also works being consumed from a non-SAP server/application
I want to have another non-SAP server and application use this WS. Currently the non-SAP  can consume it passing the user/password.
I now want to have the WS consumed using x.509 certs.
I have tried multiple methods with no success.
On the server I have imported using STRUSTS
Maintain the serveru2019s SSL server PSE.
Use the trust manager (transaction STRUST) and import the issuing CAu2019s root certificate into this PSEu2019s certificate list.
Created Web Service communication user, technical type with security roles --> zwebserviceuser
Cretaed entries in table USREXTID using transaction SM30, view VUSREXTID
external type = DN
imported non-SAP server cert into external id
user = zwebserviceuser
activated
Tthe ICM to request a client X.509 certificate. (check icm/HTTPS/verify_client profile parameter) was alreday configued
I choose tha appropriate security profile for your ABAP web service --> security HIGH
I choose in SOAMANAGER http authentication and x.509 certificate
The NON-SAP Server/application is calling the SAP WEBservice and sends the "certificate"
The RunTime error is
The request failed with HTTP status 401: Unauthorized.
Any Help would be appreciated
thank you,
Sarah

Take a kind look on SAP note 495911 to analyse ABAP logon errors.
Most likely you have forgotten to add the root certificate of the CA which has issued the SSL client certificate (of the WS consumer) to the certificate list of the SSL server PSE (of the NWAS ABAP, acting as WS provider). In that case the SSL handshake will be incomplete: the SSL client certificate will not be requested by NWAS ABAP and thus no SSL client certificate will be send by the WS consumer. That's why no credentials are there resulting in the 401 error.

Similar Messages

  • ABAP Proxy, WEB SERVICE and RFC

    Hi
    I have to pull the data from XI.
    I have the PDFdocument of how to integrate XI with BI.
    But i am not clear what is abap proxy and web service.
    Could anyone let me know basic of what is abap proxy and webservice.
    Is abap proxy and webservice are present in both the systems XI&BI ?
    REgards
    annie

    Hi,
    ABAP proxy is a  connection between SAP XI & BI . For all the connections need to chk  in SM59, and SICF .
    proxies are a replacemet for adapters whereas webservices(WSDL) are replacements for data typesYou generate proxies from an interface description in WSDL (Web Service Description Language) by using ABAP proxy generation.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/46d6c25d-0b01-0010-06a9-8e8218753c02
    The SOAP adapter enables you to exchange SOAP messages between remote clients or Web service servers and the Integration Server. Also you can use the axis framework with SOAP adapter. Check this help:
    http://help.sap.com/saphelp_nw04/helpdata/en/45/a4f8bbdfdc0d36e10000000a114a6b/content.htm
    We can Communicate between SAP System & Webservice Using Proxies. Check this weblog for some information on this:
    /people/siva.maranani/blog/2005/05/23/communication-between-sap-system-webservice-using-proxies
    ABAP Proxy -> XI -> Webservice :
    pls chk this links;
    /people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1
    http://www.webservicex.net/WS/WSDetails.aspx?CATID=4&WSID=59
    /people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/3022- [original link is broken] [original link is broken] [original link is broken] Activate Proxy
    /people/siva.maranani/blog/2005/04/03/abap-server-proxies -ABAP Server Proxy
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy - ABAP Client Proxy
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy
    Hope this helps,
    Regards
    CSM Reddy

  • How to connect to external web service and convert XML to a table

    Hi experts,
      I need to connect to external/non-SAP web service and convert XML in that site to a SAP table?
    Is there a function call(SE37) to do this? Is it a must for me to install AS JAVA or PI and configure enterprise service? Please provide a link for me to retrieve relevant infomation, thx.

    No, you don't need PI or the Java stack for this.  You can create an ABAP proxy using the WSDL file for the web service and call the web service using the proxy class in an ABAP program.  You can transform the XML response to internal tables/structures/variables using a transformation template that you create.

  • How to call an ABAP based web service from a web page (form)

    Hi,
    I am trying to figure out how I can call my own developed ABAP based web service. I was able to successfully test it in the WS navigator and am now wondering what I need to do to embed the service call in a plain simply web page (form). Basically I'd like to create a web form allowing to specify the parameters and with a 'Submit' button pass the parameters to the web service and launch it.
    Is this possible or do I need some kind of SDK to accomplish this?
    Thanks for any hints and tips.
    Wolfgang

    Hi,
    refer the following link and this is for cosuming the web service form Web dynpro Java
    https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/50d70a19-45a3-2b10-bba0-807d819daf46&overridelayout=true
    and please go throught the following link if you want to cosume it through web dynpro abap and find the answer given by the Moderator Thomas Jung
    regards
    Manohar

  • Excel ( VB ) to ABAP RFC WEB SERVICE Call - No Errors - Blank Output Table

    Trying to get Excel talk to ABAP RFC Web Service.
    -  Excel - 2007 ( Since it is Excel 2007, I didn't had to add any Office Web Services Toolkit or any add on )
    -  ECC 6.0
    Excel (VB) not throwing any error, but is not giving any output ( expecting a table output ).
    ABAP RFC WebService with Uid Pwd Authentication.
    Activated binding for ABAP RFC via SOAMANAGER for clnt 600.
    Using WSDL of WS of Clnt 600 in Excel via VB
    Basic ABAP RFC -
    1 optional import param ( Input Param )
    1 table output  ( Tables Param )
    Basic VB Call Code  -
    Call projHoursWS.wsm_YProjHours("", arProjHours)
    To test if VB and WebService are talking to each other, when i temperorarily change the Authentication method ( uid/pwd ) of Webservice in Sicf it throws "NO MATCHING AUTH" .. So VB and ABAP WS are talking to each other.
    Debugged VB in Excel, not throwing any error , but is always returning the output table (arProjHours) Empty.
    Missing anything?

    Hi,
    Try turning on the ICF Recorder in TCode SICF (check SAP Help for usage details) to establish that the request is reaching SAP successfuly.
    You'll also be able to catch the response that's being generated by SAP this way. Then turn off the ICF recorder.
    Best Regards, Trevor

  • Web Services and Internal Tables.

    Hi.
    In the next days I will need to create a program to consume a Web Service that is going to return data like an internal table, I mean...
    Field1a | Field2a | Field3a
    Field1b | Field2b | Field3b
    Field1c | Field2c | Field3c
    Do you have any ABAP example of consuming a Web Service and receiving data into an internal table?
    Thanx in advanced.
    Edited by: urjose on Jun 19, 2008 8:47 PM

    Hello,
    Maybe this links will give you a hint.
    /people/thomas.jung3/blog/2005/01/05/develop-a-web-service-that-sends-an-email--in-abap
    http://help.sap.com/saphelp_nw04/helpdata/en/e9/ae1b9a5d2cef4ea4b579f19d902871/content.htm
    Bye
    Gabriel P.-

  • Using CE 7.1 ESR with ABAP based web services requires java development?

    Hi All,
    When developing a web service in ABAP, what java development must I do to make the web services available in an ESR that is located on CE 7.1?
    Thanks,
    Regards,
    Mel Calucin
    Bentley Systems, Inc.

    Hi Stefan,
    Someone told me that the difference between CE 7.1 ESR and PI 7.1 ESR is that to register the ABAP web service into CE 7.1 ESR you need to create EJBs and that you don't need to do this for PI 7.1 ESR (since ithe PI 7.1 ESR is ABAP based).  I didn't think that this was the case so I put this question in this forum to confirm this.   I am arguing to put in CE 7.1 because we don't need the PI 7.1 functionality.  This someone told me that we are more of an ABAP shop than a Java shop and that we don't want to develop EJBs whenever we develop ABAP based web services. 
    Thanks.
    Regards,
    Mel Calucin

  • Connect Java programs to ABAP generated Web Services

    Hi everybody again!
    This time I write looking for code examples about connecting my java programs in Netweaver to Abap generated web services.
    Could anyone send me any example, please?
    Thanks in advance again!
    Alberto.

    Hi,
    I'm also looking for code examples about connecting Java programs to ABAP generated Webservices... could you, please, send it to me ?
    actually, I need to call bapi from a java Web site.
    (as an SOAP request ...)
    is it better to <b>generate webser</b>vices from the Bapi then call it,
    Or shall i keep the Bapi, and call it from a java webservices based on <b>JCO/RFC</b> calls ...
    what's more efficient ?
    java webservices + Jco calls to the bapi ?
    or direct calls to generated abap webservices ?
    thanks
    saber

  • Diff b/w Web service and window service

    What is the difference between web service and window service, whether the both are same or not, Give some explain about that each one and give some examples also.

    An XML Web service is a component that implements program
    logic and provides functionality for diseparate
    applications. These applications use standard protocols,
    such as HTTP, XML, and SOAP, to access the functionality.
    XML Web services use XML-based messaging to send and
    receive data, which enables heterogeneous applications to
    interoperate with each other. You can use XML Web services
    to integrate applications that are written in different
    programming languages and deployed on different platforms.
    In addition, you can deploy XML Web services within an
    intranet as well as on the Internet. While the Internet
    brings users closer to organizations, XML Web services
    allow organizations to integrate their applications.
    A Windows service starts much before any user logs in to
    the system (if it has been setup to start at boot up
    process). A Windows service can also be setup in such a way
    that it requires a user to start it manually ? the ultimate
    customization!
    Windows services run as background processes. These
    applications do not have a user interface, which makes them
    ideal for tasks that do not require any user interaction.
    You can install a Windows service on any server or computer
    that is running Windows 2000, Windows XP, or Windows NT.
    You can also specify a Windows service to run in the
    security context of a specific user account that is
    different from the logged on user account or the default
    computer account. For example, you can create a Windows
    service to monitor performance counter data and react to
    threshold values in a database.

  • Pl/Sql web service and collections not working

    Hello
    I'm trying to create a web service from a function in a package which returns a collection. The creation of the web service and its deployment seem to work correctly. I do get the following warning :
    WARNING: OWS-00077 The Value Type class: pxWsLang.PamLanguagerecordBase does not have a valid JAVA Bean pattern
    but I don't think this is the source of the problem.
    When I try to test the web service using the endpoint in the wsdl I get the following answer in the browser:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>env:Server</faultcode><faultstring>Error creating target: pxWsLang.WsLangUser</faultstring><faultactor></faultactor></env:Fault></env:Body></env:Envelope>
    In the DOS window for the OC4J I get the following error :
    2006-11-15 09:21:25.852 ERROR OWS-04005 An error occurred for port: {http://pxWs
    Lang/WsLang.wsdl}wsLangSoapHttpPort: javax.xml.rpc.JAXRPCException: Error creati
    ng target: pxWsLang.WsLangUser.
    The PL/SQL code is as follows :
    Object:
    CREATE OR REPLACE TYPE PAM_LanguageRecord as OBJECT
    NR NUMBER(3),
    SYMBOL VARCHAR2(2)
    Collection:
    CREATE OR REPLACE Type PAM_LanguageTable as Table of PAM_LanguageRecord;
    Package body :
    create or replace package body PAM_TEST is
    function CursorTest return Pam_LanguageTable is
    Res_LangTable PAM_LanguageTable;
    cursor cur is select * from stc_languages;
    begin
    Res_LangTable := new PAM_LanguageTable();
    for Rec in cur loop
    Res_LangTable.Extend(1);
    Res_LangTable(cur%ROWCOUNT) := new PAM_LanguageRecord
    (Rec.NR,
    Rec.SYMBOL
    end loop;
    Return Res_LangTable;
    end;
    end;
    I'm using JDeveloper version 10.1.3.1.0.3984
    How can I get this to work ? (without using Apache Axis or other tools :-)
    Is it supposed to work ?
    Many Thanks
    Paul

    Hi,
    for the "error creating target" problem I found the solution here:
    [WS from a PL/SQL package]: Error creating target
    Hope this helps.
    Regards,
    Patrik

  • Web service and servlets in the same project...web.xml?

    Hello, I have a problem with my web service.
    I have a server, which displays a web service. I programmed this service with JAXRPC.
    I have a client, in another directory. I succeded in compiling, deploying and running the web service.
    The problem is that after I tried to integrate this service in an existing project. This project contains servlets. In these servlets, I'm using sessions.
    These servlets are on the same side as the server of the web service. Because of the implementation of my code, I'd like to use in the class that represents the server of the service, the same session as the one I'm using in the servlets.
    But of course, it's not working by itself. I know there's something to do with the web.xml files.
    The thing is that I created a web.xml file for the service, and another for the servlets.
    I was thinking of joining both of them in one xml file, but everything crashes then...
    Could someone tell me how to create a project with a web service and servlets, and mostly how to configure the xml file??
    Thanks for any help
    Philippe

    Hello, I have a problem with my web service.
    I have a server, which displays a web service. I programmed this service with JAXRPC.
    I have a client, in another directory. I succeded in compiling, deploying and running the web service.
    The problem is that after I tried to integrate this service in an existing project. This project contains servlets. In these servlets, I'm using sessions.
    These servlets are on the same side as the server of the web service. Because of the implementation of my code, I'd like to use in the class that represents the server of the service, the same session as the one I'm using in the servlets.
    But of course, it's not working by itself. I know there's something to do with the web.xml files.
    The thing is that I created a web.xml file for the service, and another for the servlets.
    I was thinking of joining both of them in one xml file, but everything crashes then...
    Could someone tell me how to create a project with a web service and servlets, and mostly how to configure the xml file??
    Thanks for any help
    Philippe

  • Quick questions on the topic of Web Services and EJB POJOs

    I have been reading about Web Services and the data types that are aloud as operation parameters and return types. I was wondering what the standard practice for return types; is it to use the Entity classes straight and customize the WSDL instead of letting the EE container do it (avoid cyclic problems in the schema that can occur when using entity 1-to-many and many-to-1 mappings) or; is it to off load the data into a DTO/VO/Bean and let the EE container take care of all the schema mapping for the WSDL? I look at the EE tutorial and bought a EE book both use very basic examples that do not include connecting to a database or using EJB3 for the data store.
    Thanks for any information

    bump

  • ASMX web service and The remote server returned an error: (500) Internal Server Error issue

    i have developed a very small web service and which is hosted along with our web site. our webservice url is
    http://www.bba-reman.com/Search/SearchDataIndex.asmx
    web service code
    namespace WebSearchIndex
    #region SearchDataIndex
    /// <summary>
    /// SearchDataIndex is web service which will call function exist in another library for part data indexing
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
    // [System.Web.Script.Services.ScriptService]
    public class SearchDataIndex : System.Web.Services.WebService
    //public AuthHeader ServiceAuth=null;
    public class AuthHeader : SoapHeader
    public string Username;
    public string Password;
    #region StartIndex
    /// <summary>
    /// this function will invoke CreateIndex function of SiteSearch module to reindex the data
    /// </summary>
    [WebMethod]
    public string StartIndex(AuthHeader auth)
    string strRetVal = "";
    if (auth.Username == "Admin" && auth.Password == "Admin")
    strRetVal = SiteSearch.CreateIndex(false);
    else
    SoapException se = new SoapException("Failed : Invalid credentials",
    SoapException.ClientFaultCode,Context.Request.Url.AbsoluteUri,new Exception("Invalid credentials"));
    throw se;
    return strRetVal;
    #endregion
    #endregion
    when i was calling that web service from my win apps using
    HttpWebRequest
    class then getting error The remote server returned an error: (500) Internal Server Error
    here is code of my win apps from where i am calling web service
    string strXml = "";
    strXml = "<s:Envelope xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'><s:Body><StartIndex xmlns='http://tempuri.org/' xmlns:i='http://www.w3.org/2001/XMLSchema-instance'><auth><Username>joy</Username><Password>joy</Password></auth></StartIndex></s:Body></s:Envelope>";
    string url = "http://www.bba-reman.com/Search/SearchDataIndex.asmx";
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
    req.Method = "POST";
    req.ContentType = "text/xml";
    req.KeepAlive = false;
    req.ContentLength = strXml.Length;
    StreamWriter streamOut = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII);
    streamOut.Write(strXml);
    streamOut.Close();
    StreamReader streamIn = new StreamReader(req.GetResponse().GetResponseStream());
    string strResponse = streamIn.ReadToEnd();
    streamIn.Close();
    i am just not being able to understand when this line execute
    StreamReader streamIn = new StreamReader(req.GetResponse().GetResponseStream());
    then getting the error The remote server returned an error: (500) Internal Server Error
    not being able to understand where i made the mistake. mistake is in the code of web service end or in calling code?
    help me to fix this issue. thanks

    Hi Mou,
    I just tried your win app code about calling web service, but failed. I got the 500 error after I called your service:
    The error message I quoted from Fiddler:
    <?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:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>System.Web.Services.Protocols.SoapException: Failed : Invalid credentials ---&gt; System.Exception: Invalid credentials
    --- End of inner exception stack trace ---
    at BBAReman.WebSearchIndex.SearchDataIndex.StartIndex(AuthHeader auth)</faultstring><faultactor>http://www.bba-reman.com/Search/SearchDataIndex.asmx</faultactor><detail /></soap:Fault></soap:Body></soap:Envelope>
    I am not totally sure that error occurred by the authentication. But I suggest you can try to add this service into your project using this method below:
    1.right click the Reference and select Add Service Reference
    2.input your service link and click "Go"
    And you can use this service as the following:
    private async void callService()
    ServiceReference1.SearchDataIndexSoapClient client =new ServiceReference1.SearchDataIndexSoapClient();
    var Str= await client.StartIndexAsync(new ServiceReference1.AuthHeader { Username = "Admin", Password = "Admin" });
    Please try it.
    Regards,
    Will
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • SQL Server 2008 Reporting Project - Invoke/Consume Web Service and Return Dataset in C# Code-Behind

    Hello,
    I have a Visual Studio 2010 C# class with a method that invokes/consumes a web service and returns an XML dataset. I am traversing through the parent/child nodes and parsing out the data then inserting it into a SQL Server 2008 R2 table for a join within
    another stored procedure. 
    Instead of using a 3rd party API to generate the PDF for this data, I am creating an SSRS report. The formatting will be easier and I can do a RenderFormat directly to PDF.
    Can I expect to be able to transfer the code-behind method to this report and have it be able to work with the web service the same way? It is a SOAP-based web service returning parent nodes and two levels of nested child nodes.
    I have also been researching the approach of calling the web service in the same stored procedure that is currently querying the physical tables (which is used to populate a gridview and PDF) but it looks like it may only be possible with a CLR stored procedure.
    Is it possible to implement a CLR stored procedure within an SSRS report? 
    Hope this makes sense. Any help, suggestion or point in the right direction would be greatly appreciated.
    Thanks,
    Buster

    Hi Buster,
    SSRS supports web service data source, we can call the SOAP-based web service in SSRS report directly. Then, we can use custom code in SSRS to parse the XML data. However, we won’t be able to join another data in SQL Server database.
    Reference:http://technet.microsoft.com/en-us/library/aa964129(v=sql.90).aspx#repservxmlds_topic3
    We cannot implement a CLR stored procedure within an SSRS report directly. In order to execute the CLR store procedure in a SSRS report, we have to execute it as text using the following code:
    Exec <stored procedure name>
    Reference:
    http://dotnetslackers.com/Community/blogs/bmains/archive/2009/01/15/executing-a-clr-stored-procedure-in-reporting-services.aspx
    Hope this helps.
    Regards,
    Alisa Tang
    Alisa Tang
    TechNet Community Support

  • Web services and control characters

    Hi,
    We are using JAXWS and JAXB to create web services. We have a problem with our current data because it sometimes contains "bad" characters, such as control characters. Is there a nice way for us to remove these characters when creating the messages or when retrieving the data from the database? We use java persistence / hibernate to retrieve the data from the database.
    I would prefer a method that doesn't include having to "clean" each string manually...
    Thanks!

    hi, i�m doing something like you but in jbuilder that is another IDE, i don�t know if it is useful for you but i entered to the help of jbuilder and i wrote in the index "web services" and then i found a topic called : "export classes as webservices" and in that place i can see some steps to follow, may be in eclipse you can find something like this.

Maybe you are looking for

  • Mac Still Crashing After Fresh Install of 10.8.

    Hey everyone I have been struggling to determine the issue with my 21.5-inch, Late 2009 iMac.  It has been crashing frequently so I decided to install the OS from scratch and port over the user files but the system is still crashing and I am not sure

  • Fonts on CS6 are too small

    Any updates to solve the problem?

  • How to use Adobe Photoshop

    If I'm using the marquee tool to crop an image, how can I save the new cropped image as a jpeg file type rather than as a PSD, PDD file type? 

  • Why do I keep getting alot of "webprocess" logs in Console ?

    Why do I keep getting alot of "webprocess" logs in Console ? Can anyone tell me what happened (the cause) in this log ? Process:         WebProcess [20696] Path:            /Applications/WebKit.app/Contents/Frameworks/10.7/WebKit2.framework/WebProces

  • Good book for edge and coding?

         Hello, i'm trying edge, everything works well..till the code start. i can copy things from other users or sites, but to understand would be beter, so that i know what i'm doing. Is all the code i see, just html? and is it 4 or/and 5 or maybe a m