Calling XAI Inbound Services from Oracle BI Publisher
- by ACShorten
Note: This technique requires Oracle BI Publisher 1.1.3.4.1 which supports Service Complex Types. Web Services require credentials for authentication.
Note: The deafults for the product installation are used in this article. If your site uses alternative values then substitute those alternatives where applicable.
Note: Examples shown in this article are examples for illustrative purposes only.
When building a report in Oracle BI Publisher it may be necessary to call an XAI Inbound Service to get information via the object rather than directly calling the database tables for various reasons:
The CLOB fields used in the Object are accessible for a report.
Note: CLOB fields cannot be used as criteria in the current release.
Objects can take advantage of algorithms to format or calculate additional data that is not stored in the database directly. For example, Information format strings can automatically generated by the object which gives consistent information between a report and the online screens.
To use this facility the following process must be performed:
Ensure that the product group, cisusers by default, is enabled for the SPLServiceBean in the console. This allows BI Publisher access to call Web Services directly. To ensure this follow the instructions below:
Logon to the Oracle WebLogic server console using an appropriate administrator account. By default the user system or weblogic is provided for this purpose.
Navigate to the Security Realms section and select your configured realm. This is set to myrealm by default.
In the Roles and Policies section, expand the SPLService section of the Deployments option to reveal the SPLServiceBean roles.
If there is no role associated with the SPLServiceBean, create a new EJB role and specify the cisusers role, by default. For example:
Add a Role Condition to the role just created, with a Predicate List of Group and specify cisusers as the Group Argument Name. For example:
Save all your changes.
The XAI Inbound Services to be used by BI Publisher must be defined prior to using the interface. Refer to the XAI Best Practices (Doc Id: 942074.1) from My Oracle Support or via the online help for more information about this process.
Inside BI Publisher create your report, according to the BI Publisher documentation. When specifying the dataset, under the Data Model Report option, specify the following to use an XAI Inbound Service as a data source:
Parameter
Comment
Type
Web Service
Complex Type
true
Username
Any valid user name within the product. This user MUST have security access to the objects referenced in the XAI Inbound Service
Password
Authentication password for Username
Timeout
Timeout, in seconds, set for the Web Service call. For example 60 seconds.
WSDL URL
Use the WSDL URL on the XAI Inbound Service definition as your WSDL URL. It will be in the following format by default:http://<host>:<port>/<server>/XAIApp/xaiserver/<service>?WSDLwhere:
<host> - Host Name of Web Application Server
<port> - Port allocated to Web Application Server for product access
<server> - Server context for server
<service> - XAI Inbound Service Name
Note: For customers using secure transmission should substitute https instead of http and use the HTTPS port allocated to the product at installation time.
Web Service
Select the name of the service that shows in the drop-down menu. If no service name shows up, it means that Publisher could not establish a connection with the server or WSDL name provided in the above URL in order to get the service name. See BI Publisher server log for more information.
Method
Select the name of the Method that shows in the drop-down menu. A method name should show in the Method drop-down menu once the Web Service name is selected.
For example:
Additionally, filters can be used from the Web Service that can be generated, required or optional, from the WSDL in the Parameter List. For example: