Proxying ABAP Web Service on NW CE

Hi,
Assume that we have a Web Service created in ABAP System and can be accessed anywhere.
We want to publish this web service to external 3rd party companies but don't want them to access directly SAP R/3 System.
One way is to create another Webservice on CE and call ABAP Web Service from there and also publish this CE Web Service.
But I remember that it is possible to create a Web Service Proxy on CE for anther Web Service.
Could you help me to choose the best option and also if there are sample solutions
regards

Hello,
I think you must create a Web Service proxy client and expose this client as a Web Service.
For creating your Web Service you must follow the outside-in approach:
1.Import the WSDL document from your ABAP system.
2.Generate the Java bean skeleton based on the imported WSDL.
This is the link to the help documentation:  http://help.sap.com/saphelp_nwce10/helpdata/en/46/935a636110581de10000000a1553f7/frameset.htm

Similar Messages

  • ABAP Web Service client proxy - generation problems

    Hi!
    I tried to create an ABAP web service client proxy for many different web services -
    for instance some of that listed at <a href="http://www.xmethods.net/">http://www.xmethods.net/</a> .
    Almost on 99% of the WSDLs the client proxy generation failed.
    For istance "<extension> not supported", or "<message...> must have at least one part",... .
    Could anybody tell me what restrictions are to web services you can create a
    ABAP client proxy for ?
    In the SAP Web AS Java Stack there is no problem at all to generate a
    client proxy for almost all of the xmethod-WebServices !
    Is the ABAP Web Service proxy generation for production use ?
    Regards
    Frank Ruggaber

    Resolved through SAP Help. Refer SAP note# 0001403271.

  • 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.

  • 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

  • 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

  • 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

  • Debugging ABAP web services

    Hello,
      I have an ABAP web service created from a remote enabled function module. The web service is called from a BSP application. How can I debug the code within the function module?
    I activated debugging for the web service in ICF. I set external breakpoint in the function module. However, the execution does not stop in the function module.
    Any ideas?
    thank you
    Benolin

    Hello,
    I found a way to debug my ABAP code called from the web service.
    I have an http connection configured in sm59 of type H. My proxy class uses this http destination to connect to the web service. Target host of this http destination is an application server of the R/3 system where my web service is available.
    If I logon to the ABAP system to this particular  application server and set breakpoints in my code, the execution stops at the breakpoints.
    Regards
    Benolin

  • ABAP web services

    HIII..
    I want  to know about  a ABAP web service . How this can be created????
    Thanks in advance.
    Regards
    Mayank Saxena

    Hi,
    Web Services
    Business processes consist of individual process steps that can vary in how extensive they are. One or more functions are then assigned to these steps; an executing software component is then assigned to each function. Clearly, the heterogeneous nature of system landscapes in enterprises makes it impossible to implement all the necessary functions associated with a complete process using the same technology on the same component. A modern software infrastructure must be in the position to integrate functions, implemented on widely differing software components, in one effective complete process. Until now, the combination of different applications has largely been based on manually declared interfaces, message formats, and agreements between business partners.
    Web services simplify this process. They are based on open, generally accepted standards. They enable you to combine functions in a single process, even if they are implemented in widely differing software components. Web services are standalone, executable entities that can be published, searched for, and called, across a network.
    Introduction
    The SAP Web Application Server implements the following basic Web services standards: eXtensible Markup Language (XML); Simple Object Access Protocol (SOAP); Web Service Definition Language (WSDL); and Universal Description, Discovery, and Integration (UDDI). 
    In the documentation that follows, we assume that the reader is familiar with Web service standards and techniques. You will find a general introduction to the Web Services topic under Sun Microsystems, in the pages of W3C, and in the general explanations for standardization organization OASIS under the topic UDDI.
    Integration
    ABAP and Java Web Services
    Enterprises can extend their solutions by using Java or ABAP Web services, or both. If your priority in programming an application is the selection of data, the integration of an ABAP Web Service could be appropriate. Conversely, if you are implementing processes that involve different business partners and systems, it may be beneficial to program in Java and integrate Java Web Services.
    The Web Service Framework consists of:
    ·        The development environment for the ABAP Engine
    ·        The development environment for the J2EE Engine
    ·        Tools that support UDDI registration
    ·        A distributed, interoperable SOAP runtime (ABAP and J2EE Engine)
    Processing of SOAP requests using the Internet Communication Framework
    Web Services and the SAP Exchange Infrastructure
    The SAP Exchange Infrastructure is a key area in SAP NetWeaver. The Exchange Infrastructure provides an open, process-oriented integration infrastructure for the unhindered flow of information and for XML-based message exchanges. Systems integrated using SAP XI exchange messages over the Integration Server.
    The programming model for XI ABAP proxies and Web services has been unified. The advantage of this is that both technologies can be implemented so that they complement one another. Messages can be sent and received either using the XI runtime or the Web service runtime.
    Additional proxy runtime services can be controlled using protocols that you request using a proxy method. The features you have available depend on whether you are using the Web Service Framework or the Exchange Infrastructure for communication.
    Features
    The ABAP Workbench offers an environment where you can publish, search for, and call Web services. It enables the SAP Web Application Server to act both as a server and client for Web services.
    The Web service infrastructure enables developers to:
    ·    Publish independent function that were implemented as RFC-enabled function modules, function groups, BAPIs, or XI message interfaces. This includes functions available as part of mySAP.com solutions, or functions developed by customers or partners. The Web service can be used across the entire Internet using standard protocols and can easily be added to any development environment. (See also Creating a Web Service).
    ·    Consume Web services, regardless of where they are stored or how they are implemented. Business processes can be implemented across several systems, either within an enterprise or across several enterprises. (See also Consuming Web Services.)
    The following triangle shows the basic architecture of the Web Service Framework:
    Service Provider
    After the functions have been implemented, a Web service interface must be created that provides a representation of the Web service for the user. This interface offers an abstraction layer and thus independence from the specific implementation used. Based on this interface, the Web service is configured and can be called at runtime. Publishing Web services in a UDDI Registry is supported by the UDDI client functions in the SAP Web AS.
    Service Directory
    You can store Web service definitions and released Web Services in a UDDI Registry. WSDL documents provide the basis of the Web service client, which can then be searched for in the UDDI using either a browser or the standard UDDI APIs. Web services can be published and searched for in all registries that conform to the standard. SAP also offers a public UDDI Business Registry under uddi.sap.com.
    Service Requestor
    The SAP Web AS allows you to integrate Web services. It can generate Web service clients from WSDL files.
    Standardization and Extensibility
    Web services and Web service standards develop quickly; new standards are being presented continually at standardization committees. However, these extended standards – such as security standards or additional protocols – can easily be integrated in the Web Service Framework using SAP.
    See also:
    Web Services Toolset
    For more information see the following link.
    http://help.sap.com/saphelp_nw04/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/frameset.htm
    Please Reward If Helpful
    Jagadish

  • Access Enterprise Search via ABAP Web Service

    Hello ES experts,
    I am looking for more information on how to access Enterprise Search via ABAP web service QSDispatcher, using processQuery operation. I created a client proxy and need information on structure of input and output parameters (query and query result)
    Thanks, Srdjan

    Hi Srdjan
    You can access the SAP ABAP system by configuring it in the NW ES admin console, any system with version > 4.6C can be integrated in the search engine.
    The UI for NW ES is a WebDynpro via Web Browser (In the future will be integrated in Widgets and Portal, etc) but i'm not sure if you want to use the WS to access the results of the ES searching or if you want to integrate a WS from ABAP as part of the searching area...
    Please clarify.
    Thanks,
    Best Regards,
    Luis

  • 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

  • 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

  • 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

  • SOA - real time proxy to web service scenario

    Hello Experts,
    I am working on PI but really very much new to the SOA concept.
    But i have to prepare document which explains about all steps that we need to follow (technicallly) for the SOA implementation.
    We are going to implement one Proof of Concept for SOA before going for the real project.
    Can someone please help me and tell me what all the things i need to do for Proxy to Web Service Scenario in PI.
    I hope i have made myself clear about it.
    Thanks,
    Hetal

    Hi Gaurav,
    Thanks for your advice.
    I have one more question and i tried to explore SDN alot but didnt get satisfactory answer.
    here is the situation:
    My scenario is like :
    .Net application = consumer
    ECC = Provider
    PI = broker
    SR = Publish ES
    I am using the Outside - In approach, where i am creating proxy structure in ESR and then creating/ Generating Proxy in ECC.
    I am exposing my Inbound Interface on SR, so that the WSDL is available on SR.
    Now the situation is, our consumer is asking data from us in different format.
    I read on help.sap.com that via PI mapping it is possible.
    But i am not understanding that consumer is using ECC WSDL to make a call, then even though mapping is there, how can they get response in their required format.
    They are even providing us their WSDL. I am totally confused that in one interface how come two different WSDLs can work?
    Or is there a way for this?
    I am even ready to use the same structure for my ECC which is provided by consumer, but then i dont see any outcome using PI.
    I also have question, that for standard service also, ECC Enterprise service structure is fixed which we expose, then using PI how can we provide consumers response in their desired way.
    I know that m asking this question again and again, but still it is not getting clear to me... might be m not understanding that how it works in SOA.
    If possible can you tell me the steps that i need to follow technically to develope this interface? so that i can get better understanding?
    Thanks,
    Hetal

  • 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

  • Proxy to Web Service Communication doesn't work

    Hi,
    We configured the XI demo example “Checking Flight Seat Availability (Proxy to Web Service Communication)“ (chapter 6.2) and everything works fine until we try to execute the szenario (chapter 6.2.3).
    When we try to execute the szenario, we get an error displayed in the runtime Workbench. In the component Integration Server, we get a systemfailure with code “ADAPTER.SOAP_EXCEPTION” of category “PARSING”. The Adapter Engine also displays an error in the audit log:
    “SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Authority check failed”
    The User XIAFUSER has SAP-All-authorizations.
    Has anybody an idea, what’s the problem is?
    Greetings
    Hildegard
    Message was edited by: Hildegard Winter

    Check out, that the URL of the WebService is correct:
    "http://<YourServer>:<<b>ABAP_Port</b>>/sap/bc/srt/xip/sap/SXIDAL_FLIGHTSEATAVAIL_CHECK?sap-client=<<b>YourClient</b>>"
    Change the default values if necessary.
    Check in the client, if the role SAP_XI_APPL_SERV_USER (which should be applied to your user) is generated and has no errors.
    Regards
    Stefan

Maybe you are looking for