- oracle · application (war) files, which in turn includes the web application code (jar), and...

Post on 19-Jul-2020

5 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

<Insert Picture Here>

Deep Dive: Oracle E-Business Suite Release 12 New Technology StackIvo DujmovicDirector, Applications Technology Integration

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remain at the sole discretion of Oracle.

Audience and Goal

• Administrators of Applications R12 are the target audience of this presentation

• Attendees should exit this presentation with an understanding of the R12 technology:• What – New Technology• Why – New Feature Benefits• How – Easy Upgrade

• We want your feedback -- post to our team’s blog hosted by Steven Chan http://blogs.oracle.com/schan

<Insert Picture Here>

Agenda

• Introduction• New Technology Review• New Features• Upgrading Your Applications• Summary

<Insert Picture Here>

Introduction

R12 Technology Enables You to Deliver Best ROI

• Uptaking new technology lowers costs• Proven technologies deliver better experience • Latest standards provide better integration• Less training with familiar and improved Apps

• New features empower administrators and users• OC4J • Instance Home• Identity Management, Portlets, Certificate Management

• Upgrading is easy• Maintain your investment • Productive new development tools• Transform configurations

<Insert Picture Here>

New Technology Review

Overview of Technology Stack Changes from EBS 11i to 12

• New Versions of Mid Tier Technology• Application Server: 1.0 -> 10.1• Servlet Container: JServ -> OC4J• Apache: 1.3.19 -> 1.3.34• Forms & Reports: 6 -> 10

• R12 File System Change:• The two 11i middle tier Oracle homes are replaced with

newer versions• Instance Home vs. Source Home

11i Installed & Managed File System

COMMON TOP

APPL TOP

JServ

Apache 1.3

RSF 8.1.7

iAS 1.0.2.2ORACLE HOME

Reports 6

Forms 6

RSF 8.0.6

Developer6iORACLE HOME

RDBMSComponents

RSF 10.2

DatabaseORACLE HOME

Major Components:

•Java Home: 8.1.7-based iAS 1.0.2

•C Home: 8.0.6-based Developer 6

•Database Home: 10.2

•Appl Top: Applications’code staging area

•Common Top: Runtime location for Java, HTML, run-time generated files

R12 Installed & Managed File System

COMMON TOP

APPL TOP

Apache 1.3

OC4J

RSF 10.1

iAS 10.1.3ORACLE HOME

Reports 10

Forms 10

RSF 10.1

Developer10.1.2ORACLE HOME

RDBMSComponents

RSF 10.2

DatabaseORACLE HOME

Major Components:

•Java Home: 10.1-based iAS 10.1.3 –new

•C Home: 10.1-based Developer 10 standalone install of AS 10.1.2 phase2 –new

•Database Home: 10.2

•Appl Top: Applications’code staging area

•Common Top: Runtime location for Java, HTML

•Instance Top: configuration and run-time generated files –newINSTANCE TOP

Release 12 Technology Stack 3-Tier Logical Architecture

Application

JSP

Forms

Reports

BC4J

OC4J

Web

Lis

tene

rUIX

DatabaseClient

Data Guard

Partitioning

RAC & ASM

Global Single Data Model

JDB

C/S

QL N

et

HT

TP

/ S

Technologies Inside EBS R12Highlights

• OracleAS 10.1.3 J2EE• OracleAS 10.1.2 Forms• Database 10.2.0.2 • XDK 10.2• OJSP 10.1.3• JDBC 10.2.0.2• JEWT 2.3.36

• JDK 1.5.0_08 on apps server• JDK 1.5.0_09+ on desktop• Pre-patched file system• New shared file system with

Oracle Config Home so that Appl Top and Oracle Homes can be read only

• Newer versions of everything

Technologies External to EBS R12Highlights

