300 likes | 471 Views
FRM-99999. Taming FRM-99999 and Other Forms Server R.6 Issues. Peter Koletzke Howard Fujimoto. Paper 306. Applicable Quote. I am caught like a beast at bay. Somewhere are people, freedom, light, But all I hear is the baying of the pack, There is no way out for me.
E N D
FRM-99999 Taming FRM-99999and Other Forms Server R.6 Issues Peter Koletzke Howard Fujimoto Paper 306
Applicable Quote I am caught like a beast at bay. Somewhere are people, freedom, light, But all I hear is the baying of the pack, There is no way out for me. —Boris Pasternak .
FRM-99999 Survey • Deploying on Forms Server? • 6.0.5? • 6.0.8 (6i)? • Have never seen the FRM-99999 beast? • Need to move to Forms Server? • Role? • DBA? • Developer? • Other?
Agenda • Overview • Setup checklist • Application checklist • Server and network checklist
Products We Used • Oracle Application Server (OAS) 4.0.8 • Sun Solaris • Spyglass • Now transitioned to Internet Application Server - IAS 1.0.2 (Apache) • Developer Forms Server • R.6.0.5, patch 4a • Now called Forms Server • Part of IAS Note: Examples use UNIX syntax. NT has similar commands although they may have different names.
What Does FRM-99999 Mean? • Generic error • Usually some problem with the Forms Server • More common in 6.0 • With R.6i, some specific errors are separated • You will get a second, more-meaningful error number with FRM-99999 • There is no single answer • You need to know what to check • There are a number of different areas • You need to understand the architecture
File System Java Files Forms Files GIF Files WWW browser Application Server Web Listener Database Server Client Database Forms Server Listener Applet (JInit) Forms RuntimeEngine
Main Problem Areas • You have to check the entire path • Incorrect setup • Easy to determine • You probably missed a step • Forms application problem • Form startup error • Form runtime error • Network or hardware issue • Easy to blame, but rare • There are some things you can test
Agenda • Overview • Setup checklist • Forms application checklist • Server and network checklist
Setup Checklist • Run the OAS Admin in a browser • Usually port 8888 or 9999 • Connect as ADMIN • Check the listener • HTTP Listeners node in the navigator • Check the port number and host • Check the virtual path directory mapping • Use “/” slashes for UNIX directories • Use “\” slashes for NT directories • Use “/” slashes for virtual directories UNIX NT
Setup Checklist • Be sure the listener is shut down before making changes to any setting • Otherwise, you may get orphaned processes • These have to be killed manually from the command line • The reason is that the name of the listener process ID file may be truncated if the listener is active when it is changed • This file is defined in the Network screen under the listener in the OAS Admin application
Setup Checklist • Check the application • Application type = C Web • Check the cartridge • Virtual path mapping • Shared object • Name of supporting library • Entry point • Name of the function • Cartridge parameters • Really important Note: The virtual path must not use a trailing slash “/”.
Cartridge Parameters • Forms Server looks for certain parameters • These are passed to the Forms runtime • Many of these can be in the startup HTML file as well, for example: • code = entry point of runform environment • codebase = virtual path for runform environment • baseHTML = directory and name of the startup HTML file • serverPort = Forms Server listener port number • module = Forms runtime parameter for the first form that will start up
Setup Checklist • Check the Forms Server setup • Use the Forms Server Setup wizard • This works in 6i and later releases of 6.0 • Some problems with early releases of 6.0 • Examine the startup HTML file for completeness - easiest to follow an example • 6i installs two files into forms60\admin\server directory • BASEJINI.HTM for use with Jinitiator • BASE.HTM for use without JInitiator • Contain values used for form startup • Pull values from FORMSWEB.CFG file • The .CFG file makes it easy to change startup parameters
Setup Checklist • Check that the forms files are in the correct directory • Be sure that the environment variables are set correctly • FORMS60_MAPPING - the webtemp directory assigned in the listener directories area (actual directory name such as “/home/user/temp”) • FORMS60_OUTPUT - also the webtemp directory (a virtual directory such as “/webtemp/”) • FORMS60_PATH - location of the .FMX forms files • UI_ICON - location of the .GIF icon files Note: NT uses “\” slashes instead of “/” slashes to represent actual directories.
Agenda • Overview • Setup checklist • Forms application checklist • Server and network checklist
Forms Application Checklist • Check the HTML startup file • Be sure the form is compiled correctly • All attached libraries must be compiled • All database code that the form calls must be compiled • Run a test form • Create a simple form with an ON-LOGON trigger containing NULL (no logon) • Make sure that the URL is correct • Check the host, port, virtual directory, startup file name, parameters • Are the forms in the proper directory?
URL with Parameter Passing 3. The startup file with replaceable parameters 1. The server and listener 4. Parameters and values 2. The cartridgevirtual path WWW browser 1 3 4 2 4 http://myhost:8050/prodforms/startup.html?p_empid=101&p_system=HR Web Listener Startup HTML Form1 Forms Server p_empid=101p_system=HR p_empidp_system
Forms Application Checklist • Turn on the client browser Java console to debug startup problems • Oracle JInitiator Control Panel in the Windows start menu • A messagewindow will pop up when you accessthe URL • Check the messages for hints on the failure
Forms Application Checklist • Forms code may cause the FRM-99999 error • If it is associated with a 1412 error • You tried to programmatically set the scrollbar position but the block has no scrollbar • If it is associated with a 1413 error • You have tried to get the scrollbar position of a block that has no scrollbar
Agenda • Overview • Setup checklist • Forms application checklist • Server and network checklist
Server and Network Checklist • Check the listener • In OAS Admin, click the HTTP Listeners node • There should be a green flag by the listener • A red flag for applications is OK • Click the Monitor icon (hourglass) • You can check for new connections with this tool • Be sure that the Forms Listener is running ps -ef | grep f60 • This will show Forms Server processes that are running - includes the port number • Bounce the main admin listener (8888) • owsctl stop then owsctl start
Server and Network Checklist • Reload the site • Use the OAS Admin screens for this • Restarts all listeners and servers • Restart the Forms server f60ctl stop port=9000 f60ctl start port=9000 • UNIX command to test the network health ping -s myhost.corp.com 1472 -5 • Tests a data transmission of 1472 bytes 5 times • Check network collisions and traffic netstat -I
Server and Network Checklist • On UNIX, use iostat to determine the workload • Use top to determine the CPU drains • Be sure that the Forms Server user has read and write permissions on: • Directories in the virtual directory list • Temporary directories • Be sure that SQL*Net or Net8 are set up correctly on the app server • Test using SQL*Plus • Run tnspingsid on the app server where “sid” is the database
Server and Network Checklist • Set the Forms Server log • Use a parameter “log=logfile” when starting the Forms Server on the command line f60ctl start port=9000 log=svr9000.log • This can also be used for the f60svrm server process (ifsrv60 on NT) • Be sure the FORMS60_MAPPING environment variable is set • Otherwise images may be “broken” (displayed incompletely) • Assign it to a virtual directory • Use the right kind of slashes (“/”)
FRM-99999 Summary • This is easier than it seems • More often than not, everything will be OK • When you have to troubleshoot, suspect all areas • Use standard troubleshooting logic • Check the white paper • Details on the settings • List of further reading • Do not despair the long nights and the “baying of the pack”
Author Information Please fill out the evals - paper 306 Peter Koletzke http://www.mvsn.com http://ourworld.compuserve.com/homepages/Peter_Koletzke Howard Fujimoto http://www.mvsn.com • Our Books • Oracle Developer Advanced Forms and Reports • Designer Handbook, 2nd Ed. • Co-authored by Dr. Paul Dorsey • Osborne McGraw-Hill, Oracle Press