Oracle® Fusion Middleware Publishing Reports to the Web with Oracle Reports Services 11g Release 1 (11.1.1) Part Number B32121-01 |
|
|
View PDF |
Oracle Reports exposes web service named RWWebService
. For more information about this web service, see Chapter 18, "Using the Oracle Reports Web Service". Oracle Reports web services, which are synchronous in nature, can be used in a BPEL process as a Partner link.
To invoke an Oracle Reports web service asynchronously in a BPEL process, do the following:
Create an intermediate asynchronous BPEL process that uses the synchronous Oracle Reports web service and provides an interface to the caller for making a callback.
Deploy this intermediate asynchronous BPEL process as a service in the SOA suite, which can be used as a Partner link.
You can access the WSDL of the Oracle Reports web service at the following location:
http://yourwebserver:port/reports/rwwebservice?
WSDL contains information about the different ways of invoking RWWebservice
. You can access the XSD file at the following location: http://yourwebserver:port/reports/rwwebservice?xsd=1
You can save the XSD file on your local machine and use it when creating a BPEL process.
To submit jobs to the Oracle Reports server using RWWebService,do the following:
Install Oracle JDeveloper. For more information, see Oracle Fusion Middleware Installation Guide for Oracle JDeveloper.
Install OracleAS SOA.
Start the SOA suite.
Create a connection from Oracle JDeveloper to the SOA suite.
Create a new application.
Create a new asynchronous BPEL process project and use the RWWebservice.xsd
file to define the input and output parameters of the BPEL process.
Create a Partner link that refers to the RWWebService
WSDL:
When prompted by Oracle JDeveloper, click Yes to create Partner link types.
Select Partner Role.
Create a scope in your process.
Within the scope, create an Invoke activity and use it to invoke the runJob operation on the RWWebService
Partner link.
Create input and output variables automatically. The input parameter provides input to the runJob
operation of RWWebService, and the output parameter contains the output of the runJob operation.
Within the scope, before the Invoke activity, create an Assign activity:
In this Assign activity, map the user input parameters to the parameters that RWWebService
requires.
Set Param0 = reports job command (string).
Set Param1 = true
(boolean, specifying that the job submission must be synchronous).
Within the scope, after the Invoke activity, create an Assign activity. In this Assign activity, map the output variable of the Invoke activity to the result variable that is written back to the client.
Compile and deploy the BPEL process on the SOA suite.
Use the Oracle BPEL Process Manager console to run the BPEL process.
You can use this BPEL process in another BPEL process and submit jobs to the reports server asynchronously from a BPEL process.
Important:
For completing steps from 2 to 11 mentioned in Section 7.10.1, see the following documents:To submit jobs to the Oracle Reports server from a BPEL process asynchronously, do the following:
Create a new asynchronous BPEL process project and use the RWWebservice.xsd
file to define the input and output parameters of the BPEL process.
Create a Partner link that refers to the WSDL of the newly created BPEL process:
When prompted by Oracle JDeveloper, click Yes
to create Partner link types.
Select Partner Role.
Create a scope in your process.
Within the scope, create an Invoke activity and use it to invoke the runJob operation on the intermediate process Partner link.
Create input variables automatically. The input parameter provides input to the runJob operation of the intermediate BPEL process.
Create a Receive activity to receive the callback from the intermediate process.
Within the scope, before the Invoke activity, create an Assign activity:
In this Assign activity, map the user input parameters to the parameters that the intermediate BPEL process requires.
Set Param0 = reports job command (string).
Set Param1 = true
(boolean, specifying that the job submission must be synchronous).
Within the scope, after the Invoke activity, create a Receive activity.
Create input variables automatically. The input parameter receives a response from the runJobresponse operation of the intermediate BPEL process.
Within the scope, after the Invoke activity, create an Assign activity. In this Assign activity, map the input variable of the Receive activity to the result variable that is written back to the client.
Compile and deploy the BPEL process on the SOA suite.
Use the Oracle BPEL Process Manager console to run the BPEL process.