• Installed and integrated separately from Rapid Install• Discoverer 10.1.2• SSO/OID 10.1.2• Portal 10.1.4• WebCache 10.1.2• Collab Suite 10.1.2• Warehouse Builder 10gR1• Enterprise Manager 10.1.2• Integration Server 10.1.3• BPM 10g

<Insert Picture Here>

New Features

New Features

• File System• OC4J• Forms10

<Insert Picture Here>

New Features:

File System

Release 12 File System Changes

• New file system layout by Rapid Install, Rapid Clone• db, apps, inst

• Instance Home• Configuration, logs, certificates

• JAVA_TOP• lib and classes directories

• OA_HTML• j2ee structure changes• webapps/oacore/html/WEB-INF

Release 12 File System Layout

• Database node• <apps_base>/db/tech_st/10.2.0• <apps_base>/db/apps_st/data

• Applications node• <apps_base>/apps/tech_st/10.1.2• <apps_base>/apps/tech_st/10.1.3• <apps_base>/apps/apps_st/appl• <apps_base>/apps/apps_st/comn

• Instance home• <apps_base>/inst/apps/<context_name>

Instance Home Structure

• <apps_base>/inst/apps/<context_name> ($INST_TOP)

• /admin• /scripts ($ADMIN_SCRIPTS_HOME)

• /appl ($APPL_CONFIG_HOME)• /fnd/12.0.0/secure ($FND_SECURE)

• /certs• /logs ($LOG_HOME)

• /ora ($ORA_CONFIG_HOME)

• /10.1.2• /10.1.3 ($ORACLE_CONFIG_HOME)

• /pids• /portal• /rgf

Instance Home Advantages

• Clear distinction between the shared file system and the file system unique to an instance• Ability to share code (Apps, technology stack) among multiple

nodes and even instances (Dev,Test, Production) • Enables split ownership of applications and technology stack

file systems• Improves code safety by making shared file system read-only

while not patching

• Configuration and log files are co-located• Easier collection of instance state

• Ability to use network or local storage for various file system portions• Minimize disk usage and maximize performance

File System OverviewFILESYSTEM CHANGES

APPMGR

OLD NEW

APPL_TOP $HOME/<SID>appl $HOME/apps/apps_st/appl

COMMON_TOP $HOME/<SID>comn $HOME/apps/apps_st/comn

ORACLE_HOME $HOME/<SID>ora/8.0.6 $HOME/apps/tech_st/10.1.2

IAS_ORACLE_HOME $HOME/<SID>ora/iAS $HOME/apps/tech_st/10.1.3

ORACLE

OLD NEW

ORACLE_HOME $HOME/<SID>db/10.2.0 $HOME/db/tech_st/10.2.0

ORADATA $HOME/<SID>data $HOME/db/apps_st/data

INSTANCE TOP

OLD NEW

INST_TOP N/A $HOME/inst/apps/<context_name>

Environment Variable Overview

ENVIRONMENT FILE/VARIABLE CHANGES

OLD NEW

Env Source File APPSORA.env APPS<SID>.envThis file executes the following env files$ORA_CONFIG_HOME/10.1.2/$TWO_TASK.env$APPL_CONFIG_HOME/$TWO_TASK.env

Context File (MT) $APPL_TOP/admin/$TWO_TASK.xml $APPL_CONFIG_HOME/admin/$TWO_TASK.xml

OA_HTML $COMMON_TOP/html $COMMON_TOP/webapps/oacore/html

JAVA_TOP, OA_JAVA $COMMON_TOP/java $COMMON_TOP/java/classes

AF_JLIB N/A $COMMON_TOP/java/lib

JAVA_BASE N/A $COMMON_TOP/java/

FND_SECURE $FND_TOP/secure/<SID>/ $INST_TOP/apps/fnd/12.0.0/secure/

ADMIN_SCRIPTS_HOME $COMMON_TOP/admin/scripts/<SID>/ $INST_TOP/admin/scripts/

LOG_HOME $APPL_TOP/admin/<SID>/logs/ $INST_TOP/logs

FORMS_WEB_CONFIG_FILE $OA_HTML/appsweb.cfg $INST_TOP/ora/10.1.2/forms/server/appsweb.cfg

<Insert Picture Here>

New Features:

OC4J

Application Server 10.1.3 Components

• OC4J• OPMN• Oracle HTTP Server 10.1.3.0.0 (Apache 1.3.34)

Does not include:• Forms and Reports (10.1.2)• Portal (included in 10.1.2 and 10.1.4)• Discoverer (10.1.2)• Web Cache (included in 9.0.4, 10.1.2)• Identity Management (OID,SSO included in 9.0.4

and 10.1.2)

Standards-Based Technology

• Oracle Application Sever (AS) includes Oracle's Containers for J2EE (OC4J)

• Through OC4J you can execute Servlets, Java Server Pages (JSP), Enterprise Java Beans (EJB)

• OC4J replaces the older JServ implementation for running servlets on the web server

• Oracle Application Server 10gR3 (10.1.3) is the latest production version

• OC4J is based on J2EE standards:• Specific directory structure• File requirements (content & naming conventions)• XML file definition

OC4J in Applications R12

• R12 creates 3 OC4J instances:• Oacore: runs OA Framework-based applications• Forms: runs Forms-base applications• OAFM: runs web services, mapviewer, ascontrol

• Applications R12 vs. 11i• OC4J replaces JServ • OC4J instances replace Jserv groups

• OC4J instances run in JVM’s and communicate through mod_oc4j / Apache

Directory Structure Highlights

• 10.1.3/<context-name>.env file definesORACLE_HOME, LD_LIBRARY_PATH, PATH, TNS_ADMIN, TWOTASK ..

• /Apache/Apache/conf/apps.conf, httpd.conf ...• OC4J applications directory structure

• /application : applications deployed from this directory• /application-deployment : contains config files specific to

each deployed application• /config : common settings for all J2EE applications for this

instance

Standard OC4J Deployment

• Servlets deployed to OC4J server adhere to J2EE specification

• Deployment is through an Enterprise Archive (EAR) file, which contains the application definition and Web Application (WAR) files, which in turn includes the web application code (JAR), and associated configuration files (servlet definitions), JSP code, HTML

• Forms.EAR 10.1.2 is deployed to the OC4J container in Application Server 10.1.3

Forms.EAR

-bash-2.05b$ unzip -l forms.ear

689 04-29-04 14:01 META-INF/application.xml

197180 07-14-05 01:33 formsweb.war

-bash-2.05b$ unzip -l formsweb.war

Archive: formsweb.war

0 07-14-05 01:33 WEB-INF/0 07-14-05 01:33 WEB-INF/lib/

204444 07-14-05 01:33 WEB-INF/lib/frmsrv.jar

691 07-14-05 01:33 WEB-INF/orion-web.xml3165 07-14-05 01:33 WEB-INF/web.xml

EBS R12 OC4J Deployment

• EBS Java code is pre-deployed by Rapid Install and maintained by adpatch; adpatch performs file level patching

• EBS uses a sparse .ear file (containing no code) for deployment. This creates the correct OC4J structure, configuration files, and services such as opmn

• EBS-specific configuration and shared libraries are added via AutoConfig

OC4J Configuration

• AutoConfig is used for configuration management, similar to Release 11i

• Jserv.conf & Jserv.properties are replaced with• Oc4j.properties : defines basic Apps directory aliasing• Server.xml : defines J2EE applications and their shared

libraries for runtime OC4J• Orion-application.xml : defines location of Java classes of all

J2EE web modules deployed under J2EE application• Orion-web.xml : defines servlet level parameters for J2EE

web modules

Application Server Control (ASC)

• Runs as a J2EE application (ascontrol) within every OC4J container created• Access via /ascontrol with user oc4jadmin

• Prior releases (10.1.2, 9.0.4 ) required a separate agent and port

• Uses less disk space and fewer system resources• UI to deploy J2EE applications• Configure auditing, logging, security, performance• Role-based administration

OPMN

Oracle Process Manager and Notification server (OPMN) manages AS components and consists of:• Oracle Notification Server (ONS)

Delivers notifications between componentsOHS<->OPMN<->OC4J

• Process Manager (PM)start,stop, restart, death detection

($ADMIN_SCRIPTS_HOME contains the Apps equivalent scripts called ad*)

• CoreCore logic, parses config files, launch scripts

Health Check Pages

Health Check ... :<port>/j2ee/• JSP Test Page (Large list of test to run)

• Servlet Test Page Hello World Execute Source

Request Info Execute Source Request Headers Execute Source Request Parameters Execute Source Cookies Execute Source Sessions Execute Source Snoop Execute Source ToJSPServlet Execute Source

<Insert Picture Here>

New Features: Forms10

What is New in Forms10

• Native Forms runtime executable (frmweb) with shared library for user exits (fndfmxit), replaces the statically linked Applications runtime executable (frmwebx)

• Updated Swan UI• Forms Trace in addition to Forms Runtime Diagnostics

(FRD)• Forms Servlet is default deployment / communication

mode• Customers with severe WAN performance problems

can use Forms Server only in conjunction with hardware for SSL and load balancing

What is New in Forms10

• FORMS_ environment variables replace FORMS60_• New environment variables e.g. FORMS_TRACE_DIR• The Forms builder is available as part of the AS 10.1.2 home in

EBS R12 on Solaris/Linux/Win for debugging situations• For development use, Forms builder needs to be installed

separately as part of the Developer Suite• $ORACLE_HOME/bin/frmbld.sh replaces f60desm for design

• Modify frmbld.sh shell script to customize settings e.g. FORMS_PATH

• Generation tools are delivered as part of the Runtime Services and Developer Suite installations• frmcmp.sh and frmcmp_batch for generation

• Modify the shell script to customize settings

Architecture Overview

• 10.1.3 Home delivers• OC4J instances including one for Forms• Service Management

• 10.1.2 Home delivers• Runtime (10.1.2.0.2) executables $ORACLE_HOME_1012/bin/frmweb • Forms generator

• Forms diagnostics and translation utility

• Applications delivers• Configuration Files via the Instance Home

• Shared library for the user exits $FND_TOP/bin/fndfmxit (referenced by the FORMS_USEREXITS environment variable)

Oracle Reports

• Oracle Reports, like Forms, is supplied from the Oracle Applications 10.1.2 home

• Only available through Concurrent Manager• Reports Server is not used, and no servlet or cgi is

used• Reports executable rwrun is used directly

Deployment Decisions Forms Servlet vs. Server

• Forms10 is deployed in 10.1.3 oc4j container• By default configured as servlet

• Pros: standards-based servlet communication enables easy networking (firewalls, load balancing, proxies)

• Cons: socket communication performs better over WAN

• Instructions on configuring Forms Server• No native SSL – must use hardware solution• No native load balancing – must use hardware solution• To migrate execute: $FND_TOP/bin/txkrun.pl

-script=ChangeFormsMode -mode=socket • For more details see Oracle MetaLink Note 384241.1

<Insert Picture Here>

Upgrading Your Applications

What You Can Start Today

• Increase storage available for your database since upgrade to Apps R12 will likely increase your dbf’s(some tests implied 10%)

• Upgrading your database to 10gR2 – it is certified with 11i (Oracle MetaLink Note 362203.1) and this upgrade is a mandatory part of the EBS R12 upgrade

• Apps R12 no longer uses (disables) mod_plsql; if you have any custom use for it, start planning a migration

• Oracle Graphics is no longer present in Application Server. Reports which rely on it will need to be modified and we recommend using XML Publisher

Analysis & Planning Custom Code Requiring Changes

• Forms• Reports• C code• Java code• Framework• AutoConfig Configuration Customizations• Development Tools: compilers, Forms/Reports

Builder 10.1.2, JDev 10.1.3 • User Interfaces: new look & feel

Analysis & PlanningWorkload Estimates

Here is what we found in transitioning our own code to the new technology stack:

• Most code upgraded seamlessly • Percent of files manually touched:

• Forms: ~10% of forms and libraries needed touching• Reports: ~1% of reports needed touching• C code: ~20% of C code needed touching• Java code: ~1% of overall Java code needed touching• JSP’s: ~50% of JSP’s needed touching

• The above might not reflect your applications / customizations being upgraded

Forms Tasks

• Forms Personalizations should upgrade transparently• Recommend doing a review

• Forms custom library needs to be backed up and separately upgraded

• Most required changes for all code can be identified at build time and a few only at run time• Testing is still needed

Forms Issues

YesYesNoNoFORMS60_* FORMS60_* env env variablesvariables

YesYesNoNoForms Calling GraphicsForms Calling Graphics

YesYesNoNoValidation and NavigationValidation and Navigation

NoNo

NoNo

YesYes

YesYesClient side PLSQL upgrade Client side PLSQL upgrade

YesYesForms builtForms built --in and Property in and Property ObsolescenceObsolescence

YesYesMirror ItemsMirror Items

Issue Issue Build Time Build Time Run TimeRun Time

Issues easily identifiable during build and/or run time

Forms Issues and Cost

6i6i30 min30 minLowLowFORMS60_* FORMS60_* env env variablesvariables

6i6iTBDTBDHighHighForms Calling GraphicsForms Calling Graphics

2 hr 2 hr –– 1 day1 day

0.5 0.5 –– 1 hr1 hr

0.5 0.5 –– 1 hr1 hr

2 hr 2 hr –– 1 day1 day

HighHigh

LowLow

LowLow

HighHigh

6i6i

6i6i

6i6i

6i6i

Validation and NavigationValidation and Navigation

Client side PLSQL upgradeClient side PLSQL upgrade

Forms builtForms built --in and Property in and Property ObsolescenceObsolescence

Mirror ItemsMirror Items

Issue Issue Risk Risk Time Time CompatibilityCompatibility

Compatibility designates what technology can be used to perform adjustments. Risk designates likelihood of wider code change impact.

Upgrading Forms and Libraries

• Builder:• Open then save library $ORACLE_HOME/bin/frmbld.sh

• Standalone:• To convert from pld to pll:

frmcmp.sh module=<filename.pld> userid=apps/apps module_type=library parse=yes

• To convert from pll to plx:frmcmp.sh module=<filename.pll> userid=apps/apps module_type=library compile_all=yes

• To upgrade forms:frmcmp.sh module=<filename.fmb> userid=apps/appsmodule_type=form compile_all=yes

Reports Tasks

• Reports that generate HTML output should be converted to XML Publisher

• Reports Server will only be accessible from the Concurrent Manager; any standalone reports will need to be modified

• Oracle Graphics has been replaced by OAF/BI Beans; any integration of Oracle Graphics into Oracle Reports-based reports will need to be re-implemented with XML Publisher and OAF/BI Beans

Reports Issues and Cost

30 min30 min

30 min30 min

30 min30 min

LowLow

LowLow

LowLow

6i6i

6i6i

6i6i

REPORTS60_ environment variable REPORTS60_ environment variable changed to REPORTS_changed to REPORTS_

Number precision exceeds 38Number precision exceeds 38

Use of DAY, LANGUAGE, or Use of DAY, LANGUAGE, or TIMESTAMP as a variable TIMESTAMP as a variable

Issue Issue Risk Risk Time Time CompatibilityCompatibility

Note: This summary excludes any rewriting efforts for HTML and Graphics reports

C-code Tasks

