Post on 16-Apr-2015
description
<Insert Picture Here> <Insert Picture Here>
Upgrade Oracle Forms to 11g version
Dmitry Nefedkin
Oracle ISV Migration Center FMW Consultant
Dmitry.Nefedkin@oracle.com
ISV Migration Center Team
• Who we Are ISV Migration Center Team is a team of senior technical consultants
based in Eastern and Central Europe and represents Oracle's technical investment
for partners.
• Mission Statement Enable partners to rapidly and successfully adopt and
implement Oracle latest technology
• What do we Offer Whether you are selling Oracle technology, building business
solutions, including hosted Internet solutions or providing system integration and
implementation services for Oracle technology, IMC Team can help you succeed.
• How can we assist We offer a wide range of free services for partners such as
one2one assistance, webinars, seminars and hands-on workshops.
ISV Migration Center blog: http://blogs.oracle.com/imc
Contacts:
Ruxandra Radulescu, ISV Migration Center Manager, EE&CIS
ruxandra.radulescu@oracle.com
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11gR2 upgrade steps
– Installation of the Forms 11g environment
– Configuring the environment
– Upgrading Forms Modules
• Useful links
Oracle Forms Strategy
• March 2012, Oracle Application Development Tools Statement of Direction (www.bit.ly/OracleToolsSOD )
– “Oracle has no plan to discontinue support of Oracle
Forms. Furthermore, a new version of Forms, Oracle
Forms 12c, is planned for delivery as a component of
Oracle Fusion Middleware12c. “
• Clear statement of direction: – Upgrade
• Move to the latest versions of Forms to ensure support, certification, use new features
– Integrate
• Use non-Forms technologies when/as the business dictates
• Provide “Forms-like” experience for building with Java technologies
Latest releases of Oracle Forms
• Oct, 2011 – Oracle Forms 11.1.2.0 (11gR2)
– Certified with Oracle Weblogic Server 10.3.5, Oracle SSO
10.1.4.3, Oracle Access Manager 11.1.1.5, Oracle Virtual
Directory 11.1.1.5, Oracle Internet Directory 11.1.1.5
• Feb, 2012 – Oracle Forms 11.1.1.6 (11gR1 PS5)
– Certified with Oracle Weblogic Server 10.3.6, Oracle SSO
10.1.4.3
Go to support.oracle.com to find the latest updates on
the certifications
Should the customer license Weblogic Server when
upgrading to Forms 11g?
This is the extract from the Oracle Technology Global Price List Supplement.
Weblogic Server Basic license
• The license for each edition of Oracle Internet
Application Server and for Oracle Forms and Reports
enables the right to full use of the WebLogic Server
Basic license
• This license has limitations to several Weblogic
Server features, check in Oracle® Fusion Middleware
Licensing Information 11g Release 1 (11.1.1),
Appendix A WebLogic Server Basic
• To verify that WebLogic Server is being used in
accordance with the WebLogic Server Basic license
you can run the script. See My Oracle Support
article: Doc ID: 885587.1
Oracle Access Manager Basic license
• This license is available within licenses for the
following Oracle products:
– Oracle Internet Application Server Standard Edition
– Oracle Internet Application Server Standard Edition One
– Oracle Internet Application Server Enterprise Edition
• Oracle Access Manager Basic is only for providing
single sign-on capabilities to Oracle Internet
Application Server and for custom Java applications
previously developed for Oracle Containers for J2EE
(OC4J). Products outside of this scope do not have
the right to use Oracle Access Manager Basic.
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11gR2 upgrade steps
– Installation of the Forms 11g environment
– Configuring the environment
– Upgrading Forms Modules
• Useful links
Understanding the Architecture
Client/Server Forms
No more Client/Server version since January 2005 !!!
Forms
Engine FMX
File Data Manager
Appl. Logic
PL/SQL Engine
UI Presentation
Win
20
00
Win
XP
Ma
c
Win
NT
Mo
tif
“Thick” Client Database Tier
Forms Runtime
3-tier architecture
JVM
Web Browser Application Server Database Server
Forms
Engine
FMX
File Data Manager
Applic. Logic
PL/SQL Engine
UI Presentation
Client Tier Middle Tier Database Tier
Forms Runtime
3-tier architecture
UI Presentation
Web Browser Application Server Database Server
Forms
Engine
FMX
File Data Manager
Applic. Logic
PL/SQL Engine
Client Tier Middle Tier Database Tier
Forms Services
Application Tier Database Tier Client Tier
Web Container
Forms
Servlet
Forms
Listener
Servlet
Client 1
Oracle WebLogic Managed Server
HTTP
Server
HTTP Listener
Client launches Forms application using a URL
Forms Services
Application Tier Database Tier Client Tier
Web Container
Forms
Servlet
Forms
Listener
Servlet
Client 1
Oracle WebLogic Managed Server
HTTP
Server
HTTP Listener
HTTP Server hands request to MOD_WEBLOGIC which forwards request to Forms Servlet
Forms Services
Application Tier Database Tier Client Tier
Web Container
Forms
Servlet
Forms
Listener
Servlet
Client 1
Oracle WebLogic Managed Server
HTTP
Server
HTTP Listener
Forms servlet returns HTML page that contains Forms Client Java Applet
HTML
Forms Services
Application Tier
Database Tier
Client Tier
Web Container
Forms
Servlet
Forms
Listener
Servlet
Client 1
Oracle WebLogic Managed Server
Forms
Runtime
1
Forms
Runtime
2
HTTP
Server
HTTP Listener
Forms Listener Servlet: Creates a new servlet session, Starts a Forms Runtime Process
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11gR2 upgrade steps
– Installation of the Forms 11g environment
– Configuring the environment
– Upgrading Forms Modules
• Useful links
Oracle Forms 11gR1 new features
Asynchronous Event Calls
• Forms registers interest in an asynchronous event
(Event name, Type, Scope)
• New When-Event-Raised trigger
Demo: http://bit.ly/Forms11gExtEventsDemo
Oracle Forms 11gR1 new features
Integration with Client Side JavaScript
• Call JavaScript from Forms
Web.Javascript_eval_expr, Web.Javascript_eval_function
• JavaScript can raise Forms events
– When-Custom-JavaScript-Event
Demo: http://bit.ly/Forms11gJavaScript
Forms
Server
Forms
Client
Procedure
calls
Oracle Forms 11gR1 new features
Integration with Enterprise Manager Grid Control 11g
Oracle Forms 11gR2 new features
• Integration with Oracle Access Manager 11g
– for authentication and authorization of your Oracle Forms
applications
• Reduced Installation Footprint
– limit the number of products and servers installed on the machine,
still allowing a developer to build, run and test their apps
• Performance and Monitoring
– Schedule Forms Runtime Prestart
– Log performance metrics to database tables for later analysis
– Enhanced Network Statistics Support
Oracle Forms 11gR2 new features
• Support for Unicode Columns
– New Forms datatype NCHAR corresponds to the SQL datatypes
NCHAR and NVARCHAR2
• Support for URLs in Image Items and Iconic Buttons
– READ_IMAGE_FILE built-in (Icon Name property)
• Disable/enable visibility of the default menubar and the
window title bar
– guiMode configuration parameter of the forms applet
Oracle Forms 11gR2 new features
Integration with Oracle Real User Experience Insight
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11gR2 upgrade steps
– Installation of the Forms 11g environment
– Configuring the environment
– Upgrading Forms Modules
• Useful links
Installing Oracle Forms 11.1.2 (11gR2) environment
1. Install Oracle Weblogic binaries
2. Install Oracle Forms 11.1.2 binaries
3. Configure a Weblogic Domain and an Oracle
instance
4. Post-installation checks
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 1 - Install Oracle Weblogic binaries
• Important points to be considered before downloading
the software :
– Determine your operating system versions : 32bit or 64bit
– Specific WebLogic Server installers for Windows 32bit and
Linux x86 32bit platforms include 32bit JVM/JDK
– To install Oracle WebLogic Server onto a 64bit system use
the WebLogic Server generic installer (wls1035_generic.jar)
that does not include a JVM/JDK, hence, a certified 64bit JDK
must be installed previously
• After the installation you will have:
– Middleware Home (MW_HOME)
– Weblogic home (MW_HOME\wlserver_10.3)
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 2 - Install Oracle Forms 11.1.2 binaries
• Download Oracle Forms/Reports 11.1.2 binaries for
your platform (from OTN or edelivery.oracle.com)
• Start the installer and choose Install Software – Do
not configure option (this install just binaries)
• Specific ORACLE_HOME will be created inside
MW_HOME
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 3 - Configure a Weblogic Domain and an Oracle
instance
• Start Configuration Wizard from Forms
ORACLE_HOME: $ORACLE_HOME/bin/config.sh
(cmd) . You can also use Configure Classic Instance
menu item in the Windows Start Menu.
• The wizard will configure an Weblogic Domain (for java
components) and an Oracle Instance (non-java
components – OHS, WebCache…)
• You should choose from configuring for development or
for deployment (more on this on the next slide)
• You can also specify link to OID and specify SSO
integration type (Oracle SSO or OAM 11g)
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 3 - Configure a Weblogic Domain and an Oracle
instance
•Deployment – dedicated WLS managed server for both Forms and Reports. EM Agent and OHS are installed
•Development – Forms and Reports servlets are deployed on WLS Admin Server. No OHS and EM Agent
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 3 - Configure a Weblogic Domain and an Oracle
instance
•Specify the locations of your binaries (Oracle Forms home);
•Pick the name and the location of the Oracle Instance;
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 3 - Configure a Weblogic Domain and an Oracle
instance
•Weblogic domain will be created, so you need to provide it’s name, location and the administrative user credentials
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 3 - Configure a Weblogic Domain and an Oracle
instance
•Check only the components that you need in your environment
•Here is the example of the available components for the development configuration
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 4 - Post-installation checks
• After completion of the Configuration Wizard your
Forms environment will be up and running (both
Weblogic server(s) and OPMN-managed
components)
• You can access
– Test Form
– Weblogic Console
– Fusion Middleware Control (if you has configured for
deployment)
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 4 - Post-installation checks
• Accessing FORMS from the browser
– Development install:
• http://<adminserverhost>:7001/forms/frmservlet
– Deployment install:
• http://<formsmanagedserverhost>:9001/forms/frmservlet
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 4 - Post-installation checks
• Accessing WLS console
http://<adminserverhost>:7001/console
Installing Oracle Forms 11.1.2 (11gR2) environment
Step 4 - Post-installation checks
• Accessing EM console (deployment install only)
http://<adminserverhost>:7001/em
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11gR2 upgrade steps
– Installation of the Forms 11gR2 environment
– Configuring the environment
– Upgrading Forms Modules
• Useful links
Configuring Oracle Forms 11g environment
Configuration is already done by installation. You only
need to customize Forms Services
• formsweb.cfg
• default.env
• forms.conf
• registry.dat
Configuring Oracle Forms 11g environment
• formsweb.cfg
– Located into :
• $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS
/applications/formsapp_11.1.2/config
– Specifies runtime parameters for Forms apps
– Client-server equivalent of command line options
– All parameters listed in the documentation :
• Deployment Guide for Forms Services
http://docs.oracle.com/cd/E24269_01/doc.11120/e24477.pdf
Configuring Oracle Forms 11g environment
formsweb.cfg
• Runtime parameters
• All settings can be set in the
default section
• Application sections override
default
• You can have many
environments using the single
installation
Configuring Oracle Forms 11g environment
• default.env
– Located into :
• $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS
/applications/formsapp_11.1.2/config
• Specifies runtime environment variables
• equivalent of environment variables or Windows
Registry entries
• each application can choose to use its own ENV file
with the envFile setting in formsweb.cfg:
envFile=summit.env
Configuring Oracle Forms 11g environment
• default.env
• Environment variables
• Each app section can have an env file
summit.env File … ORACLE_HOME=E:\OFMW11gR2Forms32\Oracle_F
orms ORACLE_INSTANCE=E:\OFMW11gR2Forms32\inst1
1gR2Dev FORMS_PATH=D:\Orders
…
Configuring Oracle Forms 11g environment
• forms.conf
– In 11g, forms.conf is the Oracle HTTP listener configuration file
for Oracle Forms Services
• It defines WebLogic handler mappings for the Managed
Server where the Forms Services applications are deployed
– forms.conf is an Oracle HTTP Server directives file. In Oracle
Fusion Middleware, the forms.conf file is included in the Oracle
HTTP Server configuration directory at
$ORACLE_INSTANCE/config/OHS/<OHS INSTANCE NAME>/moduleconf
Configuring Oracle Forms 11g environment
• forms.conf (when OHS is NOT installed)
– Located into :
• <INSTANCE_HOME>\config\FormsComponent\forms\server
– Includes Virtual Paths
Configuring Oracle Forms 11g environment
• Registry.dat contains the default font, font mappings, and icon
information that Forms Services uses.
– Located into :
• $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_11.1.2/config/forms/registry/oracle/forms/registry
• Can be modified via FMW Control
– Specifies icon path
– Equivalent of Registry Entry UI_ICON
– Font mapping
default.fontMap.appFontnames=Courier New,Courier,courier,System,Terminal,Fixed,Fixedsys, …..
default.fontMap.javaFontnames=MonoSpaced,MonoSpaced,MonoSpaced,Dialog,MonoSpaced, …..
Configuring Oracle Forms 11g environment
Transform .ico into .gif
– Icons must be converted into .gif or .jpg files
– Package .gif into a Java archive .jar file
> cd <location with the .gif>
> <ORACLE_HOME>\jdk\bin\jar cvf myicons.jar *.gif
– Copy the jar file into <ORACLE_HOME>\forms\java
– Add the jar file name to the ARCHIVE parameter of the
right section in the formsweb.cfg
– Set the Applet parameter ImageBase=codebase
Archive=frmall.jar, myicons.jar
imageBase=codebase
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11g upgrade steps
– Installation of the Forms 11g environment
– Configuring the environment
– Upgrading your Forms Modules
• Useful links
Upgrade Process
Some notes on the starting point
• Upgrading from Oracle Forms before 4.5
– It is not possible directly.
– Convert first modules to Oracle Forms 4.5 before to
convert them to Oracle Forms 6i and finally convert
them to Oracle Forms 11g.
• Upgrading from Oracle Forms 4.5 or 5 to Oracle
Forms 11g
– It is not possible directly
– Convert first modules to Oracle Forms 6i and then
convert them to Oracle Forms 11g.
Upgrading Forms Modules
Tools Available
• Forms Builder (Interactive)
• Forms Compiler (Batch)
• Forms API (Programmatic/Batch)
• Migration Assistant (Optional)
Upgrading Forms Modules
Forms Builder (Interactive)
• Open the Form Module in the Forms Builder
• Compile the Module
• Save the Module
Pro: Instant feedback
on any errors
Con:
Least time efficient
Upgrading Forms Modules
Forms Compiler (Batch)
• Create batch or shell script, run it, check the output set ORACLE_HOME=I:\OFMW11gR1PS1\Oracle_Forms
set PATH=I:\OFMW11gR1PS1\Oracle_Forms\bin;%PATH%
set FORMS_PATH=F:\Workshop_Forms_Upgrade_10g_11g\Material\summit_10gR2_11g
@ECHO OFF
rem COMPILE FIRST REFERENCE FORM
Echo compiling Library .....
for %%x in (*.pll) do start /w frmcmp MODULE=%%x MODULE_TYPE=LIBRARY USERID=summit/summit@v11 BATCH=yes COMPILE_ALL=yes window_state=minimize
Echo compiling Forms Modules .....
for %%x in (*.fmb) do start /w frmcmp MODULE=%%x MODULE_TYPE=FORM USERID=summit/summit@v11 BATCH=yes COMPILE_ALL=yes window_state=minimize
Echo compiling Menu Modules .....
for %%x in (*.mmb) do start /w frmcmp MODULE=%%x MODULE_TYPE=MENU USERID=summit/summit@v11 BATCH=yes COMPILE_ALL=yes window_state=minimize
ECHO FINISHED COMPILING
Upgrading Forms Modules
Forms API (Programmatic/Batch)
• Forms API (Programmatic/Batch) – Since Forms 5.0
– Programmatically manipulate Forms modules
– Written in C
– For advanced users
– You can use it just to upgrade from one version to another
• Load the module, Compile the module, Save the module
– Build C projects to upgrade the whole set of modules : Forms,
Libraries, Menus
Upgrading Forms Modules
Forms API (Programmatic/Batch)
• Forms JDAPI (Programmatic/Batch) –
Since Forms 9i
– Programmatically manipulate Forms
modules
– Written in Java
– For advanced users
• You can use it just to upgrade from one
version to another
– Load the module, Compile the
module, Save the module
• Add a library pointing to
<ORACLE_HOME>\jlib\frmjdapi.jar to
the Project
import oracle.forms.jdapi.*;
….
public static void main(String[] args) {
FormModule fmd = FormModule.open(args[0]);
Jdapi.connectToDatabase(args[1]);
fmd.save(args[0]);
try {
fmd.compile();
} catch (Exception ex) {
ex.printStackTrace();
}
// Clean Up
Jdapi.shutdown();
}
Upgrading Forms Modules
Migration Assistant
– A utility provided with Forms 11g.
– Provided as a command line utility (<Middleware
Home>\asinst\bin\frmplsqlconv.bat) and in GUI mode
– Wizard interface alerts you if using obsolete features
– Makes changes if possible
– Saves FMB in Oracle Forms 11g format
– Use before Forms Builder or Compiler, but not necessary
– Forms Compiler will find errors if you don’t use Migration
Assistant
Upgrading Forms Modules
Migration Assistant – GUI Mode
The Upgrade Process – Migration Assistant
• Migration Assistant – Batch sample
set ORACLE_HOME=I:\OFMW11gR1PS1\Oracle_Forms
set PATH=I:\OFMW11gR1PS1\Oracle_Forms\bin;I:\OFMW11gR1PS1\asinst_1\bin;%PATH%
set
FORMS_PATH=F:\Workshop_Forms_Upgrade_10g_11g\Material\summit_10gR2_11g;I:\OF
MW11gR1PS1\Oracle_Forms\forms
set CLASSPATH=I:\OFMW11gR1PS1\Oracle_Forms\jlib\frmjdapi.jar;%CLASSPATH%
for %%i in ("*.pll") do call frmplsqlconv module=%%~nxi log=conv_%%~ni.log
userid=summit/summit@v11
for %%i in ("*.mmb") do call frmplsqlconv module=%%~nxi log=conv_%%~ni.log
userid=summit/summit@v11
for %%i in ("*.fmb") do call frmplsqlconv module=%%~nxi log=conv_%%~ni.log
userid=summit/summit@v11
Upgrade Process from C/S to the Web
• Features which work differently when Web deployed :
– HOST
– ORA_FFI
– Read_Image_File
– Text_IO
– Tools_Res
Run on the Server not on the Client !!
• Alternatives :
– Java Beans
– WebUtil
Upgrade Process from C/S to the Web
• Features which Performance Implications :
– Synchronize Built-ins (network traffic)
– Timers (1 roundtrip per execution)
• ie: 1 timer per second x 500 users = 500 roundtrips/sec)
– Tabbed Canvases (large initial download size)
• ie: Use hidden Stacked Canvases on each Tab to defer
download (Visible=No, Raise on Entry=Yes)
– Alternatives :
• Java Beans
• Pluggable Java Component (Pjc)
• External Events with AQ (New in 11g)
Upgrade Process from C/S to the Web
• Features which don’t work on the Web :
– Mouse Triggers
(When-Mouse_Move,When_Mouse_Enter/Leave)
– Icons need to be converted into .gif or .jpg
– VBX / OCX
– OLE containers
– Sound Items
• Alternatives : – Java Beans
– WebUtil
<Insert Picture Here>
Agenda
• Oracle Forms releases/support/license policy
• Oracle Forms 11g architecture
• Oracle Forms 11g new features
• Oracle Forms 11g upgrade steps
– Installation of the Forms 11gR2 environment
– Configuring the environment
– Upgrading your Forms Modules
• Useful links
Useful links
• Oracle Forms page on OTN: http://www.oracle.com/technetwork/developer-tools/forms/overview/index.html
• Oracle Forms 11gR2 documentation: http://docs.oracle.com/cd/E24269_01/index.htm
• Oracle Forms 11g demo pack: http://download.oracle.com/otndocs/demos/forms/11g/demos_11g.zip
• Oracle Forms Community - Pluggable Java Components & Java Beans' library: http://forms.pjc.bean.over-blog.com/
Questions
Dmitry Nefedkin
Oracle ISV Migration Center FMW Consultant
Dmitry.Nefedkin@oracle.com
ISV Migration Center blog: http://blogs.oracle.com/imc