RESTful Enterprise Services

There seemse to be a lot of disagreement in the SOA community about REST vs SOAP (yes, I know one is architecture, and one is technology).  So to better understand this I was wondering of someone could comment on why SAP selected the WS* route?  In addition, does SAP have plans to release REST bases services?
Thanks in advance
Steve

Hi Steven,
SOAP based Web Services is in mature stage than REST.
There are specifications, standards, wider acceptability from major vendors, dedicated governance communities like Oasis which have made way for WS to reach this level.
Web Services is around 5-6 years old and now it is in full swing and forcing organizations to adopt it.
It will take time for REST to get mature and be at this stage where Web Services are.
May be , that is the reason why SAP has gone for Enterprise Services based on SOAP and XML.
Any views/comments on it?
regards,
Piyush

Similar Messages

  • Transfer Of Data from Sap to Oracle with the help of Enterprise Services.

    Hello,
    We want to transfer data from Sap to Oracle using standard Enterprise Services.Some fields were not available in the existing standard Enterprise Services,so we have enhanced the existing Services by writing code inside BADI available with Enterprise Services.Rest of the fields we have mapped with the existing fields available in standard Enterprise Services.But,the Oracle people want to fetch all data from Sap without entering any input as a mandatory field in the Enterprise Services.The existing standard Enterprise Services require to enter any field as mandatory and are not accepting the range in input for multiple records.e.g.All enterprise Services related to Sales Orders are displaying only one sales Order.We have searched all Enterprise Services for Sales Order(related to reading of data),but not able to find service which would display mutiple records without entering any input.ECC_SALESORDER009QR is the only service which is displaying multiple records without entering any input,but the required fields are not available in this service.So,kindly suggest what we need to do further.
    1.Should we go for customization of services completely,so that it would fulfil our requirement.
    2.Are there  standard Enterprise Services exists which would we give us data in range(all records).
    If they exists,please specify the names of Services for reading Purchase Order,Production Order,BOM etc.
    Thanks & Regards,
    Divya.

    Hi Vaibhav,
    Let me tell you the objective in detail.
    Objective.
    To develop a package solution which will work as a bridge between Oracle APS and SAP system so that customers using SAP will be able to use advantages of Oracle APS for their planning needs.
    This will consist of following major components:
    OA Templates is an Oracle utility to load data from any legacy system to Oracle APS using standard flat files.
    Oracle has developed an Application Integration Architecture which is a standard architecture used for integration of Oracle products with other systems.
    Enterprise services is an SAP utility to communicate with SAP.
    AIA canonicals are standard canonicals developed by Oracle where we have to map data fields from destination system (Oracle APS) and source system (SAP)
    Fusion middleware is being used to develop application interfaces following AIA standards.
    Tasks at stake:
    Mapping of Oracle APS fields and SAP Enterprise Service fields to AIA canonicals
    Technical work of developing middleware using Oracle Fusion
    From Sap side,we have to map fields which we have received from Oracle with the help of Enterprise Services,rest  consumption of these services is done by Oracle guys.So,suggest is there enterprise services available which would give us multiple records .
    Thanks & Regards,
    Divya.

  • Question about configuring REST web service in EBS instance

    I am from EBS SCM team. From one wiki page, it says OA Framework provides REST framework to expose OAF BC4J objects as web services. Can you provide more details about how to configure REST web service for one EBS instance? Any related information is also helpful.
    Edited by: 936859 on Sep 7, 2012 5:45 PM

    IIRC you must activate PAPI-WS for the engine. In Studio you do it by right-clicking on the project, then "engine preferences". In enterprise/standalone you must activate PAPI-WS in the Admin Center.

  • Report Bursting with RESTful Web Services SDK

    Hi,
    We are looking to upgrade to BI 4.x from BI 3.1.  We are not sure whether RESTful Web Services SDK is the way to go.  We have a requirement where we need to be able to refresh a report, save the whole report content to a specified forma for a team lead/manager, and then section/burst each report to separate files that each is corresponding to the individual employee.  In other words, for example, we have a team constent of 1 manager and 4 employees.  We want to save one report for the manager with all the content from the 4 employees, and then 4 individual reports that each belong to each employee.  We current have a macro code that does this in BI 31 refreshing Deski reports.  We want to upgrade to BI 4.X, but the Deski and macro are no longer supported.  The macro in BI 3.1 we used to control when to refresh, where to save the reports and update our external datasource that the reports finished refreshing and available for view.  We want to keep the same functionality so that it is not a whole redesign of the system when the upgrade happens.  Thank you so much for your help.  Any sample code, tips and guides are helpful.  I am looking to prototype first before I can confirm this will work when upgrading.  I have a code snippet in macro (VBA) from BI 3.1 in the attached file for reference if you know of the equivalent.

    Hi Raghunath,
    Looking at your macro, most of the functionality would be available with REST SDK. With BI 4.x REST is now only SDK which provides APIs to work with webi report. With .NET or Java SDK we could not eeven schedule a webi doc with prompts.
    With BI 4.1 REST APIs include.
    refresh report, schedule report, save report, export which is done by your macro.
    For detailed tasks, such as saving and modifying the report for specific users and send to schedule, you would need to play around with REST Urls to understand the workflow.
    For starters take a look at the devleopers guide for REST here:
    http://help.sap.com/businessobject/product_guides/sbo41/en/sbo41_webi_restful_ws_en.pdf
    Here is the doc which compares the availability of SDK APIs with different BI versions.
    http://scn.sap.com/docs/DOC-53285
    For any Enterprise level tasks, you could always use .NET or Java enterprise SDk and comibe it with your REST app.
    - Bhushan
    Senior Engineer
    SAP Active Global Support
    Follow us on Twitter
    Got Enhancement ideas? Try the SAP Idea Place

  • Report Repointing using RESTful Web Services

    With respect to this link: Changing Dataproviders for a Webi Report using RESTful Web Services
    Cosider the following scenario:
    You have an automation code using which, you accepts 20 report id and their respective Current universe id and New universe id.
    If suppose, you have user input prompts in 10 reports and you don't know those 10 reports, how will you provide values to those prompts at a single execution of the code?
    OR
    Is there any function using which you can provide associated random value to those prompts?

    Hi Raghunath,
    Looking at your macro, most of the functionality would be available with REST SDK. With BI 4.x REST is now only SDK which provides APIs to work with webi report. With .NET or Java SDK we could not eeven schedule a webi doc with prompts.
    With BI 4.1 REST APIs include.
    refresh report, schedule report, save report, export which is done by your macro.
    For detailed tasks, such as saving and modifying the report for specific users and send to schedule, you would need to play around with REST Urls to understand the workflow.
    For starters take a look at the devleopers guide for REST here:
    http://help.sap.com/businessobject/product_guides/sbo41/en/sbo41_webi_restful_ws_en.pdf
    Here is the doc which compares the availability of SDK APIs with different BI versions.
    http://scn.sap.com/docs/DOC-53285
    For any Enterprise level tasks, you could always use .NET or Java enterprise SDk and comibe it with your REST app.
    - Bhushan
    Senior Engineer
    SAP Active Global Support
    Follow us on Twitter
    Got Enhancement ideas? Try the SAP Idea Place

  • Hello REST web service example deployment fails when using EJB

    I was able to successfully deploy the hello REST web service example. But when I attempted to lookup an EJB via the following code I get an error message.
    try {
    ic = new InitialContext();
    DirectoryBean db = (DirectoryBean)ic.lookup("java:comp/env/ejb/DirectoryBean");
    } catch (NamingException ex) {
    ex.printStackTrace();
    Here is the error message in the NetBeans console window:
    Deploying application in domain failed; Error loading deployment descriptors for module [hello] -- com.sun.enterprise.deployment.annotation.context.WebBundleContext cannot be cast to com.sun.enterprise.deployment.annotation.context.EjbContextat com.sun.enterprise.deployment.annotation.AnnotationInfo@15f1fa0
    D:\java\Sun\swdp-tutorial-1.0\examples\rest\hello\nbproject\build-impl.xml:450: Deployment error:

    I think the problem may be that the SimpleServlet example uses an apt feature to generate a web.xml which will replace any web.xml you already have in the project (and lose any references etc you might have in it). To work around this problem first copy the necessary lines from the web.xml in the generates .war file - they should look something like this:
    <servlet>
    <servlet-name>RESTBeans Application</servlet-name>
    <servlet-class>com.sun.ws.rest.impl.container.servlet.ServletAdaptor</servlet-class>
    <init-param>
    <param-name>resourcebean</param-name>
    <param-value>com.sun.ws.rest.samples.servlet.resources.RESTBeansResources</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>RESTBeans Application</servlet-name>
    <url-pattern>/restbean/*</url-pattern>
    </servlet-mapping>
    Add these to your project web.xml, replacing any lines that look similar (the web.xml in the sample project has these lines that you'll need to replace:
    <servlet>
    <servlet-name>ServletAdaptor</servlet-name>
    <servlet-class>com.sun.ws.rest.impl.servlet.ServletAdaptor</servlet-class>
    <init-param>
    <param-name>resources</param-name>
    <param-value>test1</param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <!-- this is a comment -->
    <servlet-name>ServletAdaptor</servlet-name>
    <url-pattern>/*</url-pattern>
    </servlet-mapping>
    Now you need to turn off automatic web.xml generation by adding <option key="noservlet"/> to the apt task option in build.xml (look for the apt child of the -pre-compile task in build.xml).
    Clean and rebuild and make sure that the web.xml in the generated .war file now matches the project web.xml file.
    Marc.

  • Problem with models in the enterprise service builder

    Hi all,
    I get this message from the enterprise service builder, when i double click on one of the models on the tree on the left of the builder itself.
    the message says:
    Error Initializing Business Modeling
    Initialization of business modeling cannot be started. You cannot work with business modeling. Check tht all required configutarion objects are available
    i made all the wizards suggested in /people/werner.steyn/blog/2008/03/03/how-to-look-like-a-hero-with-netweaver-ce-esr-sr
    please someone can help me to understand what the massage means?
    what is a configuration object? what can i do to fix the problem?
    thank you very much

    closed

  • Not able to see Enterprise Service hosted at SDN

    Dear All
    I want to access the Enterprise Service that are available at SDN and for that I created two proxies in Visual Admin.
    I am trying to call those services in my Visual Composer. I am able to see the services in the Group.
    But not able to see the required Enterprise Service.
    When I click the + sign nothing comes under that group.
    I am using VC 7.0
    Can any body help me.
    Thanks
    Vivek
    Hello Everybody
    The ES available at SDN cannot be accessed outside SAP network because if we see the XML of the service available, the URLs within the XML are pointing to the internal hostname iwdf1030.dmzwdf.sap.corp of the system and not to the external hostname erp.esworkplace.sap.com. Unfortunately the internal hostname is not accessible or known to the internet and that is why we are not able to connect and retrieve the interface definition.
    May be it will take some time to resolve this issuse, till then have a great time.
    Regards
    Vivek
    Edited by: Vivek Kumar Mishra on Feb 28, 2008 11:26 AM

    Hello Everybody
    The ES available at SDN cannot be accessed outside SAP network because if we see the XML of the service available, the URLs within the XML are pointing to the internal hostname iwdf1030.dmzwdf.sap.corp of the system and not to the external hostname erp.esworkplace.sap.com. Unfortunately the internal hostname is not accessible or known to the internet and that is why we are not able to connect and retrieve the interface definition.
    May be it will take some time to resolve this issuse, till then have a great time.
    Regards
    Vivek

  • How to configure proxy services in OSB for Rest based services?

    how to configure proxy services in OSB for Rest based services implemented using Jersey (Rest).
    The Client need to contact OSB proxy servies by posting application/xml using jersey client and OSB proxy service will call the OSB business service.
    i would like to know how to get this request in OSB proxy service and send it to the business service and get the response back.

    I would suggest you refer to the below links:
    https://blogs.oracle.com/jeffdavies/entry/restful_services_with_oracle_s_1
    https://blogs.oracle.com/jamesbayer/entry/using_rest_with_oracle_service
    Hope this helps.
    Thanks,
    Patrick

  • HTTP error when trying to access RESTful web service from application

    Hi,
    We are getting the following error when trying to access a RESTful web service coming from Apex workspace 4.2.1 and Apex listener 2.1:
    ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1130 ORA-29024: Certificate validation failure
    In the Debug report, besides the above I also see:
    error_backtrace: ORA-06512: at "SYS.UTL_HTTP", line 1130 ORA-06512: at "APEX_040200.WWV_FLOW_WEB_SERVICES", line 543 ORA-06512: at "APEX_040200.WWV_FLOW_WEB_SERVICES", line 1164 ORA-06512: at "APEX_040200.WWV_FLOW_PROCESS", line 396
    We get that error whether we use https or http in the URI pointing to the web service. When I test the Web Service in Workspace RESTful service GUI, I get the data back. When I go build an application with a report calling the RESTful Web Service I get that error. Both the Application and the Workspace RESTful services are on the same Apex environment and even the same workspace.
    What is odd is that I can actually put the URL of the web service into a browser and I get the data: (using the demo hr data in sample RESTful services.)
    IN browser-- https://weblogic-dev.edu/apex/ace/hr/empinfo/
    yields:
    7839,KING,PRESIDENT,,1981-11-17T05:00:00Z,5000,,10 7698,BLAKE,MANAGER,7839,1981-05-01T04:00:00Z,2850,,30 7782,CLARK,MANAGER,7839,1981-06-09T04:00:00Z,2450,,10 7566,JONES,MANAGER,7839,1981-04-02T05:00:00Z,2975,,20 7788,SCOTT,ANALYST,7566,1982-12-09T05:00:00Z,3000,,20 7902,FORD,ANALYST,7566,1981-12-03T05:00:00Z,3000,,20 7369,SMITH,CLERK,7902,1980-12-17T05:00:00Z,800,,20 7499,ALLEN,SALESMAN,7698,1981-02-20T05:00:00Z,1600,300,30 7521,WARD,SALESMAN,7698,1981-02-22T05:00:00Z,1250,500,30 7654,MARTIN,SALESMAN,7698,1981-09-28T04:00:00Z,1250,1400,30 7844,TURNER,SALESMAN,7698,1981-09-08T04:00:00Z,1500,0,30 7876,ADAMS,CLERK,7788,1983-01-12T05:00:00Z,1100,,20 7900,JAMES,CLERK,7698,1981-12-03T05:00:00Z,950,,30 7934,MILLER,CLERK,7782,1982-01-23T05:00:00Z,1300,,10
    Any ideas on what would be causing the Error above in our application?
    Thanks,
    Pat
    Edited by: patfmnd on Mar 11, 2013 3:25 PM
    In reviewing the above error, I think we are realizing that we have to have the Weblogic layer SSL cert (actually the CERT from our BigIP load balancer which also does our SSL termination) imported into the Oracle server wallet where Apex is installed. Am I correct?
    PM

    We resolved our problem. The Apex Administrative Guide made us realize that we had to set up Wallet path in the Instance. This required working with DBAs to follow the Advanced networking guide to get the wallet set up on our server. We then added that path to the Instance configuration. (Manager Instance --> Instance settings). We ran into another other issue related to our implementation of CAS but were able to resolve that, and 'voila' were able to get the sample RESTful service consumed by our application!!
    Now to the task of figuring out how to get Basic Auth working between client application and RESTful web service. If anyone has that working, let us know!!
    It would be helpful if in the documentation of the Apex 2.x listener or Apex install/configuration there was clear reference to the above steps required for HTTPS access to RESTful web services.
    Pat

  • Error creating service consumer enterprise service

    Hi,
    I'm facing an error when creating a service consumer enterprise service using WSDL URL. I got the error message
    'Exception occurred in communication framework:Error in HTTP Framework:404Not foundhttp://localhost:8000/?wsdl=wsdl0'
    Does anyone have any idea of how may cause this problem ?
    I've looked in existing foruns questions for a long time, and I didn't get any answer to my problem.
    I'll apreciate any help.
    Thanks,
    Paulo Sousa

    Hi,
    The problem was in WSDL. It has an address 'http://localhost_8000/
    They replace it by the address where the service is installed and i was able to create the service consumer.
    Thanks,
    Paulo Sousa

  • XML Deserialization error while consuming Enterprise service in wd java..

    Hello,
    I am trying to build 2 webdynpro java webdynpro applications which consumes enterprise service for purchase order and another application for Busines partner.
    While i was able to successfully consume the PO service in webdynpro java and get the desired output for PO..i get XML Deserialization error while running appliation for Business Partner..
    These are the details/steps i followed for the Business Partner application:
    1. After creating the model using the enterprise service, i created a service controller from the model to the component controller..
    2. Out of many inputs/output attributes during mapping from model to component controller. i further mapped the context from CC to ViewC.
    3. In the wdDoInit() method, i added the follwing code:
        BPCreate model1 = new BPCreate();
        Request_BusinessPartnerERPCreateRequestConfirmation_In RequestC = new  Request_BusinessPartnerERPCreateRequestConfirmation_In(model1);
        BPERPCrteReqMsg_S CreateMessage = new BPERPCrteReqMsg_S(model1);
        BPERPCrteReq_SBP Cpartner = new BPERPCrteReq_SBP(model1);
    String Category = new String();
        String lf = new String();
        Cpartner.setInternalID(new String());
        Cpartner.setNumberRangeIntervalBusinessPartnerGroupCode(new String());
        Cpartner.setLifeCycleStatusCode(lf);
        Cpartner.setCategoryCode(Category);   
        CreateMessage.setBusinessPartner(Cpartner);
        RequestC.setBusinessPartnerERPCreateRequestMessage_Sync(CreateMessage);
        wdContext.nodeBusinessPartnerERPCreateRequestMessage_Sync().bind(CreateMessage);
    4. When i comment this code and run the application, the aplication comes up but the input fields are non-editable..
    5. If i place this code in wdDoInit() method, i get the Deserialization error..
    Any idea about why this error occurs and which areas in the application can lead to these errors?
    I checked that the service runs fine in soamanager.
    Thanks, JVR

    Hi Kishore,
    This error is majorly because while executing this Webdynpro application you are not entering all the mandatory fileds of WS.
    Please try to execute this WS from WS-Navigator, check which fileds are mandatory and then
    appropriately instantiate it in wdDoInit and pass all the fields required.
    Regards,
    Vaibhav Modi.

  • Unable to Enterprise Service Repository and Intergration Directory in SAP PI 7.1

    Hello Experts,
              I am unable to open Enterprise Service Repository and Integration Directory in SAP PI. The error displayed while opening the tools is "Can not find Message File". I have tried installing Java versions from 1.5 to 1.7 .Also all the Host and Services files entry are correctly pasted in drivers--> etc--> folder. But still the problem persists... Would request you help me on this so that i can start my work. Please find the below error screen shot... Thanks a lot in advance.
    Best Regards,
    Prashanth Bharadwaj.Ch

    Hi All,
         As per your previous conversation,If java is installed properly a pop up window will be opened. I have typed JAVAWS in run command. Please the below screen shot. Even the problem persists.. Kindly help. Thanks a lot in advance
    Best Regards,
    Prashanth Bharadwaj.Ch

  • 401 Unauthorized Error When calling a SharePoint REST web service from SharePoint 2013 Workflow

    We have our Workflow Manger installed on the same server as our SharePoint 2013 WFE development environment. When creating a SharePoint 2013 Workflow all Calls to a SharePoint 2013 REST web service results in a 401 Unauthorized error.
    As an example I created a simple workflow that should return a JSON result. The REST Url returns the results in the browser without error.
    Set Variable:webServiceUrl to https://<hostnamedsitecollection>/_vti_bin/client.svc/web/lists/getbytitle('ISR%20Approvers')/Items?$select=Title&$filter=Title%20eq%20%27General%27
    then Build{...} Dictionary (Output to Variable:requestHeaders)
    then Call [%Variable:webServiceUrl%] HTTP web service with request (ResponseContent to Variable:responseContent |ResponseHeaders to responseHeaders | ResponseStatusCode to Variable:responseCode)
    The RequestHeader is set to the requestHeaders variable though the web service call properties
    then Log Variable:responseCode to the workflow history list
    After manually running the workflow in SharePoint on a list item in the ISR Approvers list it Logs "Unauthorized" in the Workflow History Log. It does this with every SharePoint REST web service call that I have tried through the workflow.
    It doesn't have anything to do with the Workflow Manger being installed on the same machine as the SharePoint WFE does it?
    Thank You for any insight

    Hi,
    According to your post, my understanding is that you had 401 Unauthorized Error when calling a SharePoint REST web service from SharePoint 2013 Workflow.
    Please make sure you use the ‘Call HTTP Web Service’ correctly.
    You can enter the URL into the brower to check whether it is correctly.
    You need to
    create the Request header requestHeaders
    using a Dictionary:
    Accept : application/json;odata=verbose
    Content-Type : application/json;odata=verbose
    To associate the
    requestHeaders variable, select the Call action
    property, set the RequestHeaders property to
    requestHeaders.
    Please refer to the following articles:
    Working with Web Services in SharePoint 2013 Workflows using SharePoint Designer 2013
    Calling the SharePoint 2013 Rest API from a SharePoint Designer
    Workflow
    In addtion, you need to make sure you install the workflow manager correctly.
    More information:
    Install and configure workflow for SharePoint Server 2013
    Known Issues in Workflow Manager 1.0
    Troubleshooting Workflow Manager 1.0 Management and Execution
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Logon Error Message - Enterprise Services Builder address not maintained

    Hi Experts,
    I'm about to start the configuration on PI PROD (PI 7.1) server, but I keep encountering an error, saying "Service cannot be reached"
    Service cannot be reached
    What has happened?
    URL http://hostname:port/nwa call was terminated because the corresponding service is not available.
    Note
    The termination occurred in system PIP with error code 404 and for the reason Not found.
    The selected virtual host was 0 .
    What can I do?
    Please select a valid URL.
    If it is a valid URL, check whether service /nwa is active in transaction SICF.
    If you do not yet have a user ID, contact your system administrator.
    ErrorCode:ICF-NF-http-c:000-u:SAPSYS-l:E-i:XXXXX_PIP_00-v:0-s:404-r:Notfound
    HTTP 404 - Not found
    Your SAP Internet Communication Framework Team
    What's more weird is that I can't launch sxmb_ifr because 'Enterprise Services Builder address not maintained'.
    I already made some RFC Destination such as AI_DIRECTORY_JCOSERVER, AI_RUNTIME_JCOSERVER, LCRSAPRFC, and SAPSLDAPI and when I test the connection, here's the error message said 'Error when opening an RFC connection (CPIC-CALL: 'ThSAPOCMINIT' : cmRc=2 thRc=67'
    Thanks for the reply.

    Hello,
    Check if you have more than one system. If so, check whether host, port and URL of startpage are maintained on the correct one.
    Also, please follow the MANUAL steps of the SAP Help link below:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/a0/40084136b5f423e10000000a155106/content.htm
    Ensure you have created the RFC Destinations in the ABAP and Java Environment
    You need to create the following RFC destinations in transaction SM59
    (ABAP) and the Visual Administrator (Java):
    AI_RUNTIME_JCOSERVER
    AI_DIRECTORY_JCOSERVER
    LCRSAPRFC
    SAPSLDAPI
    Last, please check whether, In tcode SM59, the destination INTEGRATION_DIRECTORY_HMI.
    The user maintained in the Logon tab should be PIISUSER
    and ensure he password is correct,and check if the destination will test successfully.
    All of those will solve this issue
    Regards,
    Caio Cagnani

Maybe you are looking for