• Re-build your c/c++ code with the new compilers, linkers, and technology stack: • C compiler: icc 7.1.032

• C++ compiler: g++ 3.2.3

• RSF Level: 10.1.0.5

• Platform: Linux RH AS 3

C-code Issues and Cost

6i6i30 min30 minLowLowUntyped variable declarations

6i6i30 min30 minLowLowNetwork APIs changed in 10.1 RSFs

10g10gTBDTBDHighHighSome third party libraries might not be compatible with gcc2.96

30 min30 minLowLow 6i6ibitvec macro and ub8 and sb8 types are no longer in oratypes.h

Issue Issue Risk Risk Time Time CompatibilityCompatibility

Framework Tasks

• Framework Personalization upgrades transparently• Recommend review

• Framework custom application code should run with new OC4J without any upgrade; nevertheless we recommend• opening custom code with new JDeveloper: this is a one way

upgrade process• recreating JDeveloper projects (easier than migrating old

projects)

• Generic Java code changes include:• New JDK version and JSP spec restrictions• Servlet entry points need to be explicitly aliased • JServ Thread API incompatibility with OC4J

Java Code Issues and Cost

12121 day1 dayMedMedSOAP and Servlet library changes

11i11i1 day1 dayMedMedMismatched parameter type with errors like A(string) cannot be applied to y(jbo.domain.number)

11i11i30 min30 minLowLowTighter JSP 1.2 spec spec enforcement (extra “/”)

11i11i30 min30 minLowLowJDK1.5 type mismatched when trying to map "java.lang.String" to "oracle.jbo.domain.Number"

11i11i30 min30 minLowLowJDK1.5: stricter type checking for operator +

30 min30 minLowLow 11i11iJDK1.5: Enum is a keyword, and may not be used as an identifier, nor as type

Issue Issue Risk Risk Time Time CompatibilityCompatibility

<Insert Picture Here>

Summary

R12 Technology Enables You to Deliver Best ROI

• Uptaking new technology lowers costs• Proven technologies deliver better experience • Latest standards provide better integration• Less training with familiar and improved Apps

• New features empower administrators and users• OC4J • Instance Home• Identity Management, Portlets, Certificate Management

• Upgrading is easy• Maintain your investment • Productive new development tools• Transform configurations

Uptaking New Technology Lowers Costs

• Proven technologies deliver better experience • AS technologies fine tuned through three 9.0.x releases• New native RAC tools simplify advanced configurations

• Latest standards provide better integration• Industry standard specs like J2EE servlet, JSP, SOAP, JMS• EBS Portlets publishable on any WSRP 1.0 compliant Portal

• Less training with familiar and improved Apps Stack• Oracle Wallet Manager provide consumer side certificate

management• Desktop use of native Sun JDK simplifies administration of

multiple Java applications

New Features Empower Administrators and Users

• OC4J / OPMN• Native features for free• Leverage skill set for other J2EE applications• Evolution of concepts

• Instance Home• Easier administration• Better subdivision of work• Flexibility

• Identity Management, Portlets, Certificate Management• Better integration

Easy to Upgrade

• Maintain and extend your investment • Customizations and custom applications have simple

upgrades• Administration tools persist from 11i with added abilities • Existing SSL certificates can be reused

• Productive new development tools• JDeveloper 10.1.3• Forms10 Builder • Latest compilers and libraries

• Transform configurations• AutoConfig simplifies upgrades

R12 Technology Enables You to Deliver Best ROI …

… While Evolving Towards Fusion !

New E-Business Suite Technology Stack Blog

http://blogs.oracle.com/schan

• Certification, desupport announcements• Discussion architectures, advanced

configurations• Early Adopter Programs• Statements of Direction• Supports RSS feedreaders• Discuss Apps technology stack topics

with senior Development Architects

For More Information

http://search.oracle.com

or

http://www.oracle.com/

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remain at the sole discretion of Oracle.

top related