Expose REST service in PI

Hi all,
I kindly ask if it's possible to expose a REST web service with PI to be called from an external application.
I've created many scenarios in wich I created a SOAP service (from service interface) in PI and I was able to call the service from an external application (e.g. SOAPUi).
Is it possible to make the same thing exposing a REST service (the url should contain parameters).
I've seen some discussions and blogs with examples of usage of "SOAP Axis" but it seems it's be possible only to invoke an external service.
Is it possible also to create a REST web-service?
If yes could you please provide examples or step-by-step procedure?
Thanks in advance for any help.
Stefano.

Hi Stefano,
please check the below link where REST adapter key features.
>>>I kindly ask if it's possible to expose a REST web service with PI to be called from an external application.
It can be used to expose internal applications as REST services or to consume external REST services by calling these services from SAP PI.
http://scn.sap.com/community/pi-and-soa-middleware/blog/2011/11/08/rest-adapter-for-netweaver-sap-pi
Thanks and Regards,
Naveen    

Similar Messages

  • Exposing rest services in custom managed server

    Hi everybody,
    I want to know how can expose the rest sevices for custom managed server which is created from webcenter custom portal template ????
    Thanks.

    I mean that once i deployed my custom webcenter portal (including web 2.0 services) into managed server. it is possible or not to manage potal services (documents, discussions ..) through rest api using thz following URL: http://myManagedServer:myPort/rest/api/resourceIndex ????

  • Exposing REST Service in Oracle SOA 10g.

    Hi,
    I have a requirement to expose a REST web service. The environment im working on is Oracle SOA 10.1.3.4.
    Please let me know the way of doing the same.
    Thanks.
    Edited by: user577285 on Sep 24, 2012 10:01 AM

    Yes, it's clear now...
    I would say you will have to maintain both infrastructure for a while...
    You can proxy the external web service entry points via OSB as I told you before, this way you can migrate the services from .NET to Oracle SOA gradually without affecting your customers, as they will always point to Oracle SOA, never to .NET infra.
    Cheers,
    Vlad
    It is considered good etiquette to reward answerers with points (as "helpful" - 5 pts - or "correct" - 10pts)
    https://forums.oracle.com/forums/ann.jspa?annID=893

  • Exposing REST service as EJB 3.1 method

    How to convert Restful WebService (RestEasy) to EJB 3.1 Stateless session bean
    In my current project we are using Restful Web Services (Resteasy) combined with Jpos and Jcard with an ISO-8583 message format. The task is to remove all the dependencies of resteasy,jpos and jcard and implement it through EJB 3.1 stateless beans for the current functionality.
    I have seached / googled all over the net with regard to how to proceed but unluckily no success till yet.
    Would be grateful if any one can provide any pointers / suggestions / demo code for the same.
    Please Note - Its a already developed module in Restful + jpos + jcard .. is it possible to convert restful webservice to ejb 3.1 stateless beans ..using jboss server..

    I figured this out...the context root is NOT the one specified in the @ApplicationPath annotation. The context root has to be specificed in the vendor-specific dd, glassfish-web.xml for example, or the default needs to be accepted.
    The endpoint URI is of the form http://hostname:port/contextRoot/applicationPath/path, where applicationPath is specific with @ApplicationPath and path with @Path.
    Edited by: asarkar on Jul 24, 2011 2:45 PM

  • Do SMP3.0 supports JSON based RESTful services exposed via JBOSS server??

    Hi All,
    We are working on a PoC for a customer to consume JSON based RESTful (exposed via JBOSS Server) service from SMP 3.0. We were not able to get the DataSet. the below are the steps which we performed and the respective result.
    1) Created a SMP Application - Able to ping the application with the base URL
    2) Tested the connections - Able to create a Registration using Firefox POSTMAN client
    3) Data Consumption from the service - We are not able to get the response for the service when we try the same via SMP,but we are able to get the data when we try the REST service URL directly from the browser.
    How do we achieve this? Do SMP3.0 support JSON based RESTful service? Can Integration Gateway Help?
    Thanks, Prem

    hi Jitendra,
    attached are the screen shots of both SMP service from postman we tried and the original service from the browser.
    1- postman ping for SMP URL and header says success.
    2- Response body with entity set structure and empty data there is no data inside the collection named "Connection" as well and if i call this i fails with 501, that not implemented, so i guess SMP3 is unable to create the entity set out the JSON REST services while converting it into Odata service internally.
    3- i can view data if run directly the REST service from browser.

  • Expose soap service as rest in OSB

    Hi
    I need to expose a soap service (SOA Composite) in OSB as RESTful service; own customers send the documents in POST way. I am new in OSB.
    Thank you for your help.
    Andrés

    The task is not clear. The existing consumers do POST. Where the REST should be placed? Should the consumers switch to REST (GET/POST/PUT, relative URIs)? Or a backend service plans to switch to REST?
    A minor caution note: OSB 12 has a bug with DELETE and OPTIONS(? don't remember the second one) operations when calling a REST backend: Those have empty body, but OSB still sends encoding as "chunked". The backend waits for the first chunk size, and OSB waits for a response from the backend => timeout.
    Vlad.

  • RESTful Service: Expose BLOB file inside DB as RESTful service ??

    Hello,
    With Oracle Cloud we can expose the Data as RESTful Web Service, but how about exposing BLOB... we need to generate a link for that file which is stored in the DB.
    To make it clearer:
    Two Tables:
    Properties (Property_ID number PK, Project varchar2(40), Property_number varchar2(20) ...)
    Images  (ID number PK, Property_ID number FK, content blob,
    mimetype varchar2(200), filename varchar2 (200), filesize varchar2 (200))And I would like to expose this query as RESTful :
    Select p.property_id, p.project, p.property_number, i.content
    from properties p inner join images i on (p.property_id = i.property_id)Usually we use: [url http://docs.oracle.com/cd/E14373_01/apirefs.32/e13369/apex_util.htm#CHDICGDA] apex_util.get_blob_file_src  , but that one should be called from a valid apex session !!!!! ( in that query "i.content" should give a link.)
    How can we do it ???
    Another point, since we expose the data as JSON:
    Suppose I have a property with 10 images, then it does not make sense to get 10 rows fro the same property just to give different image. I think we need another level (nested level) for images !!!
    I hope that my point is clear,
    Thanks in advance ....
    Fateh

    Hi Fateh -
    Good question. You would identify the source type as a Media Resource, and use an SQL statement with the primary key and the BLOB column. When you use Media Resource, you are essentially telling your Database Cloud Service not to marshall the data, just to send it - which is exactly what you are looking for.
    With this implementation, you would have to have a separate SQL call for each BLOB retrieval. However, you might be able to use a PL/SQL block as the end point for the RESTful Service and take care of multiple BLOB processing in the block.
    Hope this helps.
    - Rick Greenwald

  • Expose Orchestration as RESTful service in Biztalk Server 2013

    Hello all,
    I am having BizTalk application (orchestration)where I am receiving few info and sending it back some info to requestor.
    I want to expose this orchestration as RESTful service, to do that I know we can use BiztTalk WCF Publishing wizard and select "WCF Web Http" but what needs to add in other fields ? can some one tell me ?
    or point me to some example...
    Note : I tried this example but no use ......http://seroter.wordpress.com/2012/11/12/exploring-rest-capabilities-of-biztalk-server-2013-part-1-exposing-rest-endpoints/
    Thanks,
    Nilesh Thakur.
    Thanks and Regards, Nilesh Thakur.

    Hi Nilesh,
    I have do it by following way .Links are listed below
    http://code.msdn.microsoft.com/BizTalk-Server-2013-WCF-e3e4a4f9
    http://vikasbhardwaj15.blogspot.co.uk/2014/01/publish-rest-service-from-biztalk-server.html#!/2014/01/publish-rest-service-from-biztalk-server.html
    Thanks
    Abhishek

  • BPEL service(SOAP) expose as RESTFul Service through OSB

    I am trying to invoke simple HelloWorld BPEL process exposed as SOAP Web Service through OSB as RESTFul service but always getting XML parsing exception in response action.
    Could any body give me steps how to implement it?
    Thanks
    Edited by: user10475179 on Dec 4, 2011 9:44 PM

    Thanks for your reply. I was able to manage to get xml, is there a simple way with simple steps to use JSON? If you have any steps/screenshots I would appreciate.
    Thanks
    Edited by: user10475179 on Dec 6, 2011 2:24 PM

  • How to Expose SOA component as Rest Service

    Hi,
    Is there a example to show how to expose SOA component as Rest Service using Http Binding adapter ?
    or
    How to call Rest Service from BPEL/Composite application ?
    Thanks,
    Naveen
    Edited by: 975104 on Dec 21, 2012 1:57 AM

    Please refer Real Web Services with REST and ICF for creation of rest services in sap. The BAPI will have to be called in your handler class.
    I think your best bet would be to transfer the data in the body of the http request and use simple transformation(with multiple roots) to convert the xml data to sap formats. GZIP can also be used to compress the data that is being sent. We have done this successfully in one of our projects.
    However this approach(RESTful Service) would involve more work when compared to the approach suggested by Vikram. If SOAP based services are ok, then you should go ahead with Vikram's approach.

  • Is exposing ADF BC as RESTFul service supported by current JDev?

    According to the presentation at http://download.oracle.com/otn_hosted_doc/jdeveloper/11gdemos/adf-service-integ/adf-service-integ.html, Frank mentioned that Jdev will support RESTFul services for ADF BC in future. Is it available now? If no then is there any tentative version number when it might be available?

    Hi Frank
    Is this why the "ADF Model RESTful WebService Project" option in the New Gallery is greyed out in the 12.1.2c version of JDev.
    Eddie

  • Getting "Origin is not allowed" When Trying to Invoke RESTful Service from Another Domain

    I am having problems trying to invoke my RESTful web service from a different domain. I'm well aware of the normal restrictions of cross-site / cross-domain scripting but in Oracle documentation it says that all origins are allowed by default when creating a RESTful service without using authentication.
    I have created a very simple service and am trying to invoke it using jQuery.Ajax calls from a different domain and I am getting XMLHttpRequest cannot load http://address_to_my_web_service. Origin http://calling_from_address is not allowed by Access-Control-Allow-Origin.
    I understand that using JSONP instead of JSON is actually the best practice around cross-site scripting but it appears as though APEX does not support JSONP because with JSONP, there are URI parameters added to the base request (callback).
    I am stuck and would greatly appreciate any help.
    I'm starting to wonder if this could be a bug because Oracle documentation says all origins should be allowed when using a service that does not require authentication. I also tried to force the origin to be allowed by typing it in and also using the wildcard '*' and it still did not work.
    Thanks,
    Mark Williamson
    EDIT: It is now working after adding a URI prefix to my web service module.

    The SSL handshake works differently to a browser as it is making the connections automatically.
    The browser asks every time if you want to trust an expired certificate, and it also recommends not to. Its impractical to manually check every service call to say do you trust the certificate so the functionality doesn't exist. I doubt any integration product does this. Therefore there isn't a option to ignore the certificate if it has expired.
    This makes sence as the certificate is untrustworthy. The whole idea around SSL is trusting the site you are communicating with, all parties need to be trusted. This stops hackers from replicating their site and intercepting data.
    If the administrator of the remote site is not willing to renew the certificate, are they really interested in SSL. I suggest they expose a non SSL service.
    cheers
    James

  • Want to access RESTful Services through Java Program

    We are trying to access RESTful Services exposed by Oracle database cloud through our Java code, with authentication enabled for a particular user.
    Till now, we have completed below steps:
    1) We have a working account with Oracle database cloud (Username – xxx.xxx)
    2) We log in using the credentials for above account, and navigate to Oracle Apex ? SQL Workshop ? RESTful Services
    3) We create a new “RESTful Service Module” by filling out the details as below:
         Name:                                  SampleTest 
         URI Prefix:                            test
         URI Template:                       /getallemp
         Pagination Size:                    25 (kept to default)
         Required Privilege:                 TestGroupPrivilege
         Resource Handler Details:
                    Method:              GET
                    Source Type:      Query
                    Format:               JSON
                    Source:               select * from emp
    After creating the above module and testing it, it works fine and the data is retrieved in JSON successfully.
    The resulting URL for above RESTful Service Module is: https://<HOST_URL>/apex/test/getallemp
    Note that “TestGroupPrivilege” is a privilege assigned to the user group “RESTful Services” and the user “xxx.xxx” is a member of “RESTful Services” user group.
    4) We are unable to call the RESTful services from Java program. We are passing username and password in request header as basic authentication. But, we are getting: Error 500--Internal Server Error
    5) If we change the “Required Privilege” to default i.e. no privileges present on the module, we can get the response through Java code and everything works perfectly fine.
    Please suggest us in: How to access RESTful Services through Java code by passing user credentials in HTTP header for authentication. Also let us know if we have to do any settings through Apex, in case we are missing any.
    Message was edited by: NeerajGirolkar
    - When we are logging in to Oracle cloud on browser and execute the Oracle cloud RESTful service in another tab of same browser, we are able to get the result. But when executed the same RESTful service from a different browser or java program we get internal server error.
    - After investigation, we found that when user logs in to oracle database cloud, a cookie is set in browser with name s “OAMAuthnCookie_cstest-domo.db.us1.oraclecloudapps.com:443” and value as some random token. This cookie is passed in the subsequent requests to the RESTful Service calls when using same browser and as a result, we are able to get the results
    - In the Java program, we copied the same cookie with random token in the HTTP Request header and we got the proper response from REST APIs.
    - It seems that this cookie is created by an Oracle Middleware tool/server called as OAM – Oracle Accounts Manager, which sends the authentication token after successful authentication and creates the cookie.
    - We found that the cookie that OAM creates on authentication is exactly in the same format i.e. ‘OAMAuthnCookie_cstest-domo.db.us1.oraclecloudapps.com:443’. So, we are guessing that Oracle cloud uses OAM for authentication. Please refer to following link for same : http://docs.oracle.com/cd/E14571_01/doc.1111/e15478/sso.htm
    Can anyone please suggest:
    1.     How to provide authentication to Oracle Cloud REST APIs from java program?
    2.     How to pass the username and password in Java code to OAM (or how to communicate with OAM using Java) so that we can receive the unique token from OAM. We can use the token in the further requests? 3.     Also in Oracle cloud white papers , it is mentioned that they support OAuth2.0. But we didn’t find any URLs for same. Can anyone please confirm?
    Thanks
    ~ Neeraj Girolkar

    Hi Nilesh,
    We tried to connect to Oracle Cloud Database using the way you suggested above, but unfortunately it is not working as well.
    Can you let us know the authentication process with Oracle Cloud Database? We found in documentation that it uses OAM (Oracle Access Manager) for authentication. Can you tell us a bit about that? That will be extremely helpful.
    Thanks,
    - Neeraj

  • BLOB on RESTful service

    Hello,
    With Oracle Cloud we can expose the Data as RESTful Web Service, but how about exposing BLOB... we need to generate a link for that file which is stored in the DB.
    To make it clearer:
    Two Tables:
    Properties (Property_ID number PK, Project varchar2(40), Property_number varchar2(20) ...)
    Images  (ID number PK, Property_ID number FK, content blob,
    mimetype varchar2(200), filename varchar2 (200), filesize varchar2 (200))And I would like to expose this query as RESTful :
    Select p.property_id, p.project, p.property_number, i.content
    from properties p inner join images i on (p.property_id = i.property_id)Usually we use: [url http://docs.oracle.com/cd/E14373_01/apirefs.32/e13369/apex_util.htm#CHDICGDA] apex_util.get_blob_file_src  , but that one should be called from a valid apex session !!!!! ( in that query "i.content" should give a link.)
    How can we do it ???
    Another point, since we expose the data as JSON:
    Suppose I have a property with 10 images, then it does not make sense to get 10 rows fro the same property just to give different image. I think we need another level (nested level) for images !!!
    I hope that my point is clear,
    Thanks in advance ....
    Fateh

    Thanks for your try:
    We would identify the source type as a Media Resource, and use an SQL statement with the primary key and the BLOB column. When we use Media Resource, we are essentially telling APEX Service not to marshall the data
    http://www.oracle.com/technetwork/database/database-cloud/public/restful-wp-1844130.pdf
    Re: RESTful Service: Expose BLOB file inside DB as RESTful service ??

  • RESTful Service Search Parameters

    Hello,
    I am using APEX 4.2.2 .. with Listener 2.0.3
    I want to expose  data in EMP table as RESTful Service with parameters:
    The source is:
    Source Type :SQL query .
    Format: JSON
    select * from emp where
    (:job IS NULL OR job = :job)
    and
    (:ename is null or ename = :ename)
    URI Template:
    employeesfeed/{job}/{ename}
    If I use this URL, it works fine...
    http://oraclesrv/real_estate/property/hr/employeesfeed/MANAGER/BLAKE
    and it gives:
    {"next":{"$ref":"http://oraclesrv/real_estate/property/hr/employeesfeed/MANAGER/BLAKE?page=1"},"items":[{"empno":7698,"ename":"BLAKE","job":"MANAGER","mgr":7839,"hiredate":"1981-04-30T20:00:00Z","sal":2850,"deptno":30}]}
    But, as you may notice from the Source logic, the "end user" should be able to retrieve all MANAGERS using this Link.
    http://oraclesrv/real_estate/property/hr/employeesfeed/MANAGER/null
    But, it gives:
    {"items":[]}
    So, How can I retrieve all Managers ?? ( using that Source ).
    Regards,

    The the four letters (n,u,l and l) at the end of your URL happen to be a string of length 4.
    Basically, you doing this comparison:
    'null' is null (which is false)
    If you want to keep that syntax, add
    or upper(:job) = 'NULL'
    MK

Maybe you are looking for

  • Mavericks Crashing once or twice EVERY hour!! Help

    Hi, I'm really struggling with my mac. It's crashing around every half an hour or so and I have no idea why. Ive taken it into the Apple Shop- no hardware issues, Ive done a complete re-install and transferred settings back on via migration assistant

  • Error while running payroll

    Dear All, While running the payroll,error  like Assignment to feature 40EPF did not take place appears. Current month (i.e. June 2011 PF is not deducting).whereas the PF arrears is deducted for April'11 and May'11. In error screenshot it is showing a

  • Appending All the fields of one internal table to other

    Hi, while running a FM I get three internal tables, my requirement is that I am running this FM at item level if it is possible to append all the tables datas get as a result of this FM to other internal table having same structure. I know it is poss

  • Trying (and failing) to delete photos in iPhoto '09

    I am trying to delete some photos in iPhoto. I have used the option to move the photos to trash (the trash in iPhoto) - then used the option to empty the iPhoto trash. The pictures are successfully removed from the library and the trash box. However,

  • Currency system variable

    hi ABAPers, what is the system variable to know about currency type?