Managing SOAP Service Life Cycle Activities Using An Ant Script

An Ant script $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml is used to execute the design-time activities for SOAP services such as generate, regenerate, deploy, undeploy, activate, retire, and reset services as well as to upgrade or postclone services from command line.

Please note that $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml is a multipurpose script. It can also be used to run the diagnostic tests or download the configuration file from the instance. The configuration file is the present state of instance in the view of Oracle E-Business Suite Integrated SOA Gateway context. The same configuration file is sometimes referred as service descriptor file.

Note: When services are generated from command line, the settings selected from the Integration Repository user interface will take effect while generating the service artifacts. For example, if 'Asynchronous' interaction pattern is selected for a method contained in a PL/SQL interface, no matter if the service is generated from the UI or command line, only that selected single method has the associated artifact generated for asynchronous operation.

Usage of $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml:

ant -f $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml usage

Note: Script creates log file at the script location; hence, it is suggested to copy isgDesigner.xml to some <TEMP_DIRECTORY> and then use the script present in <TEMP_DIRECTORY>.

Usage Related to Design Activities

You can use the isgDesigner.xml script in either one of the following ways:

Argument Description

Valid arguments for isgDesigner.xml are described as follows:

Usage Examples

Using the Script with An Input Descriptor File for SOAP Services

This section describes how to use a descriptor file with the required argument values to manage the design-time activities.

Example 1 - Generating and Deploying a PL/SQL Service with All Functions and Generating a SOAP Service for a Concurrent Program

The following descriptor file for a PL/SQL API FND_USER_PKG provides required argument values highlighted in bold text, such as <SOAP_ACTIONS>, <POLICY>, and <ALL_FUNCTIONS/>, indicating that this is to generate SOAP service operations for all the functions contained in the API with synchronous pattern, and then deploy them with SAML Token authentication type.

<INTERFACE>
	<NAME>FND_USER_PKG</NAME>
	<TYPE>PLSQL</TYPE>
	<REST_ACTIONS>
	...
	</REST_ACTIONS>
	<SOAP_ACTIONS>
		<RESET/>
		<GENERATE>
		<!-- GENERATES ALL FUNCTIONS WITH DEFAULT ITERACTION PATTERN "SYNC" FOR PLSQL-->
			<ALL_FUNCTIONS/>
		</GENERATE>
		<!-- DEPLOYS WITH GIVEN POLICY "SAML" -->
		<DEPLOY>
		<POLICY>SAML</POLICY>
		</DEPLOY>
		<RETIRE/>
		<ACTIVATE/>
	</SOAP_ACTIONS>
</INTERFACE>

The following descriptor file is used for a concurrent program called INTERFACE5 to generate a SOAP service. Two functions, FUNCTION1 and FUNCTION2, contained in this interface are generated with the default synchronous pattern.

<INTERFACE>
	<NAME>INTERFACE5</NAME>
	<TYPE>CONCURRENTPROGRAM</TYPE> 
	<REST_ACTIONS>
	...
	</REST_ACTIONS>
   <SOAP_ACTIONS>
		<RESET/>
 		<GENERATE>
			<FUNCTIONS_LIST>	
				<FUNCTION>FUNCTION1</FUNCTION>
				<FUNCTION>FUNCTION2</FUNCTION>
			</FUNCTIONS_LIST>
		</GENERATE>
		<DEPLOY/>
		<RETIRE/>
		<ACTIVATE/>
	</SOAP_ACTIONS>
</INTERFACE>

PL/SQL APIs and concurrent programs can be exposed as both SOAP and REST services; therefore, the same descriptor file can include required argument values for REST service design-time activities as well. See: Using the Script with an Input Descriptor File for REST Services.

Example 2 - Generating SOAP Service Operations with Synchronous, Asynchronous, and Both Patterns

In this example, a PL/SQL interface called INTERFACE1 contains six functions or operations. The descriptor file indicates the required task is just to generate SOAP services operations with various interaction patterns.

Specifically, FUNCTION1 and FUNCTION2 contained in the interface are generated with both synchronous and asynchronous patterns (<FUNCTIONS_LIST pattern="BOTH">), FUNCTION3 and FUNCTION4 are generated with asynchronous pattern (<FUNCTIONS_LIST pattern="ASYNC">), and FUNCTION5 and FUNCTION6 are generated with synchronous pattern (<FUNCTIONS_LIST pattern="SYNC">).

