Post on 18-Dec-2021
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Getting The Most From Forms 12c
Michael Ferrante Principal Product Manager Application Development Tools June 2017
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
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 remains at the sole discretion of Oracle.
3
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Agenda
4
Feature Timeline
Forms and Java Web Start (JWS)
Empowering the Administrator with FMC Notifications
Working with Images
Easy to use Tips
What’s Coming
Community Information
1
2
3
4
5
6
7
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
System Events DB-Idle
Client-Idle Notification
Single-Sign-Off Media Completion
Audio Playback
Tabs with Icons
Item Level Mouse Pointers
BI-Publisher Integration
5
What’s New in Forms 12c
Login Hints
Java Web Start
Customizable Color Schemes
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 6
The Feature Timeline
Oracle Forms 11.1.1
• WLS Integration
• Javascript Integration
• Enhanced Java Support
• Server-side Events
• DB Proxy User Support
• Enhanced Sql Logging
• Integration With ODL
GA 2005 GA 2009 GA 2011
Oracle Forms 10.1.2
• Runtime Pooling
• JVM Pooling
• Improved SSO Integration
• Improved EM Interface
• XML Conversion
Oracle Forms 11.1.2
• Support For OVAB
• Integration With OAM
• Schedule Runtime Prestart
• Forms Metric Agent
• Enhanced Net Diagnostics
• Oracle RUEI
• Urls In Image Items
• guiMode Parameter
• True Window Maximizing
• And more…
Oracle Forms 12.2.1
• Integration With Bi-publisher
• Java Web Start and FSAL
• System Events
• Single Sign-out
• JVM Controller Improvements
• Audio Playback
• Runtime UI Improvements
• Custom ColorSchemes
• Custom logon message
• OPSS Integration
• Builder Improvements
• Performance improvements
• And many, many, more…
GA 2015
http://www.oracle.com/technetwork/developer-tools/forms/documentation
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Java Web Start (JWS) Free your application and go browser-less
7
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
What Is Java Web Start (JWS)
• Allows you to run applications without installing the application locally.
• Can be launched from browser, hyperlink, command line, or custom script.
• Supported with nearly all browsers (exact behavior may vary).
• Application looks and feels the same as when running as applet in browser.
• Although launched from browser, application is not a child to the browser.
8
References: https://docs.oracle.com/javase/8/docs/technotes/guides/javaws https://www.java.com/en/download/faq/java_webstart.xml
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Java Web Start (JWS) For Oracle Forms
• SSO requires browser.
• SSO authentication may not propagated via WEB.SHOW_DOCUMENT.
• Does not support SSO Logout.
• Does not support JS. (12.2.1.0 – 12.2.1.2)
• Client Java (choose one) and optional browser(s):
9
Requirements and Limitations
OPTIONAL REQUIRED (choose one) • Java Plugin (JRE) • Java Development Kit (JDK)
• Internet Explorer or Edge • Firefox • Chrome • Safari
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Browser-less Settings
• alwaysOnTop
– Forces the JWS window to remain on top of all other desktop windows.
• centerOnStartup
– Centers the JWS window upon application startup.
• isResizable – When set to FALSE, the JWS window cannot be resized by the user.
Requires 12.2.1.1 or newer.
10
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 11
Java Network Launch Protocol (JNLP) <jnlp spec="1.0" codebase="http://example.com:9001/forms/java/"> <information> <title>Oracle Forms Services</title> <vendor>Oracle Corporation</vendor> <homepage href="http://www.oracle.com"/> <description>Oracle Forms Services applet launcher.</description> <description kind="short">Oracle Forms Applet</description> </information> <security> <all-permissions/> </security> <update check="always" policy="prompt-run"/> <resources> <java href="http://java.sun.com/products/autodl/j2se" version="1.7+"/> <javafx-runtime version="2.2+"/> <jar href=http://example.com:9001/forms/java/frmall.jar " download="eager" main="true"/> <extension href="http://example.com:9001/forms/java/extensions.jnlp" name="Extensions"/> </resources> <applet-desc name="Oracle Forms" main-class="oracle.forms.engine.Main" width="1" height="1"> <param name="width" value=“1000"/> <param name="height" value=“800"/> <param name=“background" value=“no"/> <param name=“logo" value=“companyLogo.gif"/> <param name=“guiMode" value=“1"/> <param name=“centerOnStartup" value=“TRUE"/> . . . . . .
http://docs.oracle.com/javase/tutorial/deployment/deploymentInDepth/jnlpFileSyntax.html
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Using JWS
• Call from web browser or hyperlink using either http or jnlp protocol.
• Call from command line, script, shortcut, custom executable, or Builder.
12
JNLP/JNLPS requires Java 8u92 or newer
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 13
Browser downloads and processes the jnlp file
Using HTTP/HTTPS
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 14
Java (JWS) downloads and processes the jnlp file (does not support SSO)
Using JNLP/JNLPS Protocol Handler
Custom protocol handlers currently do not work in Chrome due to a Chrome bug. https://bugs.chromium.org/p/chromium/issues/detail?id=560809
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Running JWS From Command-line
15
JWS from command-line does not support SSO.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 16
JWS - Install App (for non-SSO only)
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 17
JWS/JNLP - More Information
https://docs.oracle.com/javase/tutorial/deployment/deploymentInDepth/jnlp.html
http://bit.ly/2emxed8
Java Network Launch Protocol
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Notifications Empower your administrator
18
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Notifications
• Causes a “SYSTEM_NOTIFICATION” event to fire in a receiving form.
• Caught in WHEN-EVENT-RAISED trigger.
• Administrator can cause level 1, 2, 3, 4, or 5 notification to be raised.
• Can be sent to one or more runtime sessions at the same time.
19
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Notifications
• Only acted upon after WHEN-EVENT-RAISED fires AND after next round-trip occurs.
• Notifications are placed in event queue, so running triggers will continue.
• Notifications are not treated as critical events.
20
Limitations
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Notifications
• Alert users of a pending outage or current system issues.
• Force applications to exit cleanly when users leave for the day.
• Allow Administrator to enable/disable application features.
• Collect session specific information.
21
Possible use-cases
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Working With Images Visually appealing
25
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 26
Image In Tabs
SET_TAB_PAGE_PROPERTY (‘WELCOME’, ICON_NAME, ’fav_oracle.png’);
Calling tab images from URL may throw Java security warning(s), therefore URL is not recommended.
SET_TAB_PAGE_PROPERTY (‘WELCOME’, ICON_NAME, ’http://example.com/fav_oracle.png’);
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 27
Images In Buttons
SET_ITEM_PROPERTY (‘BUTTON1’, ICON_NAME, ’exit.png’);
SET_ITEM_PROPERTY (‘BUTTON1’, ICON_NAME, ’http://example.com/exit.png’);
Calling button images from URL may throw Java security warning(s), therefore URL is not recommended.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 28
Images In Image Items
READ_IMAGE_FILE (‘C:\foo.gif’, ‘GIF’, ‘block.imageItem’;
CLIENT_IMAGE.READ_IMAGE_FILE (‘C:\foo.gif’, ‘GIF’, ‘block.imageItem’;
READ_IMAGE_FILE (‘foo.gif’, ‘URL’, ‘block.imageItem’;
READ_IMAGE_FILE (‘http://example.com/foo.gif’, ‘URL’, ‘block.imageItem’;
READ_IMAGE_FILE (‘C:\foo.gif’, ‘GIF’, ‘block.imageItem’;
CLIENT_IMAGE.READ_IMAGE_FILE (‘C:\foo.gif’, ‘GIF’, ‘block.imageItem’;
Images read from URL cannot be stored to database.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Tips For Using Images In Your Application
• Whenever possible, store images in a signed jar file.
• Sign jar file with trusted and known (e.g. Verisign, Thawte, etc) certificate.
• Do not package extra, unused content in jars.
• Use unique names for jars. (e.g. salesImages.jar, hrMedia.jar)
• Ensure image file size is as small as possible.
• Properly size images.
• Consider how image will be used. Don’t deliver a high res image for a toolbar icon.
30
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Power Tips Quick and easy tips
31
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Easy To Use Applet Parameters • Do your users often resize/adjust the parent application window?
– dynamicLayout=false to reduce network traffic resulting from the window resizing. This should not be used if the application uses WHEN-WINDOW-RESIZE triggers.
• Want to set the titlebar text of a JWS window, but can’t figure out how? – webformsTitle=<desired text>
• Want to prevent users from resizing a JWS or FSAL parent window? – isResizable=false will prevent users from altering the parent window size. Programmatic size
changes are still possible. Helpful for pixel perfect designs.
• Do users complain that the cursor blinks too fast or too slow? – cursorBlinkRate=<rate in ms> allows you to set the speed at which the cursor blinks. Setting
to “0” stops the cursor from blinking.
• Don’t like the Oracle branding? – logo=<virtual path>, background=<virtual path>, splashscreen=<virtual path>
32
12.2.1.0+ 10.1.2.3+ 6.0.8.10+
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Easy To Use Environment Variables
• Do your user prefer all text to be selected when clicking in the field?
– FORMS_SELECT_ON_CLICK=1 to select all text when entering a text field with mouse. Setting to 0 will cause the text to not be selected.
• Want users to see the password rules when changing old passwords?
– FORMS_CHANGE_PASSWORD_HINT=<desired string> shows this string on the change password dialog.
• Prevent the db logon dialog from displaying if logon fails during SSO? – FORMS_HIDE_LOGON_RESET=1 prevents the logon from displaying if logon fails or if
the db user password expires. Intended for SSO configurations only.
33
12.2.1.0+ 10.1.2.3+ 6.0.8.10+
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Oracle Forms in Cloud Example
34
Infrastructure as a Service (IaaS - Compute)
Desktop
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Oracle Forms in Cloud Example
35
DB as a Service (DBaaS) Infrastructure as a Service (IaaS - Compute)
Desktop
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
The Path Forward
• Enhancements to improve usability in Cloud.
• UI enhancements.
• Improved administrative tools.
• Improved performance.
• Enhancements to client configurations.
• More ways to integrate.
• And many more…
36
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Oracle Forms 12c New Features Paper http://www.oracle.com/technetwork/developer-tools/forms/documentation
1
2
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
•Oracle Forms on Oracle Technology Network oracle.com/technetwork/developer-tools/forms
•Oracle Technology Network Forms Forum community.oracle.com/community/development_tools/forms
•Oracle Support support.oracle.com
• Follow us on Twitter @OracleFormsPM
Community Information
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Q & A • How do we achieve the independence to IE from Microsoft?
– In Forms 12, there are two browser-less configuration options. Those options are Java Web Start and Forms Standalone Launcher (FSAL).
• Can I scale the forms according to the screen resolution (automatically or via the set_xxxx_property procedures) in Forms 12c?
– You can programmatically adapt your application as you desire. The HEIGHT, WIDTH, X and Y positions are all settable. However, because Forms is intended to develop near pixel perfect layouts, the functionality is not offered automatically.
• How to migrate from 11 to 12c WebStart?
– There is no "migration" involved in using JWS. To use JWS, simply make a server side configuration change. The end-user tier requires no special changes. An configuration example is provided in the Forms Web Configuration (formsweb.cfg).
• How are new security features of RAS incorporated in the new forms version?
– RAS refers to db functionality and generally has nothing directly to do with Forms. That said, Forms/Reports 12.2.1.0 - 12.2.1.2 are based on Oracle Database (and pl/sql) 11.2.0.3. So, these versions are limited to the functionality of that db version. 12.2.1.3 is planned to be based on db 12.1.0.2.
39
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Q & A • Modern GUI, Possibilities of Integration?
– Oracle Forms allows for easily extending its UI using Java. With a combination of features delivered with the product and the ability to extend many of the existing objects (or create your own), the Oracle Forms UI is likely more extensible than any other similar technology.
• How long will Oracle support Forms?
– Oracle Forms 12c, part of FMW 12.2.1.x is planned to be supported until Oct 2020 (Oct 2023). Versions beyond that are planned, but no details or release dates have been made public at this time.
• Is there a way to run Forms/Reports without a repository database? Of course there is a database available but in most cases not with with character set AL32UTF8, so an additional db is required with add. license and administration cost.
– For runtime purposes, the Repository is required. This is a WLS requirement, used to enhance security and configuration integrity.
• Any experience of Forms 12c running on Debian-Linux?
– Debian is not a certified platform. Refer to the Supported System Configuration Matrix for the product version in question.
– http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html
40