Task 9: Redeploy the Application

9-2 Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF Verifying That You Have the Required SOA Composite Editor Oracle JDeveloper Extension To upgrade your Oracle SOA Suite applications to 11g, you must have the Oracle SOA Composite Editor extension for Oracle JDeveloper 11g. To verify that the extension is installed, select About from the Oracle JDeveloper Help menu, and click the Version tab. You should see an entry in the list of components called SOA Composite Editor. If this component does not appear on the Version tab of the About dialog box, close the About dialog and select Check for Updates from the Help menu. Use the Check for Updates wizard to locate and install the latest version of the SOA Composite Editor extension.

9.2 Upgrade Tasks Associated with All Java Applications

Before you begin upgrading your Oracle SOA Suite applications, be sure to review the Oracle Fusion Middleware Upgrade Guide for Java EE, which contains information about upgrading standard Java EE applications to Oracle WebLogic Server. If your applications contain any custom Java code, you should review the Java code against the procedures and recommendations available in the Oracle Fusion Middleware Upgrade Guide for Java EE.

9.3 Upgrade Tasks Associated with All Oracle SOA Suite Applications

The following information should reviewed when you are upgrading any Oracle SOA Suite application to Oracle Fusion Middleware 11g: ■ Understanding Oracle SOA Suite API Changes for Oracle Fusion Middleware 11g ■ Reviewing Your Projects for Dependent JAR Files ■ Upgrading Applications That Require Proxy Settings for Web Services ■ Recreating build.xml and build.properties Files Not Upgraded by the Migration Wizard ■ Upgrading Projects That Use UDDI-Registered Resources ■ Understanding File Naming Conventions in Oracle SOA Suite 11g ■ Using the Oracle SOA Suite Command-Line Upgrade Tool

9.3.1 Understanding Oracle SOA Suite API Changes for Oracle Fusion Middleware 11g

Table 9–1 describes the APIs you can use in an Oracle SOA Suite application. For each Oracle Application Server 10g API, it provides a summary of the changes for Oracle Fusion Middleware 11g and where you can get more information about upgrading your applications that use the API. Considerations When Upgrading All Oracle SOA Applications 9-3

9.3.1.1 Upgrading to the Oracle Fusion Middleware Java API for Oracle Business Rules

The following sections introduce the Oracle Business Rules 11g SDK and API and provide instructions for upgrading to the Oracle Business Rules API: ■ Overview of the Oracle Business Rules SDK and API Changes for 11g ■ Accessing a Dictionary in the Development Environment ■ Accessing a Repository in a Production Environment ■ Generating RL Code

9.3.1.1.1 Overview of the Oracle Business Rules SDK and API Changes for 11g In Oracle

Fusion Middleware11g, the Oracle Business Rules SDK and API has been significantly improved. In Oracle Application Server 10g, developers were required to manually manage accessing the repository and creating and using RuleSession instances. In Oracle Fusion Middleware 11g, the Decision Point API and decision function features provide an interface and implementation that simplifies the definition and execution of rules. When upgrading to Oracle Business Rules 11g, look first at how you can use these new features, as documented in the Oracle Fusion Middleware Users Guide for Oracle Business Rules. However, if you want to continue to use the Oracle Business Rules SDK in the same way as you did for 11g, then the following sections describe how to directly translate the Oracle Business Rules 10g SDK to the 11g SDK. All of the classes discussed in this section are in the rulesdk2.jar file and under the oracle.rules.sdk2 package. Table 9–1 Summary of Oracle SOA Suite API Changes for Oracle Fusion Middleware 11g 10g API Action for 11g 11g JavaDoc Oracle Application Server Integration B2B Callouts Java API Updated for Oracle Fusion Middleware 11g, but the new 11g version is backward compatible with 10g. Oracle Fusion Middleware B2B Callout Java API Reference Oracle BPEL Process Manager Workflow Services API Updated for Oracle Fusion Middleware 11g, but the new 11g version is backward compatible with 10g. Oracle Fusion Middleware Workflow Services Java API Reference for Oracle BPEL Process Manager Oracle Business Rules Java API See Section 9.3.1.1, Upgrading to the Oracle Fusion Middleware Java API for Oracle Business Rules Oracle Fusion Middleware Java API Reference for Oracle Business Rules Oracle BPEL Process Manager Client Java API See Section 9.3.1.2, Upgrading to the Oracle Fusion Middleware Infrastructure Management Java API for Oracle SOA Suite See Section 9.3.1.2, Upgrading to the Oracle Fusion Middleware Infrastructure Management Java API for Oracle SOA Suite Oracle BPEL Process Manager Sensor API Updated for Oracle Fusion Middleware 11g, but the new 11g version is backward compatible with 10g and part of the new Infrastructure Management Java API. Using Oracle BPEL Process Manager Sensors in the Oracle Fusion Middleware Developers Guide for Oracle SOA Suite 9-4 Oracle Fusion Middleware Upgrade Guide for Oracle SOA Suite, WebCenter, and ADF

9.3.1.1.2 Accessing a Dictionary in the Development Environment In Oracle Business Rules

10g, it was common for an application developer to use a file-based repository while developing the application, and then switch to using a WebDAV repository for production. In Oracle Business Rules 11g, you can instead access the rule dictionary file directly before it is packaged into a format which can be deployed to MDS. In the following examples, compare the code required to access a dictionary in development mode in 10g Example 9–1 with the code required in 11g Example 9–2 . Note that in general, you should use the Decision Point API rather than continuing to access the RuleRepository directly. Example 9–1 Accessing a Dictionary with Oracle Business Rules 10g in a Development Environment String path; the path to the file repository Locale locale; the desired Locale The following code assumes that the path and locale have been set appropriately RepositoryType rt = RepositoryManager.getRegisteredRepositoryTypeoracle.rules.sdk.store.jar; RuleRepository repos = RepositoryManager.createRuleRepositoryInstancert; RepositoryContext rc = new RepositoryContext; rc.setLocalelocale; rc.setPropertyoracle.rules.sdk.store.jar.path, path; repos.initrc; Example 9–2 Accessing a Dictionary with Oracle Business Rules 11g in a Development Environment protected static final String DICT_LOCATION =C:\\scratch\\CarRental.rules; ... RuleDictionary dict = null; Reader reader = null; try { reader = new FileReadernew FileDICT_LOCATION; dict = RuleDictionary.readDictionaryreader, new DecisionPointDictionaryFindernull; ListSDKWarning warnings = new ArrayListSDKWarning; dict.updatewarnings; if warnings.size 0 { System.err.printlnValidation warnings: + warnings; } } catch SDKException e{ System.err.printlne; } catch FileNotFoundException e{ System.err.printlne; } catch IOException e{ System.err.printlne; } finally { if reader = null { try { reader.close; } catch IOException ioe {ioe.printStackTrace;} } }

9.3.1.1.3 Accessing a Repository in a Production Environment In Oracle Business Rules 10g,

WebDAV was the recommended production repository.