Main

September 08, 2006

Oracle Diagnostics

Oracle Diagnostics

Oracle diagnostics is one of the tools that aim at achieving enhanced supportability for your Oracle Applications instance.

Oracle diagnostics provides a series of predefined test that can be run against your ebusiness suite to determine any performance or configuration bottlenecks. The diagnostics tests are divided into various categories ranging form technical and functional areas. Separate test groups are created for each application with oracle applications like General Ledger, Applications DBA etc. For each product the tests are further categorized into problem areas like installation issues, data issues customizations etc.

A periodic execution of these test is recommended by oracle to check the sanity of your Oracle Applications instance over a period of time.

Oracle diagnostics test are mostly written in JSP,JAVA or PLS/SQL with the user interface mostly being web based in the form of HTML or JSP.(Though there is also a command line interface available).

The web based interface for Oracle diagnostics can either be launched from Oracle Applications Manager or via the CRM administrators console (http://<host>.<domain>/OA_HTML/jtflogin.jsp).

The web base interface can be launched either as standalone HTML user via the URL http://<hots>.<domain>:<port>/OA_HTML/jtfqalgn.htm or as an administrative -level user through the CRM administrators console or Oracle Applications Manager Console.

The command line interface can be used by the following command

java -DJTFDBCFILE= -Dframework.Logging.system.filename=
-Dservice.Logging.common.filename= oracle.apps.jtf.regress.qatool.QAConsole

Apart from the predefined test Oracle diagnostics also allows for creating custom test and unit test cases. You can also create most of these test using user Interface also that is without any coding involved.

Oracle diagnostics tools are come as a product within Oracle Applications with the product name IZU. In case your Oracle Applications instances does not have this product, you must first install this product using AD Splicer.

The results of the diagnostics test can be viewed as a report in a web based user interface for a particular diagnostics test session. This output can be saved to the local PC and uploaded to metalink for further support. The diagnostics test results and the associated statistics are also available at the database level in the following tables JTF_DIAGNOSTIC_LOG and JTF_DIAGNOSTIC_STATS.

Further you can also use Oracle Applications Manager to schedule automatic execution of diagnostics tests.

Since the results of the diagnostics test might contain potentially sensitive data segregated diagnostic roles are available to restrict the type of test available to a particular user. Diagnostic roles include Super User, Application User, End User and Anonymous user.

The latest release of Oracle diagnostics is 2.4,once you have installed/available IZU in Oracle Applications you can apply the latest Oracle diagnostics 2.4 test using adpatch. However its important to note that Oracle Diagnostics can be installed only on systems 11.5.4 and higher. Also JDK 1.3.1 or higher is recommend to use oracle diagnostics.

This current version of Oracle diagnostics tools are launched directly within Oracle applications. Once you have completed the installation of Oracle diagnostics you can assign the seeded responsibility 'Oracle Diagnostics Tool' to any valid ebusiness suite user.

You can refer to metalink note 358831.1 for details instructions on doing this.

Complete reference on Oracle Diagnostics is also available in the Oracle Applications Supportability Guide in the applications documentation CD.

September 05, 2006

XML Gateway

XML Gateway

It feels good to be back in business that is back to blogging. A huge backlog of mails kept me occupied yesterday, today i will talk briefly about Oracle XML Gateway as component of Oracle Applications. This is only indented to be a conceptual introduction and for the complete details you must refer to the user guide or appropriate metalink note.

XML Gateway is a tool that facilitates the communication between the Oracle E business suite and third party applications or trading partners in the form of well formatted XML messages.

XML Gateway ensures that both business to business (B2B) and Application to Application(A2A) requirements are met. Further XML Gateway ensures that the messages that are generated or consumed are compliant with the standards set by the Open Applications Group. You can find more information on these standards at http://www.openapplications.org

Oracle XML Gateway works with Oracle Workflow to consume events raised and generate XML messages. These messages are further propagated using Oracle Advanced queuing technology and Oracle Transport agent(OTA).

Inbound and outbound messages are managed in queue table using Oracle Advanced Queuing.

The OTA is used to deliver messages to a trading partner over HTTP or HTTPs. An OTA servlet running with Oracle Applications is also responsible for receiving inbound documents sent by the trading partner.

Oracle XML gateway can be considered as a form of EDI, whereas in a normal EDI transaction the operation happens in a batch in case of XML gateway the message are more real time as they are based of events.

Oracle XML gateway makes use of the uses Web Services Description Language (WSDL) to facilitate trading partners to communicate with Oracle Applications. Trading partners can use third party web service tools to call the web services publish by your Oracle Applications.

It also uses the Java Messaging Service(JMS) to send messages between Oracle Applications and trading partners.

At the core of Oracle XML Gateway lies the execution engine, this is responsible for interacting with other oracle technologies like Oracle Workflow etc to consume and generate messages between trading partners as in the case of a B2B communication.

Oracle XML Gateway supports the SMTP, HTTP, HTTPS, JMS transport protocols for message delivery and consumption.

Oracle XML Gateway uses the Message Designer to define message maps, message maps are required to specify the data source and data target for the document. You can also use Map creation wizards that are provided for this purpose.

The message designer and wizard is a client software which is required to be installed separately on the client PCs.

Message map files have a .xgm extension. Message maps that are created on the loacle /client system have to be loaded to the middle tier APPL_TOP.

The java LoadMap and java DeleteMap are used to load and delet message maps on the middle tier server.

Its important to note that before you crate your message maps for your document you must ensure that the document conforms to the Document Type Definition(DTD).Pre defined DTD are installed and loaded in the $APPLTOP of the middle Tier. You can however load custom DTD that you can define using the Oracle Message Designer to the middle tier as well as modify existing DTD and delete existing DTD.

The DTD files are created with the .dtd extension.

The java DeleteDTDFromClob and java LoadDTDToClob are used for deleting and loading DTDs respectively.For complete syntax and example to load and delet DTDs refer to the Oracle XML Gateway users guide.

You can use the Oracle Applications responsibility 'XML Gateway Responsibility' to define trading partners and transactions.

In releases 11.5.7 onwards XML gateway is distributed as a part of AOL and does not require to be licensed or installed separately. For prior releases XML Gateway can be installed by applying patch 2440710.

The metalink note 152775.1 contains full instructions for installing and configuring Oracle XML Gateway.

You can verify your XML gateway installation byu executing the following sql script

SQL> $ECX_TOP/patch/115/sql/ECXTEST.sql

this will create a OUTnnn.xml if the installation and configuration of XML Gateway is successful.

August 21, 2006

Oracle Jinitiator

Oracle Jinitiator

Oracle Applications is based upon a thin client architecture. On the desktop Tier you need almost nothing.. Well almost, it does require a certified web browser and the Oracle Jinitiator.

Oracle Jinitiator is a software that provides the JVM to run oracle form based products which run in the form of a form client applet.The oracle Jinitiator uses its own JVM instead of the browsers JVM.It is isntalled as a plugin ( as in the case of mozilla, Netscape or firefox) or as an Active X component (in case of Internet Explorer).

When Oracle Applications is accessed for the first time from a client PC the Jinitiator is downloaded and installed on the client PC.It is not used for Self Service Web Applications, The JInitiator is invoked only upon clicking a form based application.

After Jinitiator is installed it downloads the form client applet along with the commonly used JAR files, this is done to reduce the network traffic to download JAR files form the server every time.

Jinitiator also performs JAR caching, applet caching and incremental JAR loading to improve applications performance.
These JAR files are commonly stored under the users profile directory with a folder named Oracle Jar Cache.

The Oracle Jinitiator executable is stored on the location $OA_HTML/oajinit.exe

Oracle Jinitiator allows only trusted JAR files to run within its JVM. This trust is established by using digital signatures. In the current version of Oracle Applications the JAR files are automatically signed with the digital signatures during the install of Oracle Applications using rapidwiz. However you can still change your digital signature and repackage your oajinit.exe for security reasons.

During the installation process rapidwiz automatically creates a file in the applmgr user $HOME directory called identitydb.obj, this file has a reference to the SID of the database instance.

If there is a mismatch between this file on the server and that on the clinet PC it often results in the yellow bar problem.

The following files are created automatically by rapidwiz in the current version of Oracle Applications

$APPL_TOP/admin/appltop.cer

$APPL_TOP/admin/adsign.txt

$HOME(applmgr)/identitydb.obj

To create a new digital certificate you can use the adjkey command, while the adjbuild.sh is used to repackage your jinitiator exe.You can also regenerate your JAR files using ADADMIN.

A Jinitiator package should typically contain the certificate and the obj file along with the executable.

In previous versions of Oracle Applications (earlier to 11.5.9) an unsigned JAR file would result in a yellow bar problem, but in the current release of Oracle Application attempting to load a forms with an unsigned JAR file would fail with an a java security exception error.

The latest certified versions of Oracle Jinitiator is 1.3.1.26 to run with Oracle E-business Suite 11.5.10, the least certified version is 1.1.8.16 which is used with release 11, though you can use version 1.1.8.X to access your 11i applications it is recommended that you upgrade your Jinitiator to the latest supported version 1.3.1.X.

You can follow the metalink note id 124606.1 to upgrade your Jinitiator.

An important fact to remember is that any patch applied through adpatch which contains JAR files, these new JAR files are not signed with the digital signature, after the patch is applied adpatch will regenerate all the JAR files and these new JAR files will be signed and trusted to run within the Jinitiator.

To see a list of supported browsers that are certified to access E-Business Suite reffer to metalink Note id 285218.1.

August 16, 2006

XML Publisher

XML Publisher

One of the good things that were introduced in 11.5.10 was XML publisher (XDO).Though you can install XML publisher with any version of 11i after applying the require pre requisite patches, it comes bundled with 11.5.10 version of Oracle Applications onwards.

XML publisher is a java based tool which uses data definitions and templates to generate a output of a report in a desired format such as in PDF. It is based on the W3C Extensible Style sheet Language (XSL) and uses XSLFO to convert data into a formatting object. A strong feature of the XML publisher is that it allows extensive customization of Oracle Applications reports by making use of templates without requiring high level of technical skills.

You can install XML publisher during the Oracle Applications (11.5.10) installation or register the product later on using license manager through Oracle Applications Manager (OAM).

In case your oracle Applications release is 11.5.9 or earlier you must follow the steps stated in metalink note id 278727.1 to install XML Publisher.

The XML publisher also comes with a desktop component. Two main components of the XML publisher desktop component are template builder and template viewer.

The template builder can be integrated with desktop tools like word. Once installed, you get additional features to automate the process of template creation like generation of SQL etc.

The XML publisher essentially comprises of the following modules

Data Definition-The XML engine acts as a single point to fulfill all reporting needs for an organization.

Data Layout/Templates-Templates and the final layout are managed within the XML publisher using a Template Manager, these can be customized using desktop tools like MS Word, excel or Adobe Acrobat. The template manager is also responsible for registering your new templates before they can be used with XML publisher.

Translation - The XML publisher uses the translation handler to do the required translation at runtime. It can also convert the output into a XLIFF format which can be used by 3rd party translation companies.

Delivery - The delivery manager is responsible to deliver the output to different destinations like printers,EDI,email etc. The delivery manager also provides flexibility by delivering the same output to different destinations like HTML format can be sent to email while a PDF format sent to the printer.

XML publisher allows conditional formatting of the output by using XSL or XSL:FO code. Additionally XML publisher can also be used to perform b2b communication by using the XML Data Engine.

As i stated before the XML publisher can also be used to generate output that can be used for EDI or EFT (Electronic Funds Transfer).To use this feature you must use a eText template. These templates are comprised of a series of tables which contain commands and data field definitions.

If you have applied the consolidated update 1 or above you can generate the output using XML publisher through the concurrent request directly by selecting the appropriate template in the concurrent program definition. Incase you have not applied the CU 1 you must first run the concurrent request to generate the XML report and then run a concurrent request to publish the request.

The behavior of XML publisher can be controlled through a set f properties, these properties can be set through the XML publisher administrator interface or you can use the XML publisher properties file xdo.cfg. This file can be located at /resource or alternately at JRE_TOP>/jre/lib.

To check weather XML publisher is installed or not you can query the FND_PRODUCT_INSTALLATIONS table or you can lookup the reports in Oracle Applications Manager. You can find out the version for your XML publisher from the output of your report or from MetaInfo.class file.

$OA_JAVA/oracle/apps/xdo/common/MetaInfo.class.

August 11, 2006

Oracle Applications Manager.

Oracle Applications Manager.

The Oracle Applications Manager(OAM) provides a console to effectively manage, monitor, configure and troubleshoot an Oracle Applications environment.
The console is HTML based and as such does not require any additional software excpet the browser.
One of the key features of OAM is the Applications Dashboard which provides information on E-Business Suite installation,including summaries of current status, performance, critical activities, diagnostics, business flows, and security.

In Oracle Applications Manager 2.1.1, there are three System Administrator type responsibilities to use when accessing Oracle Applications Manager.


These Oracle Applications responsibilities are:

System Administrator - this responsibility has access to all functionality in OAM.
OAM Read Only Mode - this responsibility provides administrators with view-only access to most of the data in OAM. This responsibility does not provide access to critical actions such as Stop Services and Edit Configuration Parameters.
OAM Patch History - administrators with this responsibility can view the Applications Dashboard and Patch History pages.

The OAM is also used in conjunction with autoconfig for making changes to the application and DB tier context files.

OAM also provides advanced configuration wizards that allow you to perform advanced configurations to your E-Business Suite like SSL /SSL Accelerator conversion, Forms Listener servlet configuration and Apache Jserv load balancing.

OAM provides for a in depth monitoring of your Oracle Applications environment.OAM can also be used to monitor your forms listener servlet if you have configured your forms listener to run as a servlet.

You can also get detailed view of the Oracle Applications technology stack components like jserv memory usage, database connection pool details etc.

Additionally OAM can also be used to monitor your concurrent manager and concurrent requests.

In my first post i had talked about Generic Service Management(GSM), in case you have implemented generic service management you can monitor and control your different Oracle Applications services through OAM.

OAM also provides various features that aid in patch management process. There are various patch reports like applied patches which give details of the patches applied along with the timing reports and the changes they have made to the file system. This is a feature that i am sure DBAs who have worked on releases prior to 11i would surely appreciate.

Also included in the latest version of OAM after features like patch wizard and support cart which can be used with metalink services and aid in resolving service requests.

Cloning is also supported from OAM, currently though you cannot perform merging APPL_TOPS(Multi Node to single node cloning) from OAM.

Oracle Diagnostics can also be run from OAM. Oracle Diagnostics enables testing, identifying and reporting functional problems through a web-interface. This tool allows invoking test cases interactively using custom input values or through batch modeusing pre-registered input values.

For more details on Oracle Diagnostics, please see Metalink Note: 262006.1

You can also extend the functionality of OAM by using your custom SQL scripts to run with Oracle Applications Manager.

You can use OAM with any version of Oracle Applications 11i starting form 11.5.1. The latest version of OAM is 2.1.1 whichcan be obtained by applying Oracle Applications Manager Mini-pack 11i.OAM.H.However if you have already applied 11i.ATG_PF.H,11i.FND.H or on Oracle Applications 11.5.10 or higher you do not need to explicitly apply the 11i.OAM.H mini pack.

The metalink note 258330.1 contains details on this pack.


If you are installing OAM from the patch you can either configure it manually by editing the zone.properties and jserv.properties or by using autoconfig.

The metalink note 201703.1 contains details on installing and configuring OAM.
After you have configured OAM it is important that you set your DISPLAY environment variable correctly in your jserv.properties file to enable all the graphs within OAM to be displayed correctly.

Example: wrapper.env=DISPLAY=myacme:0.0

Once OAM has been installed you can acees it from either the Oracle Applications sign on page, from any user with the system administration responsibility or from the following URL http://<host>:<port>/servlets/weboam/oam/oamLogin

Continue reading "Oracle Applications Manager." »

August 09, 2006

OracleAS Web Cache

OracleAS Web Cache

Delevring a content rich site always involves a tradeoff with performace.Oracle AS Web Cache aims to significantlly reduce this tradeoff.

The aim of my current post is give a brief introduction into the faetaures and capabalities of OracleAS Web Cache.

OracleAS Web Cache improves performance of complex applications. Web caching moves frequently used content closer to the user, reducing page building tasks from the application server therby decreasing page load times.

Another feature of OracleAS Web Cache is that it provieds for caching of both static and dynamic web pages allowing scaling of applictions that are planned to be deployed.The dynamic content caching is achived as OracleAS Web Cache employes an advanced validation machanisam to maintain consistency with origin data sources like file systems,content management tools,content feeds and databases.This is further achived as Oracle As Web Cache supports ESI standards. ESI stands for Eege Side Includes which is an open specification for a simple markup language that enables dynamic page fragmentation, caching, and assembly. It improves the performance and reduces the cost of dynamic content creation.
More information on ESI can be found at http://www.esi.org/

Additionally OracleAS Web Cache allows HTTP and HTTPS content caching.Also Oracle As Webcache allows session related caching rules (which is maintatining session tracking without compromiosing on the caching) and Multi version cahing rules(Caching multiple versions for the same URL)

To make use of Oracle AS Web Cacheing you must upgarde your Oracle Applications to use Oracle Appliction Applications Server 9.0.2, the latest certified version however is 10gAS.

OracleAs Web Cache acn also be used to implment a reverse proxy in typical DMZ configurations.Wehn a user sends a request to the Web Cache via the load balanceer or DNS server the web cacahe sneds the request to the application server if it cannot find a chached page for the request,however if it does find a cached page the web cache will deliver the same directly to the browser.

You can also implemet Web Cache Clustering by configuring multiple instances of OracleAS Web Cache.These provide for a failover in case one of the Web Cache cluster member fails.The cache cluster members poll the failed Web cache server for its current status until it is reachable again.Apart from failover cache clustering also aloow to cache extra content by disturbuting the cache load across multiple Web Caches.OracleAS Web Cache uses the relative capacity of each cache to automatically distribute ownership of objects among the cache cluster members.

OracleAS Web Cache can also be used to do load balancing for Oracle Applications. It provides for Stateless Load Balancing and Stateful (Session Binding) Load balancing.

You can specify the Web Cache to compress both cachable and non cachable objects,in such a scenerio the web cache will compress the opbeject based on the object type and the browser type.It uses the GZIP algorithm for this purpose.

You can also go through the OracleAS 10g Web Cache FAQ available through metalink.

Due to the extensive deployment of OracleAS Web Cache it is essential for us to secure our Web Cache. Currently OracleAs web Cache security can be implemented using Restricted Adfministration,SSL and SSL Accleration.
Reffer to Securing OracleAS Web Cache for more information.