Exposing business rules as web services in 11g

Hi all,
I have deployed my business rules in Enterprise Manager, but the test button is disabled and I'm getting the next message: "In Enterprise Manager only can be tested composites that are exposed as web services". Does anybody knows how can I do that?

There are a couple of ways you can do it.
1. Drag a Web Service Adapter in the 'Exposed Services' panel in your composite and during configuration choose the WSDL of the Decision service i.e Rules. This will expose the rules as a web service if not already.
2. Double Click on the Reference icon on the Decision Service component (small rounded blue arrow). An Update Interface window will pop up. Check box 'Create Composite Service with soap binding' and select the appropriate port type from the available list.
You can now invoke your rule as web services and even test them from the EM console

Similar Messages

  • Expose Business rules as Web Service

    Hi,
    I'm quite new to business rules, and I haven't found any definite information about can I and how expose business rules application as Web Service? In Decision Functions I can check "Will be invoked as webservice", but how can I deploy it on server and so on?
    Thanks in advance.

    Hi PK,
    Sorry What i meant was composite service, not web service
    Used wrong wording
    In your composite if you have only businessrules as a component and if you are exposing your BR as service, and if u deploy that process it will give you a wsdl for that composite, which means for BR. Because the client is calling BR it self.
    Regards
    PavanKumar.M

  • Expose Business Rules as composite service

    I´m trying to invoke a business rules as web service, i create a composite aplication and add a busniess rule that is exposed as WS.
    For my rule a need only one input data "testData" but when i test my service from the Enterprise Manager is data is needed:
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
         <soap:Body xmlns:ns1="http://xmlns.oracle.com/OracleRules1/OracleRules1_OracleRules1_DecisionService_1">
              <ns1:callFunctionStateful name="">
                   <ns1:configURL></ns1:configURL>
                   <ns1:bpelInstance xmlns:ns2="http://xmlns.oracle.com/bpel">
                        <ns2:processId></ns2:processId>
                        <ns2:processVersion></ns2:processVersion>
                        <ns2:domainId></ns2:domainId>
                        <ns2:processURL></ns2:processURL>
                        <ns2:instanceId></ns2:instanceId>
                        <ns2:conversationId></ns2:conversationId>
    </ns1:bpelInstance>
                   <ns1:parameterList xmlns:ns3="www.xxx.com/crm/services/rules">
                        <ns3:Input>
                             <ns3:testData></ns3:testData>
    </ns3:Input>
    </ns1:parameterList>
    </ns1:callFunctionStateful>
    </soap:Body>
    </soap:Envelope>
    Do you know what are the other´s needed data?
    Thanks!

    I am able to test the business service i exposed as webservice without using BPEL .
    i sent some dummy values to the processId, processVersion , etc.
    Only required value is payload     @ * name NCName once i provided the correct value to it i received the correct response by executing the business rules.
    Thanks
    Phani

  • Expose Business Rules as composite service - ORAMED-03303 on call

    Hi folks,
    I'm on 11g PS2 and Jdeveloper 11.1.1.3.0 with Oracle SOA Composite Editor 11.1.1.3.0.25.57
    The problem: I get ORAMED exception when I call the business rule through its automagically created web service endpoint
    Among the many things which I've tried and didn't work:
    - create my own web service end point for the business process
    - turn on WS Addr for the web service end point
    The payload and returned fault are as follows:
    <messages>
    <input>
    <Invoke_ruleBlacklist_callFunctionStateless_InputVariable>
    <part name="payload">
    <ns0:callFunctionStateless name="processRequest">
    <bpelInstance>
    <processId>processRequest</processId>
    <processVersion>1.0</processVersion>
    <domainId/>
    <processURL>http://localhost:8001/soa-infra/services/default/TestInitiateProcess!1.0*soa_e2ef0cb6-2dbe-4047-96e3-7a8edff9fc16</processURL>
    <instanceId>70002</instanceId>
    </bpelInstance>
    <parameterList>
    <BlacklistRuleInput>
    <party>
    <partyId>string</partyId>
    <partyOrganisation>string</partyOrganisation>
    <partyName>string</partyName>
    </party>
    </BlacklistRuleInput>
    </parameterList>
    </ns0:callFunctionStateless>
    </part>
    </Invoke_ruleBlacklist_callFunctionStateless_InputVariable>
    </input>
    <fault>
    <bpelFault>
    <faultType>0</faultType>
    <operationErroredFault>
    <part name="payload">
    <errorInfo>
    <errorMessage>TestBusinessRules</errorMessage>
    </errorInfo>
    </part>
    </operationErroredFault>
    </bpelFault>
    </fault>
    <faultType>
    <message>0</message>
    </faultType>
    </messages>
    __Steps to reproduce:__
    Create a new project, add simple business rule, tick 'expose as composite service'. A Web service endpoint is automagically created
    To another project:
    - add a web service reference to the business rule ws endpoint
    - add an Assign and Invoke activity within BPEL towards the business rule
    Thanks in advance for reading and appreciate your guidance please

    Hi there jeem,
    I'm having a world of trouble with that same Rules composite example, the OrderApproval one. I've deployed it, and can invoke it, and yet get the following error each time I invoke it:
    HTTP/1.1 500 Internal Server Error
    Content-Type: text/xml; charset=UTF-8
    X-Powered-By: Servlet/2.5 JSP/2.1
    SOAPAction: ""
    Content-Length: 546
    Date: Tue, 31 Aug 2010 03:36:22 GMT
    X-ORACLE-DMS-ECID: 0000If6Dsbg0FwI5yrDCiW1CV7Dc0000A1
    X-HTTPAnalyzer-RuleName: Pass through :
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <env:Fault xmlns:fpre="http://xmlns.oracle.com/OracleRules1/OracleRules1_DecisionService_1">
    <faultcode>fpre:operationErroredFault</faultcode>
    <faultstring/>
    <faultactor/>
    <detail>
    <errorInfo xmlns="http://xmlns.oracle.com/OracleRules1/OracleRules1_DecisionService_1">
    <errorMessage>default/OrderApproval!1.6*soa_5acae7d5-9fcf-4620-a9aa-8fb621faaf0d/OracleRules1</errorMessage>
    </errorInfo>
    </detail>
    </env:Fault>
    </env:Body>
    </env:Envelope>
    I've tried specifying the name attribute (I'm using "OracleRules1_DecisionService_1" for this) against the callFunctionStateless element, but am still getting this error!
    Can you yourself, jeer, or anyone else please help with this? I've turned on low level logging for the soa server, but the errors it's throwing really don't enlighten me very much at all!
    Any help will be very much appreciated.
    Regards,
    Rhian

  • Exposing Business Object as Web Service

    Hi,
    I've designed a Business Object and would like to expose its findAll Operation as a web service. The wizard tells that the operation has “Improper operation message cardinality". While browsing through saphelp I found this: http://help.sap.com/saphelp_nwce10/helpdata/en/44/24128b347c1c9fe10000000a11466f/content.htm
    That’s nice to know but doesn't solve my problem. How do I create a web service that returns ALL objects?
    Thanks in advance for your help.
    Bastian
    edit:
    this on solved it:
    CE/CAF: Expose service as Webservice

    Hi,
    you need to create wrapper method of findAll,
    The reason you are not able to expose it as service because findAll resturning array of values instead of one response (or candinality of return is 0..n). So create one wrapper complex type add your BO as datatype of that complex type with multiple cardinality,
    In new method add this complex type as response (with cardinality 0..1) and within code call standard findAll and mapp return value to complext type.
    It will work.
    Regards,
    Gourav

  • Exposing Oracle Business Rule As Composite Service

    Hi Gurus,
    I have created a simple business rule and exposed it as composite service(without using any BPEL process) and deployed it into server successfully.Now i want to call that Business rule as webservice in my BPEL process, but i am facing some issues like, have to provide values of some fields like NCName,some attributes under bpelInstaces.
    When i checked the Business Rule project in EMconsole,faced the same scenario.
    Question: is it mandatory to use BPEL process at the time of exposing Business Rule?
    Any suggestion is helpful to me..
    Thanks in advance
    Sharmistha

    Hi Sai,
    Thanks for the rply.
    Yes, The "Will be Invoked as A Web Service" property is "Checked" for Business Rule Decision Function and the service name is also available.
    when i am trying to get the wsdl of the web service it shows "Error 404-Not Found". (http://<host>:<soa port>/<service name>?wsdl)
    *[e.g http://<host>:<soa port>/OracleRules_WSTest_DecisionService_1?wsdl]*
    But the ruleset is available in the SOA Composer.
    Still facing the same problem, can't invoke the Business Rule in my composite as Web-service.
    Sharmistha

  • Exposing a process as web service on Oracle BPM 11g

    Hi!
    Does somebody know how can I expose a process as a web service on Oracle BPM 11g? How does it works?
    In the version 10.3, when we exposed a process as web service it always had 3 default methods: startSession, getInstanceStatus and discardSession, is it the same in the 11g version?
    Where can I found some info about it? Any tutorial?
    Thanks a lot!
    Ana

    Typically you would use a Message Start event to start the process in conjunction with a Message End event. This will allow your process to be called as an asynchronous web service.
    In the "Implementation" section for the start event, you specify the input parameters. You can specify "Define Interface" to directly define the interface, or use an existing interface from the BPM Catalog (the From Catalog option).
    For further details on the different event types and their use cases, refer to the modeling and implementation guide:
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15176/toc.htm
    You can test the web service and examine the WSDL and endpoints by using FMW control (Enterprise Manager). In the menu on the left hand side: expand SOA -> SOA-Infra -> <Partition Name> -> Composite Name, then click the "Test" button at the top.

  • Expose ADF Business Components as Web Service

    Hi,
    In order to expose ADF BC as Web Services, and return a set a rows from a table, I have followed the tutorial on this page :
    http://www.oracle.com/technology/tech/webservices/htdocs/series/pattern/
    However, the set of rows returned are un-typed XML elements, because the method is :
    public Element getEmp(int empNo)
    getEmpView1().setWhereClause("empno = ?");
    getEmpView1().setWhereClauseParam(0, new Number(empNo));
    return (Element)getEmpView1().writeXML(1,Row.XML_OPT_ALL_ROWS);
    As a consequence, in the WSDL the response port is returning a complex type with an "<any />" element. Instead, I would like the response complex type to be an Employee type.
    How can I get the AppModule method to be something like :
    public Employee getEmp(int empNo)
    < what is here ? >
    Can I generate the Employee class automatically with ADF BC and serialize it to expose the method as a Web Service ?
    Thanks.

    up

  • Benefits of exposing function module as web services

    Hi All,
    We are developing a case study about exposing function modules as web services.
    Those web services would be later used for integration to SAP box with a Java application.
    Kindly help me with the pros and cons of exposing function modules as web services when compared to SAP PI. Also please do quote some examples, wherever possible.
    Thanks,
    Varun

    Hi Varun,
    Pros--->
    1)Exposing FM as Web Services is indeed a good choice when you want service consumer to be platform and language independent.
    i.e it can be consumed by .Net, java or any other language.
    2) You are moving towards SOA
    3) Composing Business Process by concatenating different functional modules is easy.
    4) Complexity is less while consuming services Java, CAF etc.
    Cons----> Performance for Web Services is comparatively less than JCo .
    If you are bringing PI in between landscape, you are increasing one more layer of middleware which would also hit performance.
    The benefit which PI can give is monitoring your company wide integrations at one central point when you have huge systems.
    Hope this helps.
    Piyush

  • Exposing RFC as a Web Service

    Hello All,
    I am working on a SOAP to SOAP (Backend as ECC where I am exposing an RFC as Web Service). Once the Web service is generated for RFC and the WSDL is imported in PI, I can see that all the fields in different nodes become mandatory.
    Is it how normally Web Service for BAPI works or can this behaviour (mandatory / optional) be controlled ?
    Also when I execute the end to end scenario via SOAP UI, I don't get any error back but also neither get the Return table nor the Sales Order NO. I am using the BAPI BAPI_SALESORDER_CREATEFROMDAT2.
    Can it be because of no COMMIT (The BAPI uses external commit although this reason seems less likely as executing a RFC wo any commit atleast gives me a Sales Order no) ?
    How can this call be analysed in backend ECC system ? (As I assume that messages will not be visible in SXMB_MONI as explained by the Harald's thread below. I am currently in process of getting authorization of SOAMANAGER logs but wondering how it'll help?
    Thanking you in advance.
    SOAP to SOAP scenario: XML messages not visible in SXMB_MONI
    Cheers
    KanesI

    Hi,
    Please see the SOAP ststud..
    http://<host>:5<sys#>00/mdt/amtServlet
    also you might check any error logs.
    The error is because of invalid xml document. So check the validity of the xml message ie. after first mapping i.e Req mapping.
    For this you can refer this -
    http://help.sap.com/saphelp_nw2004s/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    See the below links
    Also this blog may help you-/people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
    Could not post a SOAP request  to the interface
    Message Servlet is in Status ERROR
    Error while posting messages to SOAP sender adapter SP 13
    http://localhost:50000/XISOAPAdapter/HelperServlet?action=FindChannel&channel=PartyA:SOAPService:soapchannel
    SOAP Adapter in PCK
    Regards
    Chilla..

  • Exposing Inbound Interfaces as Web Service

    Hi,
    when it comes to expose XI interfaces as web services, the XI documentation quotes:
    "Sie können sowohl von Outbound- als auch von Inbound-Message-Interfaces WSDL-Beschreibungen erzeugen."
    -> i.e. Inbound interfaces can be exposed as web services.
    But the web service definition wizard expects the quotation of an outbound interface. So am I right when I say that I always need an outbound interface? If yes, why is it possible to expose inbound interfaces???
    Cheers,
    Heiko

    Hi,
    no, inbound interfaces can only call web services
    that are exposed on some other web servers
    only outobund XI interfaces can be exposed as web services
    (in this case XI acts as a web server)
    and other applicaitons can call this outbound interface
    Regards,
    michal

  • Binding RESTful web service / being exposed to a RESTful web service

    Hi , I have two quick questions
    1. can ORACLE BPEL bind a RESTful web service?
    2. can a BPEL process be exposed to a RESTful web service?
    Thanks

    Bumping back to the top of the list.
    Has anyone got any experience with RESTful web services saving to an item vs. a collection? Any pointers are greatly appreciated.
    Earl

  • SPML Web Service in 11g (XSD): fail to get the psoID

    Hello.
    Has anybody successfully used the default XSD version of the SPML web service in 11g? I was able to successfully invoke the Add User operation but I'm not seeing the psoID (this is the unique ID generated by OIM for the user) for the newly added user... The Oracle docs for 11g do not show how that is returned... I would think that in would be in the response but I do not see it there... Someone suggested using Search User to get the psoID but I do not see a Search operation in the WSDL for 11g...
    I'm starting to think that the XSD version of the SPML in 11g is maybe incomplete? When I get chance, I may deploy the DSML version of the web service, and then run the Sample HTTP Client to see if that works better. I understand that this DSML version is what was used in 10g, and may be more robust.
    Thoughts anybody?

    Sunny,
    As you have pointed out, API will work.
    But regarding your statement:
    "Use SPML10g along with SPML11g (this is the cleanest OOTB solution wherein you can use the older set of SPML methods to fetch the userKey and then use newer SPML methods to perform asynchronous operations). I did the same"
    SPML samples that came with 10g did not work with OIM 11g for me. Because from what I know, SPML in 10g made use of DSML profile and that is not supported in 11g.
    http://docs.oracle.com/cd/E14571_01/doc.1111/e14309/spmlapi.htm#CHDCBJAI
    "SPML has two profiles: the XSD profile and the DSML profile. This release of Oracle Identity Manager makes use of the XSD profile."
    Did you tweak something to get it working?
    Thanks.

  • Exposing backend data as Web Service

    I have an RFC which takes in employee name as input and supervisor name as output.
    I want to expose this functionality as Web Service using NWDS. What should I do? Any good tutorial?

    Hi,
    Check this weblog, which mentions how to convert RFCs as Webservices
    Using RFC as WebService in WebDynpro
    Regards,
    Ganesh N

  • Cannot find the WSDL as I expose a process to web service

    Hi,
    I have a simple process, and I try to expose it to a web service by using "Process Web Service", and I start the studio web server and test it with "http://localhost:8598/Lesson19-4WebService/webservices/ProcessService?WSDL" but no WSDL appear. Could you help me? Thanks in advance.
    Best Regards,
    Bill

    Please find the following forum.
    Process exposed as a web service does not work when deployed
    This should resolve the issue.
    Hope this helps.
    Sarat

Maybe you are looking for