<INTERFACE>
	<NAME>INTERFACE1</NAME>
	<TYPE>PLSQL</TYPE>
	<REST_ACTIONS>
   ...
	</REST_ACTIONS>   
	<SOAP_ACTIONS>
		<RESET/>
 		<GENERATE>
			<!-- GENERATES GIVEN FUNCTIONS WITH ITERACTION PATTERN "BOTH" FOR PLSQL-->
		<FUNCTIONS_LIST pattern="BOTH">	
				<FUNCTION>FUNCTION1</FUNCTION>
				<FUNCTION>FUNCTION2</FUNCTION>
			</FUNCTIONS_LIST>
			<!-- GENERATES GIVEN FUNCTIONS WITH ITERACTION PATTERN "ASYNC" FOR PLSQL-->
		<FUNCTIONS_LIST pattern="ASYNC">	
				<FUNCTION>FUNCTION3</FUNCTION>
				<FUNCTION>FUNCTION4</FUNCTION>
			</FUNCTIONS_LIST>
			<!-- GENERATES GIVEN FUNCTIONS WITH ITERACTION PATTERN "SYNC" FOR PLSQL-->
		<FUNCTIONS_LIST pattern="SYNC">	
				<FUNCTION>FUNCTION5</FUNCTION>
				<FUNCTION>FUNCTION6</FUNCTION>
		</GENERATE>
		<DEPLOY/>
		<RETIRE/>
		<ACTIVATE/>
	</SOAP_ACTIONS>
</INTERFACE>

Example 3 - Generating a SOAP Service for Business Service Object Interface Type

A similar descriptor file can be used to generate a SOAP service for the business service object (BSO) interface type called INTERFACE6 when the <TYPE>SERVICEBEAN</TYPE> is used, shown as follows:

<INTERFACE>
	<NAME>INTERFACE6</NAME>
	<TYPE>SERVICEBEAN</TYPE> 
   <SOAP_ACTIONS>
		<RESET/>
 		<GENERATE>
			<FUNCTIONS_LIST>	
				<FUNCTION>FUNCTION1</FUNCTION>
				<FUNCTION>FUNCTION2</FUNCTION>
			</FUNCTIONS_LIST>
		</GENERATE>
		<DEPLOY/>
		<RETIRE/>
		<ACTIVATE/>
	</SOAP_ACTIONS>
</INTERFACE>

Example 4 - Generating a SOAP Service for XML Gateway Interface Type

The following example shows a descriptor file that is used to generate a SOAP service for the XML Gateway interface called INTERFACE7. In this example, all the functions contained in this interface are generated with SOAP service operations with the default synchronous pattern.

<INTERFACE>
	<NAME>INTERFACE7</NAME>
	<TYPE>XMLGATEWAY</TYPE> 
   <SOAP_ACTIONS>
		<RESET/>
 		<GENERATE>
			<ALL_FUNCTIONS/>
		</GENERATE>
		<DEPLOY/>
		<RETIRE/>
		<ACTIVATE/>
	</SOAP_ACTIONS>
</INTERFACE>

Other Usages

In addition to performing design time activities, this $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml script can be used for the following purposes:

Deploying Generic XML Gateway Services

To deploy a generic XML Gateway service for the current environment, invoke this script with target deployGenericXMLG

ant -f $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml deployGenericXMLG

For more information on deploying generic XML Gateway services, see Installing Oracle E-Business Suite Integrated SOA Gateway, Release 12.2, My Oracle Support Knowledge Document 1311068.1 for details.

Obtaining Argument irepNames Usage Information

To know how to pass argument irepNames, invoke this script with target irepNamehelp

ant -f $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml irepNamehelp

This prints the following information on console window:

Each interface name for the irepNames argument should be given in one of the following way:

Usage Example: FND_USER_PKG [{TESTUSERNAME:SYNC}{CHANGE_USER_NAME:ASYNC}],FND_GLOBAL

Note: Patterns supported here are described in the following:

interface_name[{function1:pattern1}{function2:pattern2}]

interface_name

All functions of the interface interface_name will be generated with old pattern. If the interface is a new API or has been reset, then all the functions will be generated with SYNC interaction pattern.

Running Diagnostic Tests

Oracle E-Business Suite Integrated SOA Gateway provides a suite of diagnostic tests to help determine specific causes or issues with installation steps. When a test suite is run, multiple tests would be executed on both Oracle E-Business Suite and Oracle SOA Suite environments for diagnosing issues on various categories.

To know how to run different diagnostic tests, invoke this script with diagnosticshelp

ant -f $JAVA_TOP/oracle/apps/fnd/isg/ant/isgDesigner.xml diagnosticshelp

Additionally, you can run different diagnostics through the backend script with different targets. For more information on how to run these diagnostic tests, see Oracle E-Business Suite Integrated SOA Gateway Diagnostic Tests.