SSO and ABAP Web Services

I am opening this thread on behalf of my colleague Bala regarding SSO and ABAP Web Services.
We have gone through single sign on options and found several options are available within 5.0.
We would like to know the options available for SAP ABAP web services access from a Non-SAP system with user authorization but without Portal/ITS installation.
Also I would like to avoid any hard coding of user id in Non-SAP system .
Could you provide any information.
Thanks,
Bala

We have gone through single sign on options and found several options are available within 5.0.
Tell me what are the several options and what is your Non-SAP system?
without Portal/ITS installation.
ITS is now an integral part of ECC 5.0 system. So would not need a seperate installation, unlike earlier versions.
AB

Similar Messages

  • Problem with ABAP Web service

    Hello Experts,
    Some unusual thing is happening.
    Till this time my scenario was HTTP to RFC. So i have imported RFC in XI and its structure was perfact.
    Tables having cardinality as 1...1, and fields were having cardinalities as 0....1.
    Now we have planned to switch to the proxies and ABAP Web services. I have created the ABAP Web service with the same function module and imported it into the External definations.
    When i am trying to use it into the mapping, Table cardinalities are 1....1 and fields are also having cardinalities as 1...1.
    Now because of that i hv to map all the fields with some constants, but m not comfortable with it as there are nearly 1000 fields.
    Do anyone of you have any idea what might be the problem? or how can i solve it.
    Hope the question is clear.
    Please help in this problem.
    Thanks,
    Hetal

    Hello Hetal,
    This is happening because when you genarte the Webservice out of a Function Module, all the fields in your are mendatory in the generated WSDL.
    This can be avoided. The WSDL that you have generated for your webservice, can be manually edited in Stylus studio etc to change the cardinality and make it optional. We also did the same in one of our scenario and it is working fine.
    As you are mapping these fields with constants, so it doen't make a difference if those are optional too.
    Just edit the WSDL/xsd and reimport it.
    Thanks
    -Kulwant

  • Using ABAP Web Service tor convert IDoc to XML and transfer to SOAP Server

    Hi all,
    I have a problem to use ABAP Web Service to convert IDoc's to XML and then send them to a SOAP Server.
    Currently we have the following landscape:
    SAP->XI->Archive
    The sap-system (ECC6.0) sends an IDoc to the Exchange Infrastructe. The XI maps the IDoc and converts it to the required XML format, used by the archive. Afterwards, the XML documents are sended to the SOAP Server.
    So I'm trying to replace the Exchange Infrastructure with ABAP Web Service.
    I've read a lot of posts and documents reagarding ABAP Web Serivce, converting IDoc's to XML, RFC and so on, but I'm not able to do the replacement.
    I don't know how to start and which steps are required.
    The required roles and authorizations at the sap-system and the service for soamanager and the Web Service Viewer are available.
    First I thought to create the RFC and partner profiles and then the report to convert IDoc to XML as a BAPI. With this BAPI I supposed to create and define a Web Service. The problem is, I don't know how to trigger the report if the Idoc should be send to the archive.
    Hopefully, someone has an idea or a how-to for me.
    Thanks in advance.
    Regards,
    Christoph
    Edited by: BigTicket on May 12, 2010 9:36 AM

    Hi BigTicket.
    A suggestion to trigger the BAPI / WebService at the IDoc receiving is to use a user exit or enhanced inside the idoc function module. When the idoc arrived to the idoc port the system start the related function module and then your user exit/enhanced in which you invoke your BAPI.
    I hope this help.
    Ciao.
    Nicola

  • 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

  • How to consume the Abap web service in Java web-dynpro

    Hi Everyone,
    I want to consume ABAP web service in java web dynpro.
    so when i tried to create model in java web-dynpro, it gave me an error message saying "Invalid WSDL or WSDL not found".
    i think this error message is because, to access the WSDL of abap web-service, we need username and password, but the dialog box in java web-dynpro is not programmed to take username and password from us and send it to the server to get the WSDL.
    i came to this conclusion because i was able to successfully test my abap web-service in java portal. the java portal asked me the username and password to open the WSDL.
    So, please help me to consume the abap web service in java web-dynpro.
    Thanks in advance
    Regards
    Vikas

    Hi Vikas ,
       while creating a model in web-dynpro try to use the "import web service model" option and if you are using local server choose the local server option so that you can get the available web services which are in server, select one among them and continue you process.I think this is the some what easy way .
    If you want use the URL for wsdl better to once test the available service in server and copy that WSDL URL and paste over  WSDL textbox.
    I think this is pretty help ful to you
    Best Regards
    Srikatnh

  • Error while running ABAP web service

    Hi,
    I have WAS 6.4 with ABAP STACK and NetWeaver '04. I created an ABAP web service, it was deployed successfully, but while running it I am getting an error that "Settings for J2EE do not exist".
    Do I need to configure anything to rectify this error....?
    Plz suggest me.
    Thanks,
    Ravindra.

    hello, please i attend too developpe a web service client in java to access to a webservice server PHP, I use axis api, but when i launch my web service client, I receive, all content of the wsdl file from server. please somebody can I help me

  • Standard Web Service and Customized Web Services with or without PI?

    Hi All,
    I want to know how I can use Standard Web Service available in SAP  and customized Web Services
    without PI Interface?
    And what is the best practice to expose services ,via PI Interface or directly?
    Thanks in advance!!
    Pushkar

    This is purely based on your requirement. If you use PI middleware to expose web services, you get standard functionalities such as certificate authentication, logging, message reprocessing for the failed messages etc.  If your requirement is so simple, then you might not need PI. In this case you can develop simple webdynpro for abap program to create webservice and expose the webservice in ECC webservice runtime. You can let anyone to consume within your network. other ways like exposing BAPI/RFC as webservice.  I would recommend going with PI.

  • Call a ABAP Web Service externally

    Hi Experts,
    I have a question on ABAP Web Service:
    is it possible for Company A to call a ABAP Web Service from Company B externally? If yes, how would the it be done? How would the authority be controled? The calling of a Web Service externally, is there anything to do with XI?
    Looking forward to your help!
    Thanks!
    Hua

    Yes it is possible.  It is possible with or without XI (based upon the WebAS release you are on).  WebAS 640 has extensive functionality over WebAS620.  Authority can be controlled in several different ways (HTTP authentication -Basic or HTTPS, Client Certificates, WebService Profiles). 
    There is lots of good on-line help and  a sub-area of Web AS on SDN dedicated to Web Services where you can find many of your answers.
    You can also check out my weblogs.  I have written on the subject of ABAP WebServices without XI several times.  There are real world examples from my compnay.
    One thing that I might add is that that if you are going to call outside of your company's network you will likely have to configure the client proxy settings in transaction SICF.

  • Consuming ABAP Web Service in Non SAP system

    Hi
    I have created an ABAP web service form the RFC and configured it in the SOAMANAGER. I have tested it in Web Service Navigator using the URL and it is working fine.
    Now I am trying to access it from the Non SAP system using Java Code. I am able to access the WSDL using the URL from the step 1 but not able to receive any output when providing inputs.
    So I am not sure if I am missing any configuration on the Provider System (SAP) or on the Consumer system (Non SAP) to access the web service. As far I have not configured anything on the consumer system. Please let me know how to consume the web service in the Non SAP system.
    Thank you,
    Rohit

    not necessarily an answer to your question, but i find that when creating SAP web services, before we create the code for consuming them, I always test them with the SOAPUI package. with this test suite you can import the WSDL, and run individual tests, seeing the input, output, exceptions, etc. This is a good way to check the connection, the flow and the service logic, before writing any code. This will also let you know whether it is a WS issue, or an issue with your code.
    just a thought, from someone who has been there...
    http://www.soapui.org is where you can find the SOAPUI. It helped me out a lot.
    Dave

  • Web Service Model for ABAP Web Service

    Hi,
    I have developed ABAP web service and called it using web service model in WD. The WS is working from WSNavigator. While calling it from WD, im getting the following exception:
    Service call exception; nested exception is:
    com.sap.engine.services.webservices.jaxrpc.exceptions.InvalidResponseCodeException: Invalid Response Code: (502) Proxy Error ( No data record is available ).
    Is some setting required in R/3 where WS is created or on WAS where the WDAppl is deployed?
    Regards,
    Smruti

    Hi Smruti,
    Please try the following:
    Go to Web Service model
    Logical Port
    Uncheck "Use HTTP Proxy" settings..
    Also make sure the WAS has entry of R/3 in hosts files..
    Regards,
    Abhijeet

  • Publish Abap Web Service in ICF virtual host

    Hello
    We have configured our abap aplication server with two virtual host in SICF
    one the default_host that listen in http 8080 port and other virtual host that
    listen in http 8090 port.
    We need define some ABAP web services that listen in default_host:8080  and other virtual host in virtualhost2:8090.
    We define de web service with SE80 wizard and then create the configuration end point
    with SOAMANAGER.
    Our problem is that soamanager ever create the entrie of endpoint in sicf transaction, under default_host:8080 service tree not under virtualhost2 service tree. and so we can not call
    the web service like http://virtualhost2:8090/sap/bc.... because don't exist, only exist
    http://defaul_host:8080/sap/bc....
    we try to copy the entry of the tree under virtualhost2 in the proper place of the tree,
    but when call the webservice with soaui the system report the error:
         No Web service configuration for this access path: ""
    i can see that there are entries in the table SRT_CFG_SRV_ASGN that are related with this
    problem, because assign the url of the endpoint of the ws to virtual host, but i don't
    know how the system generate this entries.
    someone know how call ABAP web service with icf virtual host?
    thanks
    regards
    diego

    Hi Trevor
    For test purpose i can do it works.
    The key point is create the proper entry in the table SRT_CFG_SRV_ASGN that refer to the correct VIRTUAL_HOST.
    When you genreate the endpoint of the service with soamanager, the system generate an entrty in this table with the fiel VIRTUAL_HOST = 0, you can copy this entry and change only two fields.
    VIRTUAL_HOST = <the number of your virtual host>
    HASH --> you can calculate this field with the FM CALCULATE_HASH_FOR_CHAR, in the parameter DATA contatenate the content of the fiels VIRTUAL_HOST and URL (be careful with the upercase), this function module return you the hash.
    (First you have to replicate the icf tree that soamanager create under your virtual host tree)
    With this configuration i can call to my WS over the virtaual host, using soaui.
    I hope this can be useful for you.
    Regards
    diego

  • Transport of ABAP web service

    Hi,
    We can see that the end point /binding of an ABAP web service is not transported.
    Would you have a solution. We cant create a new binding everytime, because the client would not know how to lookup for the web service without a pattern. The second thing is transport is not a one time activity, it happens with every modification.
    and we cant be creating a binding every other time.
    Third what about production. Production should not be used for making changes.
    Do let me know the answers to these questions.
    Thanks,
    Harish

    Hello All,
    We are facing a problem with the webservice transport. The application consuming the service is working fine in CE 7.2 DEV. But after transport to CE 7.2 Quality, there is one service which is resulting in this error.
    Invalid Response content type. Server returned code (500) with message <Internal Server Error> and content type <text/html; charset=utf-8>. Http proxy info:  none
    [EXCEPTION]
    com.sap.engine.services.webservices.espbase.client.bindings.exceptions.TransportBindingException: Invalid Response content type. Server returned code (500) with message <Internal Server Error> and content type <text/html; charset=utf-8>. Http proxy info:  none
    For the rest of the services the content type remains as test/xml, only for this service it gets modified to text/html. This is the only difference we could identify. Any help on this is much appreciated.
    Moderator Message: Please refrain from cross-posting. You need to raise a new thread because your issue is not the same as as what is being discussed in this thread. It just makes it easier for other users when searching for help as well. Please refer to the [Rules of Engagement|http://wiki.sdn.sap.com/wiki/display/HOME/RulesofEngagement] on SCN when asking or answering questions
    Edited by: Trevor Naidoo on Aug 19, 2011 1:51 PM

  • ABAP web services vs XI web services

    Hi All,
    Can you please explain
    1. ABAP web services
    2. XI webservices
    3.Which is best practice / recommended performance wise and for high through put scenarios.
    Thanks
    Praveen kumar Ch

    Hi,
    1. ABAP web services
    Refer
    ABAP Web Services in the Real World
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/244e7923-0a01-0010-5887-fe0b0c6dbb8d
    Providing and Consuming Web Services in ABAP
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30f1b585-0a01-0010-3d96-ad0ea291c4f9
    /people/sergio.ferrari2/blog/2004/11/22/supply-energy-to-abap-web-services-in-sap-web-as-620
    SAP Web Services FAQs
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.highlightedcontent?documenturi=%2flibrary%2fportal-and-collaboration%2fenterprise-portal-6.0-sp2%2fwebServiceson+EP6.zip
    2. XI webservices
    XI Webservice menas you are just defining the web service to generate the WSDL. Here you need to give the URL which will be directed to XI server. This is used for Sender Web Application.
    Here you need to deploy this generated Web service on sender application to send the request to XI.
    thanks
    Swarup
    Thanks
    Swarup

  • ABAP Web Service with tables

    Hello,
    <br>
    <br>
    We need to build a web service with a predefined message in our ERP (ABAP), without PI or WebAS JAVA.
    <br>
    <br>
    We thought it should be a simple task, because we had no problem with many other applications and systems when building the same service, but were not able to build it with SAP ABAP, probably as a consequence of our lack of knowledge on ABAP SOAP runtime.
    <br>
    <br>
    We have an external asynchronous process that delivers information to many other systems using web services (information diffusion). Concecuently, the web service call's structure is determined by the caller, so we have to fulfill this structure if we want to receive the info.
    <br>
    <br>
    The owner of the process defined a very simple service call, in which one kind of  "record" can be repeated 1 to n times:
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    &lt;reglasSuscripcion&gt;
    <br>
                &lt;!Zero or more repetitions:&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
    &lt;/reglasSuscripcion&gt;
    <br>
    <br>
    <br>
    In order to receive this info, we have to implement an abap web service handler to accept this kind of call, the same way other applications/systems have already done.
    <br>
    <br>
    We tried to build a RFC function call and create a web service with the wizard and it resulted in a web service with the following WSDL:
    <br>
    <br>
    &lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:sap-com:document:sap:soap:functions:mc-style"&gt;
    <br>
    <br>
    <br>
    <br>
             &lt;reglasSuscripcion&gt;
    <br>
                &lt;!Zero or more repetitions:&gt;
    <br>
                &lt;item&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                &lt;/item&gt;
    <br>
    <br>
    <br>
    <br>
    &lt;item&gt;
    <br>
                   &lt;nombre&gt;?&lt;/nombre&gt;
    <br>
                   &lt;valor&gt;?&lt;/valor&gt;
    <br>
                &lt;/item&gt;
    <br>
             &lt;/reglasSuscripcion&gt;
    <br>
    <br>
    <br>
    <br>
    We found two main problems:
    <br>
    <br>
    1.- When "wrapping" the RFC as a WS with the wizard, for a table datatype it automatically includes the <item></item> tag, so we break the predefined calling rules.
    <br>
    <br>
    2.- The namespace is fixed by the wizard, and we would like to use a common namespace for all the "susbscribers", logically, the namespace fixed by the information diffusion service.
    <br>
    <br>
    We also tried to find info on the outside-in approach for building a web service from the WSDL, but all the info we found required the ESR and we have no PI, just the ERP.
    <br>
    <br>
    Any ideas on how to proceed?
    <br>
    <br>
    Thanks in advance,
    <br>
    <br>
    Joseba M. Iturbe
    <br>
    <br>
    Edited by: Soporte Desarrollo on Mar 5, 2010 10:56 AM

    #2.  I've recently had to "zap" some namespaces in an ECC5 system because the calling (TIBCO) system didn't appreciate the default SAP "urn" default - something to do with multiple colons in the address.  There were, I think, just three table this affected, all VEP* ones.  I think I should have been able to change these via the virtual interface in SE80 except that the ECC5 code was a bit "light" in this respect, so you may be able to do this now in SOAMANAGER in ECC6 (btw,  I also had to re-save the WS definition within WSCONFIG and re-activate the virtual interfaces after this "zap" to generated the associated handler class again).
    #1. Given your "name / value" pairs represent a complex type, then it might be better practice to have them as "item" which is probably why SAP proposes it this way... what does your custom function module parameter list look like?
    Jonathan

  • Calling abap web service from webdynpro

    hi,
    i have a problem in that i am trying to call an ABAP web service published from r/3 in webdynpro. when i browse to the url generated by the r/3 application server it asks for my r/3 user name and password (not to be confused with http proxy user name and password). now when i enter it, i can see the generated wsdl without a problem. pressing escape gives me the standard 401 error.
    please note this is the r/3 username and password which i am required to enter. when i try to get to the webservice in webdynpro. here is my code:
      public void wdDoInit()
        //@@begin wdDoInit()
        try
              Request_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1 reekvesta = new Request_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1();
              reekvesta._setPassword("userid");
              reekvesta._setUser("password");
              wdContext.nodeRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1().bind(reekvesta);
              wdContext.currentRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1Element().setWfKunnr("0000000011");
              wdContext.currentRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1Element().modelObject().execute();
              wdContext.nodeResponse().invalidate();
        catch(Exception e)
              IWDMessageManager msgMrg = wdThis.wdGetAPI().getComponent().getMessageManager();
              String msg = e.getLocalizedMessage();
              if ((msg==null) || (msg.length()==0))
                   msg = e.getMessage();
              msgMrg.reportException(msg,true);         
        //@@end
    i have also tried it this way:
      public void wdDoInit()
        //@@begin wdDoInit()
        try
              Request_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1 reekvesta = new Request_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1();
    wdContext.nodeRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1().bind(reekvesta);     wdContext.currentRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1Element().modelObject()._setUser("userid");     wdContext.currentRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1Element().modelObject()._setPassword("password");
    wdContext.currentRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1Element().setWfKunnr("0000000011");
    wdContext.currentRequest_YYMJ_WS_TEST1_DEF1_yymjServiceWebTest1Element().modelObject().execute();
              wdContext.nodeResponse().invalidate();
        catch(Exception e)
              IWDMessageManager msgMrg = wdThis.wdGetAPI().getComponent().getMessageManager();
              String msg = e.getLocalizedMessage();
              if ((msg==null) || (msg.length()==0))
                   msg = e.getMessage();
              msgMrg.reportException(msg,true);         
        //@@end
    in both instances i get the error:
    Service call exception; nested exception is: com.sap.engine.services.webservices.jaxrpc.exceptions.InvalidResponseCodeException: Invalid Response Code: (407) Proxy authorization required
    please note
    1. i am trying to test this on my local sap j2ee server, on my workstation. i am not deploying this as of yet to the portal.
    2. i do have access to r/3.
    3. the r/3 application server is in our corporate intranet, and therefore excluded from being looked up by our proxy.
    4. our proxy DOES require a username and password. i added my user name and password to the webservice container section of the visual administrator, and excluded the r/3 server from the proxy list.
    what am i missing?

    Zafar,
    Check the endpoint in generated WSDL. Probably there is a host name that is not in "exclude list" for proxy settings (like IP vs host name, or FQDN vs short host name).
    Valery Silaev
    SaM Solutions
    http://www.sam-solutions.net

Maybe you are looking for