If you are upgrading to Oracle Database 12c for an Oracle Utilities Application Framework based product then you can use Oracle Enterprise Manager to manage your Information Lifecycle Management based data management solution.
To use it you simply install Oracle Enterprise Manager and then register the 12c database instance (PDB and non-PDB are supported) and then when selecting the database target use the Information Lifecycle Management menu option from the Administration --> Storage menus. For example:
This means that you can use Oracle Enterprise Manager as a viable alternative to ILM Assistant for Oracle Database 12c targets.
Last week I conducted three sessions on a number of topics. The presentations used in those sessions are now available from the Sessions --> Content Catalog on the Oracle OpenWorld site.Just search for my name (Anthony Shorten) to download the presentations in PDF format.
The sessions available are:
- Cost-Effective Data Management for Oracle Utilities Applications
- Streamline Utility IT Operations with Oracle Enterprise Manager
- Addressing Cybersecurity in Oracle Utilities Applications
I know a few customers and partners came to me after each session to get a copy of the presentation. They are now available as I pointed out.
A few times I have encountered issues and problems at customers that can defy explanation. After investigation I usually find out the cause and in some cases it is the way the implementation has created the data in the first place. In the majority of these types of issues, I find that interfaces or even people are using direct INSERT statements against the product database to create data. This is inherently dangerous for a number of reasons and therefore strongly discouraged:
- Direct INSERT statements frequently miss important data in the object.
- Direct INSERT statements ignore any product business logic which means the data is potentially inconsistent from the definition of the object. This can cause the product processing to misinterpret the data and may even cause data corruption in extreme cases.
- Direct INSERT statements ignore product managed referential integrity. We do not use the referential integrity of the data within the database as we allow extensions to augment the behavior of the object and determine the optimal point of checking data integrity. The object has inbuilt referential integrity rules.
To avoid this situation we highly recommend that you only insert data through the object and NOT use direct INSERT statements. The interface to the object can be direct within the product or via Web Services (either directly or through your favorite middleware) to create data from an external source. Running through the object interface ensures not only that the data is complete but takes into account product referential integrity and conforms to the business rules that you configure for your data.
Take care and create data through the objects.
The ConfigTools facility allows customers to implement customizations to Oracle Utilities products. A Best Practices whitepaper has been released to provide implementers additional advice and techniques for this facility to use it effectively.
The whitepaper covers such topics as:
- Overview of each ConfigTools objects such as Business Objects, Business Services, Query Zones, UI Maps, Data Areas etc including additional advice and techniques for efficient use.
- Using Fields, Managed Content, Standard components, Lookups and Extended Lookups for building flexible solutions
- Developing Multi-lingual solutions
I will be presenting three sessions at Oracle Openworld this year. Feel free to come to the sessions if you are attending and have a chat with me on your implementations and general feedback.
The three sessions I am conducting are:
- Cost-Effective Data Management for Oracle Utilities Applications [CON7815]
- Addressing Cybersecurity in Oracle Utilities Applications [CON7822]
- Streamline Utility IT Operations with Oracle Enterprise Manager [CON7961]
I will also be around the Oracle Utilities area for general discussions with customers and also be appearing at demo grounds.
See you there.
The Oracle Utilities family of products use Oracle standard technology such as the Oracle Database and Oracle Fusion Middleware (a.k.a. Oracle WebLogic). As we use those technologies the features and techniques for those products in Oracle's Maximum Availability Architecture can be applied to Oracle Utilities products.
Oracle Maximum Availability Architecture is a set of processes and guidelines for implementing high availability solutions. For Oracle Utilities products the following MAA solutions are applicable:
Other MAA documents are also applicable for Oracle Exadata, Oracle ExaLogic and Oracle VM. The guidelines and processes can be used to design and configure specific MAA solutions for Oracle Utilities products at your site.
Unless otherwise marked the technical whitepapers in the table below are applicable for the following products (with versions):
- Oracle Utilities Customer Care And Billing (V2 and above)
- Oracle Utilities Meter Data Management (V2 and above)
- Oracle Utilities Mobile Workforce Management (V2 and above)
- Oracle Utilities Smart Grid Gateway (V2 and above) – All Adapters
- Oracle Utilities Business Intelligence (all versions) - Not Oracle Business Intelligence for Utilities
- Oracle Utilities Operational Device Management (V2 and above)
- Oracle Public Service Revenue Management (all versions)
- Oracle Revenue Management and Billing (all versions)
This whitepaper currently only applies to the following products:
- Oracle Utilities Customer Care And Billing
- Oracle Enterprise Taxation Management
- Oracle Public Service Revenue Management
- Oracle Revenue Management and Billing
- Concepts - General Concepts and Performance Troublehooting processes
- Client Troubleshooting - General troubleshooting of the browser client with common issues and resolutions.
- Network Troubleshooting - General troubleshooting of the network with common issues and resolutions.
- Web Application Server Troubleshooting - General troubleshooting of the Web Application Server with common issues and resolutions.
- Server Troubleshooting - General troubleshooting of the Operating system with common issues and resolutions.
- Database Troubleshooting - General troubleshooting of the database with common issues and resolutions.
- Batch Troubleshooting - General troubleshooting of the background processing component of the product with common issues and resolutions.
A set of whitepapers on how to manage customization (code and data) using the tools provided with the framework. Topics include Revision Control, SDK Migration/Utilities, Bundling and Configuration Migration Assistant. The individual whitepapers are as follows:
- Concepts - General concepts and introduction.
- Environment Management - Principles and techniques for creating and managing environments.
- Version Management - Integration of Version control and version management of configuration items.
- Release Management - Packaging configuration items into a release.
- Distribution - Distribution and installation of releases across environments
- Change Management - Generic change management processes for product implementations.
- Status Accounting - Status reporting techniques using product facilities.
- Defect Management - Generic defect management processes for product implementations.
- Implementing Single Fixes - Discussion on the single fix architecture and how to use it in an implementation.
- Implementing Service Packs - Discussion on the service packs and how to use them in an implementation.
- Implementing Upgrades - Discussion on the the upgrade process and common techniques for minimizing the impact of upgrades.
This is a guidelines whitepaper for products shipping with the Multi-Purpose Listener.
This whitepaper currently only applies to the following products:
- Oracle Utilities Customer Care And Billing
- Oracle Enterprise Taxation Management
- Oracle Public Service Revenue Management
- Oracle Revenue Management and Billing
This whitepaper covers the Configuration Migration Assistant available for Oracle Utilities Application Framework V22.214.171.124.0. This replaces ConfigLab for some products.
1506855.1 Integration Reference Solutions
This whitepaper covers the various Oracle technologies you can use with the Oracle Utilities Application Framework. 1544969.1 Native Installation Oracle Utilities Application Framework This whitepaper describes the process of installing Oracle Utilities Application Framework based products natively within Oracle WebLogic. 1558279.1 Oracle Service Bus Integration This whitepaper describes direct integration with Oracle Service Bus including the new Oracle Service Bus protocol adapters available. Customers using the MPL should read this whitepaper as the Oracle Service Bus replaces MPL in the future and this whitepaper outlines how to manually migrate your MPL configuration into Oracle Service Bus.
Note: In Oracle Utilities Application Framework V126.96.36.199.0, Oracle Service Bus Adapters for Outbound Messages and Notification/Workflow are available 1561930.1 Using Oracle Text for Fuzzy Searching This whitepaper describes how to use the Name Matching and fuzzy operator facilities in Oracle Text to implemement fuzzy searching using the @fuzzy helper fucntion available in Oracle Utilities Application Framework V188.8.131.52.0 1606764.1
Audit Vault Integration This whitepaper describes the integration with Oracle Audit Vault to centralize and separate Audit information from OUAF products. Audit Vault integration is available in OUAF 184.108.40.206.0 and above only.
Migrating XAI to IWS
Migration from XML Application Integration to the new native Inbound Web Services in Oracle Utilities Application Framework 220.127.116.11.0 and above.
Private Cloud Planning Guide
Planning Guide for implementing Oracle Utilities products on Private Clouds using Oracle's Cloud Foundation set of products.
ILM Planning Guide
Planning Guide for Oracle Utilities new ILM based data management and archiving solution.
ILM Implementation Guide for Oracle Utilities Customer Care and Billing
Implementation Guide for the ILM based solution for the Oracle Utilities Customer Care And Billing.
In the Technical Best Practices whitepaper ((Doc Id: 560367.1), available from My Oracle Support, there is a section (Password Management Solution for Oracle WebLogic) that mentions a sample password change JSP that used to be provided by BEA for WebLogic. That site is no longer available but the sample code is now available on this blog.
Now, this is an example only and is very generic. It is not a drop
and install feature that you can place in your installation but the
example is sufficient to give an idea of the Oracle WebLogic API
available for changing your password. It is meant to allow you to
develop a CM JSP if you required this feature.
There is NO support for this as it is sample code only. It is merely an example of the API available. Link to this code is here. Examine it to get ideas for your own solutions.The API used will most probably work for any security system that is configured as an authentication security provider.
BatchEdit is a new wizard style utility to help you build a batch architecture quickly with little fuss and technical knowledge. Customers familiar with the WLST tool that is shipped with Oracle WebLogic will recognize the style of utility I am talking about it. The idea behind BatchEdit is simple. It is there to provide a simpler method of configuring batch by boiling down the process to its simplest form. The power of the utility is the utility itself and the set of preoptimized templates shipped with the utility to generate as much of the configuration as possible but still have a flexible approach to configuration.
First of all, the BatchEdit utility, shipped with OUAF 18.104.22.168.0 and above, is disabled by default for backward compatibility. To enable it you must execute the configureEnv[.sh] -a utility and in option 50 set the Enable Batch Edit Functionality to true and save the changes. The facility is now available to use.
Once enabled, the BatchEdit facility can be executed using the bedit[.sh] <options> utility where <options> are the options you want to use with the command. The most useful is the -h and --h which display the help for the command options and extended help. You will find lots of online help in the utility. Just typing help <topic> you will get an explanation and further advice on a specific topic.
The next step is using the utility. The best approach is to think of the configuration is various layers. The first layer is the cluster. The next layer is the definition of threadpools in that cluster and then the submitters (or jobs) that are submitted to those threadpools. Each of those layers has configuration files associated with them.
Before understanding the utility, lets discuss a few basic concepts:
- The BatchEdit allows for "labels" to be assigned to each layer. This means you can group like configured components together. For example, say you wanted to setup a specific threadpoolworker for a specific set of processes and that threadpoolworker had unique characteristics like unique JVM settings. You can create a label template for that set of jobs and dynamically build that. At runtime you would tell the threadpoolworker[.sh] command to use that template (using the -l option). For submitters the label is the Batch Code itself.
- The BatchEdit will track if changes are made during a session. If you try and exit without saving a warning is displayed to remind you of unsaved changes. Customers of Oracle Enterprise Manager pack for Oracle Utilities will be able to track configuration file version changes within Oracle Enterprise Manager, if desired.
- BatchEdit essentially edits existing configuration files (e.g. tangosol-coherence-override.xml for the cluster, threadpoolworker.properties for threadpoolworker etc). To ascertain what particular file is being configured during a session use the what command.
- BatchEdit will only show the valid options for the scope of the command and the template used. This applies to the online help which is context sensitive.
The BatchEdit utility has two distinct modes to build and maintain various configuration files.
- Initiation Mode - The first mode of the utility is to invoke the utility with the scope or configuration file to create and/or manage. This is done by specifying the valid options at the command line. This mode is recorded in a preferences file to remember specific settings across invocations. For example, once you decide which cluster type you want to adopt, the utility will remember this preference and show the options for that preference only. It is possible to switch preferences by re-invoking the command with the appropriate options.
- Edit Mode - Once you have invoked the command, a list of valid options are presented which can be altered using the set command. For example, the set port 42020 command will set the port parameter to 42020. You can add new sections using the add command, and so forth. Online help will show the valid commands. The most important is the save command which saves all changes.
To use the command effectively here is a summary of the process you need to follow:
- Decide your cluster type first. Oracle Utilities Application Framework supports, multi-cast, uni-cast and single server clusters. Use the bedit[.sh] -c [-t wka|mc|ss] command to set and manage the cluster parameters. For example:
$ bedit.sh -c Editing file /oracle/FW42020/splapp/standalone/config/tangosol-coherence-override.xml using template /oracle/FW42020/etc/tangoso l- coherence-override.ss.be Batch Configuration Editor 1.0 [tangosol-coherence-override.xml] ---------------------------------------------------------------- Current Settings cluster (DEMO_SPLADM) address (127.0.0.1) port (42020) loglevel (1) mode (dev) > help loglevel loglevel -------- Specifies which logged messages will be output to the log destination. Legal values are: 0 - only output without a logging severity level specified will be logged 1 - all the above plus errors 2 - all the above plus warnings 3 - all the above plus informational messages 4-9 - all the above plus internal debugging messages (the higher the number, the more the messages) -1 - no messages > set loglevel 2 Batch Configuration Editor 1.0 [tangosol-coherence-override.xml] ---------------------------------------------------------------- Current Settings cluster (DEMO_SPLADM) address (127.0.0.1) port (42020) loglevel (2) mode (dev) > save Changes saved > exit
- Setup your threadpoolworkers. For each group of threadpoolworkers use the bedit[.sh] -w [-l <label>] where <label> is the group name. We supply a default (no label) and cache threadpool templates. For example:
$ bedit.sh -w Editing file /oracle/FW42020/splapp/standalone/config/threadpoolworker.properties using template /oracle/FW42020/etc/threadpoolw orker.be Batch Configuration Editor 1.0 [threadpoolworker.properties] ------------------------------------------------------------ Current Settings minheap (1024m) maxheap (1024m) maxperm (256m) daemon (true) rmiport (6510) dkidisabled (false) storage (true) distthds (4) invocthds (4) role (OUAF_Base_TPW) pool.1 poolname (DEFAULT) threads (5) pool.2 poolname (LOCAL) threads (0) > set pool.2 poolname FRED Batch Configuration Editor 1.0 [threadpoolworker.properties] ------------------------------------------------------------ Current Settings minheap (1024m) maxheap (1024m) maxperm (256m) daemon (true) rmiport (6510) dkidisabled (false) storage (true) distthds (4) invocthds (4) role (OUAF_Base_TPW) pool.1 poolname (DEFAULT) threads (5) pool.2 poolname (FRED) threads (0) > add pool Batch Configuration Editor 1.0 [threadpoolworker.properties] ------------------------------------------------------------ Current Settings minheap (1024m) maxheap (1024m) maxperm (256m) daemon (true) rmiport (6510) dkidisabled (false) storage (true) distthds (4) invocthds (4) role (OUAF_Base_TPW) pool.1 poolname (DEFAULT) threads (5) pool.2 poolname (FRED) threads (0) pool.3 poolname (DEFAULT) threads (5) > set pool.3 poolname LOCAL Batch Configuration Editor 1.0 [threadpoolworker.properties] ------------------------------------------------------------ Current Settings minheap (1024m) maxheap (1024m) maxperm (256m) daemon (true) rmiport (6510) dkidisabled (false) storage (true) distthds (4) invocthds (4) role (OUAF_Base_TPW) pool.1 poolname (DEFAULT) threads (5) pool.2 poolname (FRED) threads (0) pool.3 poolname (LOCAL) threads (5) > set pool.3 threads 0 Batch Configuration Editor 1.0 [threadpoolworker.properties] ------------------------------------------------------------ Current Settings minheap (1024m) maxheap (1024m) maxperm (256m) daemon (true) rmiport (6510) dkidisabled (false) storage (true) distthds (4) invocthds (4) role (OUAF_Base_TPW) pool.1 poolname (DEFAULT) threads (5) pool.2 poolname (FRED) threads (0) pool.3 poolname (LOCAL) threads (0) >
- Setup your global submitter settings using the bedit[.sh] -s command or batch job specific settings using the bedit[.sh] -b <batchcode> command where <batchcode> is the Batch Control Id for the job. For example:
$ bedit.sh -b F1-LDAP File /oracle/FW42020/splapp/standalone/config/job.F1-LDAP.properties does not exist - create? (y/n) y Editing file /oracle/FW42020/splapp/standalone/config/job.F1-LDAP.properties using template /oracle/FW42020/etc/job.be Batch Configuration Editor 1.0 [job.F1-LDAP.properties] ------------------------------------------------------- Current Settings poolname (DEFAULT) threads (1) commit (10) user (SYSUSER) lang (ENG) soft.1 parm (maxErrors) value (500) >
The BatchEdit facility is an easier way of creating and maintaining the configuration files with little bit of effort. For more examples and how to migrate to this new facility is documented in the Batch Best Practices for Oracle Utilities Application Framework based products (Doc Id: 836362.1) whitepaper available from My Oracle Support.
The Oracle Public Sector Revenue Management product team have released a series of training videos for the Oracle Utilities Application Framework ConfigTools component. This component allows customers to use meta data and scripting to enhance and customize Oracle Utilities Application Framework based solutions without the need for Java programming.
The series uses examples and each recording is around 30-40 minutes in duration.
The channel for the videos is Oracle PSRM Training. The videos are not a substitute for the training courses available, through Oracle University, on ConfigTools, but are useful for people trying to grasp individual concepts while getting an appreciation for the power of this functionality.
At time of publication, the recordings currently available are:
- Creating the Registration Form Type
- Creating the Registration Form User Interface
- Creating the Registration Form
- Developing the Create Person Algorithm
- Separating the Business and Individual Registration
- Adding Id Type and Value to Registration Form
- Validating the Registration Form
- Adding Address Information to Registration Form
- Adding Related Persons to Registration Form
- Access Control and the Registration Form
- Customizing Registration Form Type Navigation and Menus
- Customizing Registration Form Navigation and Menus
- Customizing Registration From a Query Portal
- BO Inheritance
A new configuration facility is available s part of Oracle Utilities Application Framework V22.214.171.124.0 called Batch Edit. One of the concerns customers and partners asked us to address is to make configuration of the batch architecture simpler and less error prone. A new command line utility has been introduced to allow customers to quickly and easily implement a robust technical architecture for batch. The feature provides the following:
- A simple command interface to create and manage configurations for clusters, threadpools and submitters in batch.
- A set of optimized templates to simplify configuration but also promote stability amongst configurations. Complex configurations can be error prone which can cause instability. These templates, using optimal configurations from customers, partners and Oracle's own performance engineer group, attempt to simply the configuration process, whilst supporting flexibility in configuration to cover implementation scenarios.
- The cluster interface supports multi-cast and unicast configurations and adds a new template optimized for single server clusters. The single server cluster is ideal for use in non-production situations such as development, testing, conversion and demonstrations. The cluster templates have been optimized to support advanced facilities in Oracle Coherence to use the high availability and optimize network operations
- The threadpoolworker interface allows implements to configure all the attributes from a single interface including for the first the the ability to create cache threadpools. These special type of threadpoolworker dod not run submitters but allow implementations to reduce the network overheads for individual components communicating across a cluster. They provide a mechanism for Coherence to store and relay state of all the components in a concentrated format and also serve as a convenient conduit for the Global JMX capability.
- The submitter interface allows customers and implementors to create global and job specific properties files.
- Tagging is supported in the utility to allow groups of threadpools and submitters to share attributes.
- The utility provides helpful context sensitive help for all its functions, parameters and configurations with advanced help also available.
Over the next few weeks I will be publishing articles highlighting features and functions of this new facility.