Sunday, 13 February 2011

Blank Page Accessing R12 - 'Missing class: _RF' in OACore application.log


On 12.0, trying to connect to the home page, which shows a blank page.

Further more, the application.log file of the OACore OC4J shows the following error stack:

javax.servlet.ServletException: oracle.classloader.util.AnnotatedClassNotFoundException:

Missing class: _RF

Dependent class: oracle.jsp.runtimev2.JspPageInfo
Loader: oc4j:10.1.3
Code-Source: /oracle/apps/tech_st/10.1.3/j2ee/home/lib/ojsp.jar
Configuration: code-source in META-INF/boot.xml in /oracle/apps/tech_st/10.1.3/j2ee/home/oc4j.jar

This load was initiated at oacore.web.html.jsp8892557:0.0.0 using the loadClass() method.

The missing class is not available from any code-source or loader in the system.
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:387) 
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:478) 
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:401) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64) 
at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15) 
at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:627) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:870) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:451) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:299) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:187) 
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260) 
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:230) 
at oracle.oc4j.network.ServerSocketAcceptHandler.access$800(ServerSocketAcceptHandler.java:33) 
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:831) 
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303) 
at java.lang.Thread.run(Thread.java:595)

To solve this issue, there are two ways
1. Set the JSP compilation to Automatic
2. Recompile the JSP manually

How to set the JSP compilation to Automatic
Use the vi editor to edit the $CONTEXT_NAME.xml context file used by AutoConfig and change the value for "s_jsp_main_mode" from "justrun" to "recompile" (without the double quotes)

Backup the context file before editing it.

Run Autoconfig to propagate the changes to the configuration files.

Verify that now the
$INST_TOP/ora/10.1.3/j2ee/oacore/application-deployments/oacore/html/orion-web.xml has

init-param
[param-name]main_mode[/param-name]
[param-value]recompile[/param-value]
/init-param

Restart the Middle Tier services and access the applications to load JSP's which will cause them to be recompiled on the run.

After successfully accessing the applications, use the vi editor to edit the $CONTEXT_NAME.xml context file used by AutoConfig and revert the value for "s_jsp_main_mode" to "justrun" (without the double quotes) in order not to hamper the performance of your system.

Run AutoConfig to propagate the changes.

How to recompile the JSP manually

You can always use the this option to compile JSP's manually at any time.
Connect application tier using applmgr user and source the environment by running the script:

/oracle/apps/apps_st/appl/APPSSID_host.env

Run the commands
UNIX 
cd $FND_TOP/patch/115/bin
perl ojspCompile.pl --compile --flush -p 2

Windows
cd %FND_TOP%\patch\115\bin
- perl -x ojspCompile.pl –compile –flush

Restart the Middle Tier services.


Cheers!!!
SocialTwist Tell-a-Friend

Monday, 24 January 2011

Step by step process 11i to R12.1.1


Hi everybody, recently I have made complete iteration from fresh PROD 11i instance to R12.1.1 with database 11.2.0.2

I have used VMware for this iteration, the following step involved to achieve this upgrade from 11i to R12.1.1

OS – OEL 4.6
Memory 3GB
Instance 11i CU2
Database 9.2.0.6

My VMware installation has been running on P5 processor with 4GB memory under Windows 7 (64 bits) machine.
Before starting this iteration, I have enabled multi-org. So please follow multi-org enabled procedure prior to this step. 

The following steps performed successfully to complete this hectic upgrade from 11i instance to R12.1.1

•      Upgrade 9.2.0.6 to 10.2.0.4
–     Patches applied before 10g upgrade are 5478710, 4676589, 4653225
–     Changed some of the OS kernel parameters
–     Created new oracle home directory
–     Installed 10gR1 (software only)
–     Installed 10gR1 companion CD
–     Installed 10g patch set 3 (10.2.0.4)
•      Configuration section for 10g
–     Created nls/data/9idata
–     Run the script cr9idata.pl
–     Copied environment file from 9i home to 10g home and made changes to reflect the directory structure of 10g home
–     Copied TNS_ADMIN directory from 9i to 10 home and made changes according to new home
–     Copies admin directory from 9i to 10g home and make necessary changes
–     Shutdown 9i database and listener
–     Startup 10g listener
–     Upgraded  9i to 10g using dbua from 10g home
•      Shutdown database and listener
•      Create temporary tablespace
•      Apply RDBMS Patches
•      Fix Korean Lexers
•      Run Adgrants.sql
•      Grant create procedure privilege on CTXSYS
•      Implement and run Autoconfig
•      Gather statistics for SYS schema
•      Recreate grants and synonym for apps
•      Restart application server process
•      Preparing for the Upgrade R12.1.1
–     Apply AD.I.6
–     Apply TUMS utility
–     Run AD preparation scripts
Backup database and applications
•      Startup 11i Instance
•      Check for Invalid Objects etc...
•      Create R12 application user
•      Create R12 Base folder
•      OS  Kernel setting etc
•      (Refer Metalink: 761564.1  - Oracle E-Business Suite Installation and Upgrade Notes R12.1.1 for Linux x86)
•      Installation of R12.1.1 applications
•      Enable maintenance mode in R12
•      Apply AD 12.1.1 upgrade driver (7461070)
•      Source the R12 Applications environment file
•      Run the Patch Application Assistant
•      Run the adgrants.sql
•      Apply patch
•      Re-Create grants and Synonyms
•      Compile APPS schema
•      Modify tablespace
•      Run the American English upgrade patch driver 6678700
•      Review patch history and timing
•      Install R12.1.1 again for configuration purpose
•       Startup / shutdown applications and database
•       Try with autoconfig in both tiers
•       Restart services
•       Upgrade 10.2.0.4 to 11.2.0.2
•      Patches applied before  11gR2 upgrade are 9062910, 8919489, 9868229, 10024524
•      Autoconfig latest version with 9852070 and 9738085
•      OS kernel parameters for 11gR2
•      Created new oracle home directory
•      Installed 11gR2 (software only)
•      Installed 11g Examples CD
•       Configuration section for 11gR2
•      Created nls/data/9idata
•      Run the script cr9idata.pl
•      Copied environment file from 10g home to 11g home and made changes to reflect the directory structure of 11g home
•      Copied TNS_ADMIN directory from 10g to 11g home and made changes according to new home
•      Copies admin directory from 10g to 11g home and make necessary changes
•      Apply 11.2.0.2 RDBMS Patches – 4247037 and 10149223
•      Shutdown 10g database and listener
•      Startup 11g listener
•      Run  DBUA
•      Perform post-install instructions
•      Run adgrants.sql
•      Grant create procedure privilege on CTXSYS
•      Set CTXSYS parameter
•      Validate Workflow ruleset
•      Implement and run AutoConfig in the new Oracle home on the database server node.
•      Gather statistics for SYS schema
•      Re-create grants and synonyms
•      Restart Applications server processes
•      Synchronize Workflow views

Very detailed step-by-step notes with screen shot also prepared along with this iteration, if anybody looking for this iteration material or VMware copy don’t forget to drop me mail.


Cheers!!!
SocialTwist Tell-a-Friend

Wednesday, 19 January 2011

How to check if the Workflow Mailer is Running?

There are situations whether the Workflow Standalone Mailer processes are up & running without logging to the Application. Just follow the steps below

1. opmnctl status

2. Check the component container
ps -ef | grep OC4J_SECURITY

3. Is Java Mailer running ?
ps -ef | grep Service_Component_Container

or

SQL> select SC.COMPONENT_TYPE, SC.COMPONENT_NAME,
FND_SVC_COMPONENT.Get_Component_Status(SC.COMPONENT_NAME) COMPONENT_STATUS
from FND_SVC_COMPONENTS SC
order by 1, 2;


Cheers!!!
SocialTwist Tell-a-Friend

Thursday, 30 December 2010

Guidance or Training for Oracle Apps, OBIEE 11g, .NET and Java

Wishing you a Happy New Year 2011.
As a new year offers to my readers, me and my friend would like to announce free training for first 5 students in Oracle Apps, OBIEE 11g, .NET and Java technology as part of their project or assignment to university courses.

Hurry....


Cheers!!!
SocialTwist Tell-a-Friend

Wednesday, 29 December 2010

How to reset root password in OEL 5.5

Recently one of my colleague forgotten his Linux OEL 5.5 box root password, so he have been successfully re-login his Linux with password reset option available under single user mode.
The steps involved in this procedure as follows
Restart Linux Machine
You are presented with a prompt that looks similar to the following:
 
If you use the default boot loader, GRUB, you can enter single user mode. To do so, at the boot loader menu, use the arrow keys to highlight the installation you want to edit and type [a] to enter into append mode.
Press the Spacebar once to add a blank space, and then add the word single to tell GRUB to boot into single-user Linux mode. The result should look like the following:

Grub append> ro root=LABEL=/  rhgb quiet / single
Press [Enter] and GRUB will boot single-user Linux mode. After it finishes loading, you will be presented with a shell prompt similar to the following:
sh-3.2#
You can now change the root password by typing
passwd root
You will be asked to re-type the password for verification. Once you are finished, the password will be changed.
Now you can restart your machine by typing init 6, this command will restart immediately

Cheers!!!
SocialTwist Tell-a-Friend

Sunday, 26 December 2010

FNDCPASS Fails With "ORA-01017" Error When Changing Password with 11G Database

After upgrading to 12.0 and database from 10.2.0.2 to 11.1.0.6 getting 'ORA-01017' error when tried to change the application password using FNDCPASS utility.

The reason for this issue is that, database SEC_CASE_SENSITIVE_LOGON parameter defaults to TRUE in 11G.  When this occurs the password sensitivity conversion does not occur. Passwords that are input as lower case are automatically updated as upper case.  As a workaround set the parameter to FALSE in the init.ora, run autoconfig on application tiers and bounce the database.

Please refer Note 567116.1 Init.ora Parameter "SEC_CASE_SENSITIVE_LOGON"


Cheers!!!
SocialTwist Tell-a-Friend

Friday, 10 December 2010

R12 - How to enable Apache, OC4J and OPMN logging

Whenever raise SR with Oracle support for R12 application logging related issue, they will ask you to produce the logging details by enabling the Apache, OC4J and OPMN components and its services. Compared to 11i, Oracle Applications R12 introduces new easy way in order to enable logging for any of the components that are being used within it. The details about how to enable logging of these component you can also follow as explained in this post.

Oracle Configuration Home for Apache, OC4J & OPMN is
$ORA_CONFIG_HOME/10.1.3

Apache server is still being used and its configuration path is as following:
$ORA_CONFIG_HOME/10.1.3/Apache/Apache/conf

but OC4J services, by default Oracle Applications R12 creates 3 OC4J instances:
1. OACore: runs OA Framework-based applications
2. Forms: runs Forms-base applications
3. OAFM (Oracle Apps Fusion Middleware): runs web services, mapviewer, ascontrol

Configuration files path for the above 3 OC4J instances is:
$ORA_CONFIG_HOME/10.1.3/j2ee/[oacore, forms, oafm]/config

Configuration file used to adjust log file path for the above 3 OC4J instances is:
$ORA_CONFIG_HOME/10.1.3/j2ee/[oacore, forms, oafm]/application-deployments/[oacore, forms, oafm]/orion-application.xml

Log files types:
Oracle Applications / E-Business Suite R12 can be configured to generate one of two types of logs files as following:

1. Plain text (default):
         - No log rotation available
         - Log files need to be manually removed
2. Oracle Diagnostics Logging (ODL) XML:
         - Logs rotation based on filesize, directory size
3. R12 logs by default are configured to generate plain text

Log files locations:
All log files are written in one home ( $LOG_HOME ) which is by default the (logs) directory under ($INST_TOP ).

Please note that after enbaling the logging for any of the following services you have to bounce the services in order the changes to take effect.

Steps to enable Apache logging:
Apache Logging ( Plain Text )

1) Edit the file $ORA_CONFIG_HOME/10.1.3/Apache/Apache/conf/httpd.conf and set
LogLevel warn (s_apache_loglevel in context file)
2) Bounce the apache
3) Try to access the home URL or reproduce the issue.
4) Collect the following logfiles from $LOG_HOME/ora/10.1.3/Apache
  access_log.
  error_log.

Values that can be set to LogLevel variable in httpd.conf file
LogLevel = emerg,alert,crit,error,warn,notice,info,debug.

Apache Logging (ODL Logging)
1) Set the following parameters in file $ORA_CONFIG_HOME/10.1.3/Apache/Apache/conf/httpd.conf
OraLogMode [oracle|odl|apache]
OraLogSeverity [message type]:[message level]

Message type: INTERNAL_ERROR, ERROR, WARNING, NOTIFICATION & TRACE
Message level: 1-32 (1 most severe, 32 least)
2) Bounce the apache
3) Try to access the home URL or reproduce the issue.
4) Collect the logfiles from $LOG_HOME/ora/10.1.3/Apache/oracle

Steps to enable OC4J logging:

Log file path is specified in the file
$ORA_CONFIG_HOME/10.1.3/j2ee/[oacore, forms, oafm]/application-deployments/[oacore, forms, oafm]/orion-application.xml

1. Open the file to set the following log level $ORA_CONFIG_HOME/10.1.3/j2ee/[oacore, forms, oafm]/config/j2ee-logging.xml
2. Come to the location located as
logger name=’oracle’ level=’NOTIFICATION:1‘ …..
3. Set the desired logging using following values
message type:message level
Message type: INTERNAL_ERROR, ERROR, WARNING, NOTIFICATION & TRACE
Message level: 1-32 (1 most severe, 32 least)
4. Locate the log file path from the file
$ORA_CONFIG_HOME/10.1.3/j2ee/[oacore, forms, oafm]/application-deployments/[oacore,forms,oafm]/orion-application.xml
(Will be identified with tag : log file path=… /log)
5. Bounce the OC4J instance and reproduce the issue
6. Collect the log files from the following locations .

Plain text
$LOG_HOME/ora/10.1.3/j2ee/[oacore, forms, oafm]/[oacore,forms,oafm]_[default_group_1]/application.log

ODL Log
$LOG_HOME/ora/10.1.3/j2ee/[oacore, forms, oafm]/[oacore,forms,oafm]_[default_group_1]/log.xml

Steps to enable OPMN logging:
There are 3 log files generated:
          - (opmn.log): contains commands, exit status
          - (opmn.dbg): contains debug log messages
          - (opmn.out): contains stdout & stderr messages

1) Open the file $ORA_CONFIG_HOME/10.1.3/opmn/conf/opmn.xml to set the logging parameter
2) Logging is enabled per component (internal, ons or pm)
3) Levels that can be set are (component codes) as following:
   none, fatal, error, warn, notify          (written to .log)
   debug1, debug2, debug3, debug4    (written to .dbg)
Ex :
  opmnctl set target=log comp=warn
  opmnctl set target=debug comp=debug1
4) Bounce opmn services and reproduce the issue
5) Collect the opmn log files generated in $LOG_HOME/ora/10.1.3/opmn
   opmn.log , opmn.dbg and opmn.out

NOTE : Logfiles can be enabled for rotation using parameter s_opmn_log_rotation_size, s_opmn_log_rotation_time in opmn.xml

Components (Services) Status & Logs:
1. You can check the status of the services/components by passing 'status' parameter to any AD script in $ADMIN_SCRIPTS_HOME.

adapcctl.sh status

2. The various logs written while starting and stopping the services are created in ($LOG_HOME/appl/admin/log/), the logs files are:

TNS Listener Start/Stop log                          - adalnctl.txt
Fulfillment Server Start/Stop log                    - jtffmctl.txt
Oracle HTTP Server start/stop log                 - adapcctl.txt
Concurrent Managers and ICM start/stop log - adcmctl.txt
Forms OC4J start/stop log                           - adformsctl.txt
OACore OC4J start/stop log                         - adoacorectl.txtq
OAFM OC4J start/stop log                           - adoafmctl.txt
OPMN start/stop log                                    - adopmnctl.txt

(adstpall.log) and (adstrtal.log) will record the messages while starting or stopping all services.
See also
how to enable and logging Apache, OC4J and OPMN
How to enable and logging Apache and Jserv in 11i

Cheers!!!
SocialTwist Tell-a-Friend

Tuesday, 7 December 2010

How to find the SID information for a running request

Always good to know the long running request SID information of apps for analysis and troubleshoot purpose. The following query will help to identify that, pass long running 'request id' as parameter

SELECT a.request_id, d.sid, d.serial# ,d.osuser,d.process
FROM apps.fnd_concurrent_requests a,
apps.fnd_concurrent_processes b,
v$process c,
v$session d
WHERE a.controlling_manager = b.concurrent_process_id
AND c.pid = b.oracle_process_id
AND b.session_id=d.audsid
AND a.request_id = &Request_ID
AND a.phase_code = 'R';


Cheers!!!

SocialTwist Tell-a-Friend

Monday, 6 December 2010

How to Relink Oracle Database Software

Its better to know the relinking of oracle software manually when there is a situation like

  • An OS upgrade has occurred.
  • A change has been made to the OS system libraries.  This can occur during the application of an OS patch.
  • A new install failed during the relinking phase.
  • Individual Oracle executables core dump during initial startup.
  • An individual Oracle patch has been applied.

So, relinking Oracle manually is suggested way under the above circumstances.

Those who want to (or have been advised to) manually relink should follow the procedure below.

Step 1 - Log into the UNIX system as the Oracle software owner
Typically this is the user 'oracle'.

STEP 2 - Verify that your $ORACLE_HOME is set correctly:
echo $ORACLE_HOME

Step 3 - Verify and/or Configure the UNIX Environment for Proper Relinking
Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib

Step 4 - For all Oracle Versions and UNIX Platforms:
Verify that you performed Step 2 correctly:

env|pg  ....make sure that you see the correct absolute path for
$ORACLE_HOME in the variable definitions.

Step 5 - For all Oracle Versions and UNIX Platforms:
Verify umask is set correctly:
umask

This must return 022.  If it does not, set umask to 022.
umask 022
umask

Step 6 - Run the OS Commands to Relink Oracle:

Before relinking Oracle, shut down both the database and the listener.
The following commands will output a lot of text to your session window.  To capture this output for upload to support, redirect the output to a file.

For all UNIX platforms:

Oracle 7.3.x 
For executables:  oracle, exp, imp, sqlldr, tkprof

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install

For executables:  svrmgrl, svrmgrm

cd $ORACLE_HOME/svrmgr/lib
make -f ins_svrmgr.mk linstall minstall (linstall is for svrmgrl, minstall is for svrmgrm)

For executables:  sqlplus

cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install

For executables:  dbsnmp, oemevent, oratclsh

cd $ORACLE_HOME/network/lib
make -f ins_agent.mk install

For executables:  names, namesctl

cd $ORACLE_HOME/network/lib
make -f ins_names.mk install

For executables:  tnslsnr, lsnrctl, tnsping, csmnl, trceval, trcroute

cd $ORACLE_HOME/network/lib
make -f ins_network.mk install

Oracle 8.0.x 
For executables:  oracle, exp, imp, sqlldr, tkprof, mig, dbv, orapwd, rman, svrmgrl, ogms, ogmsctl

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install

For executables:  sqlplus
cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install

For executables:  dbsnmp, oemevent, oratclsh, libosm.so

cd $ORACLE_HOME/network/lib
make -f ins_oemagent.mk install

For executables:  tnslsnr, lsnrctl, namesctl, names, osslogin, trcasst, trcroute

cd $ORACLE_HOME/network/lib
make -f ins_network.mk install

Oracle 8.1.X, 9.X.X, 10.X.X or 11.X.X
*** NEW IN 8i AND ABOVE ***
A 'relink' script is provided in the $ORACLE_HOME/bin directory.
cd $ORACLE_HOME/bin
relink    
...this will display all of the command's options.
usage: relink
accepted values for parameter: all, oracle, network, client,  client_sharedlib, interMedia, precomp, utilities, oemagent, ldap

relink all  

11.2.X special instructions

In 11.2 relink script will only accept "all" as argument
 -or-
Since the 'relink' command merely calls the traditional 'make' commands, you still have the option of running the 'make' commands independently:

For executables:  oracle, exp, imp, sqlldr, tkprof, mig, dbv, orapwd, rman, svrmgrl, ogms, ogmsctl
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install

NOTE: After relinking the oracle executable, make sure that the  permissions on the executable are 6751 (-rwsr-s--x). If they are not, run the following command as the Oracle software owner:
cd $ORACLE_HOME/bin
chmod 6751 oracle

For executables:  sqlplus
cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install

For executables:  isqlplus   (Oracle9i and higher versions)

cd $ORACLE_HOME/sqlplus/lib
make -f ins_sqlplus.mk install_isqlplus

For executables:  dbsnmp, oemevent, oratclsh

cd $ORACLE_HOME/network/lib
make -f ins_oemagent.mk install

NOTE: After relinking the dbsnmp executable, it is necessary to run the following commands as root (so that the ownership/permissions on the executable are correct):

# cd $ORACLE_HOME/bin
# chown root dbsnmp
# chmod 6750 dbsnmp

For executables:  names, namesctl

cd $ORACLE_HOME/network/lib
make -f ins_names.mk install

For executables:  osslogin, trcasst, trcroute, onrsd, tnsping

cd $ORACLE_HOME/network/lib
make -f ins_net_client.mk install

For executables:  tnslsnr, lsnrctl

cd $ORACLE_HOME/network/lib
make -f ins_net_server.mk install

For executables related to ldap (for example Oracle Internet Directory):

cd $ORACLE_HOME/ldap/lib
make -f ins_ldap.mk install

How to Tell if Relinking Was Successful:

If relinking was successful, the make command will eventually return to the OS prompt without an error. There will NOT be a 'Relinking Successful' type message.

If You Receive an Error Message During Relinking:
Confirm that the message you received is an actual fatal error and not a  warning. Relinking errors usually terminate the relinking process and contain verbage similar to the following:
'Fatal error', 'Ld: fatal', 'Exit Code 1'
While warnings will look similar to: 'ld: warning: option -YP appears more than once, first setting taken' and can most often be ignored.

If you receive an error that terminates the relinking process, your first step should be to extract the relevant information about the error from the make output:

This can be broken down into three basic steps:
1. Identify the OS utility that is returning the error.
    'ld', 'make', 'cc', 'mv', 'cp', 'ar' are common sources.
2. Identify the type of error:
    'Permission Denied', 'Undefined Symbol', 'File Not Found' are common types.
3. Identify the files or symbols involved.


Cheers!!!

SocialTwist Tell-a-Friend

Sunday, 5 December 2010

Startup/Shutdown process of OBIEE 11g on Linux

As I have promised earlier post, I am writing the startup steps of OBIEE 11g on linux box. Before that make sure that FMW(Fusion Middle Ware) Repository database and the listener are up and running. If database status is running, we can start. Or else start the database and  listener now.

First step is to start the Weblogic server. As you may have noticed that the directory structures are totally different, so it will take sometime to get used with the new scripts and directories.

Startup scripts are located under $FMW_HOME/user_projects/domains/bifoundation_domain/bin

Setting the environment by running these two script
$ . setOBIDomainEnv.sh
$ . setDomainEnv.sh

Now you can startup the WLS:

Use the script startWeblogic.sh as shown below to start the WLS

. startWebLogic.sh -Dweblogic.managment.username=weblogic -Dweblogic.management.password=weblogic1 &

weblogic and weblogic1 are the username and password I have given during the OBIEE 11g installation. Make sure you use “&” at the end of the command so that the script runs in the background

2. Once WLS running status, you can Login to WLS Console:

Default port to login to the console is 7001 unless different ones are specified during the installation

Now goto http://[BIserver]:7001/em to access the enterprise manager to startup the rest of the services

Select from the menu Weblogic Server –> Control –> Startup to start the service

3. NodeManager – Node manager is a java utility that allows us to perform operations such as startup and shutdown for  Managed Server. So in order for us to remotely startup the bi_server we need the node manager utility up and running



Now to startup node manager, get back to a telnet session and go to $WLS_HOME/server/bin directory

Set environment

Run the script setWLSEnv.sh

$ . setWLSEnv.sh

Starting Nodemanager

$ . startNodeManager.sh &

Next is startup opmn services

cd $FMW_HOME/instances/instance1/bin
$ . opmnctl startall

Now Lets' try analytics url


Cheers!!!
SocialTwist Tell-a-Friend

Friday, 3 December 2010

Developer 6i Patch Set 19 upgrade with EBS 11i

As part of Extended support for 11i, upgrade Developer 6i patchset 19 is a must, this post will help to you do so. I am writing the  "step-by-step" upgrade instructions for linux box
*** All patches must be installed on all Application tier nodes
Stop all application processes by adstpall.sh
Apply the latest certified Developer 6i patch set 19 (6194129)
- Source applications environment (e.g source . /app/apps/ajiappl/APPSORA.env)
- Verify that $ORACLE_HOME is the 806_ORACLE_HOME
- Execute with applmgr user
$ unzip p6194129_60828_LINUX.zip
$ cd developer6i_patch19
$ ./patch_install.sh 2>&1 | tee patch_install_p19.log  
- Check patch_install_p19.log for any errors
- Execute the following to relink Procedure Builder, Forms, Graphics and Reports
$ cd $ORACLE_HOME/procbuilder60/lib; make -f ins_procbuilder.mk install
$ cd $ORACLE_HOME/forms60/lib;       make -f ins_forms60w.mk install
$ cd $ORACLE_HOME/graphics60/lib;    make -f ins_graphics60w.mk install
$ cd $ORACLE_HOME/reports60/lib;     make -f ins_reports60w.mk install


Apply patch 9863561
Unzip Patch file p9863561_60828_GENERIC.zip
$cd 9863561
   Backup the Forms class files
cp -r $ORACLE_HOME/forms60/java/oracle/forms/engine/Main.class $ORACLE_HOME/forms60/java/oracle/forms/engine/Main.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/engine/Main\$1.class $ORACLE_HOME/forms60/java/oracle/forms/engine/Main\$1.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/engine/RunformBundle.class $ORACLE_HOME/forms60/java/oracle/forms/engine/RunformBundle.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/AlertDialog.class $ORACLE_HOME/forms60/java/oracle/forms/handler/AlertDialog.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/BlockScroller.class $ORACLE_HOME/forms60/java/oracle/forms/handler/BlockScroller.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/CancelQueryDialog.class $ORACLE_HOME/forms60/java/oracle/forms/handler/CancelQueryDialog.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/ComponentItem.class $ORACLE_HOME/forms60/java/oracle/forms/handler/ComponentItem.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormCanvas.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormCanvas.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormWindow.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormWindow.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormPrintableImpl.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormPrintableImpl.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/TextComponentItem.class $ORACLE_HOME/forms60/java/oracle/forms/handler/TextComponentItem.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon.class $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon\$DeferredItem.class         $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon\$DeferredItem.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon\$1.class $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon\$1.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormsMouseWheelHandler.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormsMouseWheelHandler.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/IHandler.class $ORACLE_HOME/forms60/java/oracle/forms/handler/IHandler.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/MenuInfo.class $ORACLE_HOME/forms60/java/oracle/forms/handler/MenuInfo.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/FormMenu.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormMenu.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/HeavyBeanManager.class $ORACLE_HOME/forms60/java/oracle/forms/handler/HeavyBeanManager.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/VImage.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VImage.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/FScalingImageCanvas.class $ORACLE_HOME/forms60/java/oracle/forms/ui/FScalingImageCanvas.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider.class $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider\$MouseGrabRemover.class $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider\$MouseGrabRemover.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider\$MouseGrab.class $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider\$MouseGrab.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextArea.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextArea.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/SmartBar.class $ORACLE_HOME/forms60/java/oracle/forms/ui/SmartBar.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/FLWTextArea.class $ORACLE_HOME/forms60/java/oracle/forms/ui/FLWTextArea.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/ClipboardErrorUtils.class $ORACLE_HOME/forms60/java/oracle/forms/ui/ClipboardErrorUtils.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField\$NewlineDisplayFilter.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField\$NewlineDisplayFilter.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField\$FormsPWAccess.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField\$FormsPWAccess.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/mdi/MDIContainer.class $ORACLE_HOME/forms60/java/oracle/forms/ui/mdi/MDIContainer.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/mdi/MDIContainer\$1.class $ORACLE_HOME/forms60/java/oracle/forms/ui/mdi/MDIContainer\$1.class.PRE_BUG9863561
cp -r $ORACLE_HOME/forms60/java/oracle/forms/ui/delegates/VComponentDelegate.class $ORACLE_HOME/forms60/java/oracle/forms/ui/delegates/VComponentDelegate.class.PRE_BUG9863561


Special Instructions
 cd $ORACLE_HOME/forms60/java
 jar -xvf f60all.jar oracle/forms/ui/VBean.class
cd $Patch_HOME/9863561/oracle/forms/engine
cp Main.class $ORACLE_HOME/forms60/java/oracle/forms/engine/Main.class
cp Main\$1.class $ORACLE_HOME/forms60/java/oracle/forms/engine/Main\$1.class
 cp RunformBundle.class  $ORACLE_HOME/forms60/java/oracle/forms/engine/RunformBundle.class
cd $Patch_HOME/9863561/oracle/forms/handler
cp AlertDialog.class $ORACLE_HOME/forms60/java/oracle/forms/handler/AlertDialog.class
cp BlockScroller.class $ORACLE_HOME/forms60/java/oracle/forms/handler/BlockScroller.class
cp CancelQueryDialog.class $ORACLE_HOME/forms60/java/oracle/forms/handler/CancelQueryDialog.class
cp ComponentItem.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/ComponentItem.class
cp FormCanvas.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/FormCanvas.class
cp FormWindow.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/FormWindow.class
cp FormPrintableImpl.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/FormPrintableImpl.class
cp FormMenu.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/FormMenu.class
cp TextComponentItem.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/TextComponentItem.class
cp UICommon.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon.class
cp UICommon\$DeferredItem.class $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon\$DeferredItem.class
cp UICommon\$1.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/UICommon\$1.class
cp FormsMouseWheelHandler.class $ORACLE_HOME/forms60/java/oracle/forms/handler/FormsMouseWheelHandler.class
cp IHandler.class $ORACLE_HOME/forms60/java/oracle/forms/handler/IHandler.class
cp MenuInfo.class  $ORACLE_HOME/forms60/java/oracle/forms/handler/MenuInfo.class
cp HeavyBeanManager.class      $ORACLE_HOME/forms60/java/oracle/forms/handler/HeavyBeanManager.class
cd $Patch_HOME/9863561/oracle/forms/ui
cp VImage.class  $ORACLE_HOME/forms60/java/oracle/forms/ui/VImage.class
cp FScalingImageCanvas.class  $ORACLE_HOME/forms60/java/oracle/forms/ui/FScalingImageCanvas.class
cp FormMouseGrabProvider.class   $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider.class
cp FormMouseGrabProvider\$MouseGrabRemover.class  $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider\$MouseGrabRemover.class
cp FormMouseGrabProvider\$MouseGrab.class  $ORACLE_HOME/forms60/java/oracle/forms/ui/FormMouseGrabProvider\$MouseGrab.class
cp VTextArea.class    $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextArea.class
cp SmartBar.class   $ORACLE_HOME/forms60/java/oracle/forms/ui/SmartBar.class
cp FLWTextArea.class   $ORACLE_HOME/forms60/java/oracle/forms/ui/FLWTextArea.class
cp ClipboardErrorUtils.class    $ORACLE_HOME/forms60/java/oracle/forms/ui/ClipboardErrorUtils.class
cp VTextField.class   $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField.class
cp VTextField\$FormsPWAccess.class      $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField\$FormsPWAccess.class
cp VTextField\$NewlineDisplayFilter.class $ORACLE_HOME/forms60/java/oracle/forms/ui/VTextField\$NewlineDisplayFilter.class
cd $Patch_HOME/9863561/oracle/forms/ui/mdi
cp MDIContainer.class   $ORACLE_HOME/forms60/java/oracle/forms/ui/mdi/MDIContainer.class
cp MDIContainer\$1.class  $ORACLE_HOME/forms60/java/oracle/forms/ui/mdi/MDIContainer\$1.class
cd $Patch_HOME/9863561/oracle/forms/ui/delegates
cp VComponentDelegate.class   $ORACLE_HOME/forms60/java/oracle/forms/ui/delegates/VComponentDelegate.class

For ewt3.jar please follow these additional steps:
Backup the Forms java subtree and extract the changed files
  cd $ORACLE_HOME/forms60/java
  cp -r oracle/ewt oracle/ewt.PREBUG9863561
  jar -xvf $Patch_HOME/9863561/ewt3.jar
  rm META-INF/MANIFEST.MF
  rmdir META-INF
 Verify that the EWT version has been updated under the
cd $ORACLE_HOME/forms60/java
 ls -la oracle/ewt | grep 3_4_49
Now regenerate jar files using adadmin.
- Regenerate Jar files
  - Execute adadmin
  - Select the "Generate Applications Files menu" option
  - Select "Generate product JAR files"
  - Do you wish to force regeneration of all jar files? => Yes
  - Spot check that the JAR files have been generated by verifying the timestamp    
$ cd $OA_JAVA/oracle/apps/fnd/jar
$ ll fndforms.jar fndewt.jar

Apply patch 6125732 
- Unzip patch file + Apply patch
$ unzip p6125732_60828_LINUX.zip
$ cd 6125732
$ sh patch.sh

Apply patch 6857221 
- Unzip patch file + Apply patch
$ unzip p6857221_60828_LINUX.zip
$ cd 6857221
$ sh patch.sh
- Relink f60webmx for Oracle Applications
$ adrelink.sh force=y "fnd f60webmx"

Apply patch 5232832
Make a patch directory for this fix, and put your patch files in it:
$ cd $ORACLE_HOME
$ unzip p5232832_600_Linux.zip
$ cd 5232832
3) Copy your original librw60.a file in case you ever need it, get new file:
$ cd $ORACLE_HOME/lib
$ cp librw60.a librw60.a.PRE_5232832
$ ar -r librw60.a $Patch_HOME/5232832/rwffm.o
5) If you don't have genshlib in $ORACLE_HOME/bin directory then copy this file over there:
$ cp $Patch_HOME/5232832/genshlib $ORACLE_HOME/bin
$ chmod ug+x $ORACLE_HOME/bin/genshlib
6) Generate the shared libraries:
$ cd $ORACLE_HOME/lib
$ $ORACLE_HOME/bin/genshlib rw60 0

Relink the reports executables:
$ cd $ORACLE_HOME/reports60/lib
$ make -f ins_reports60w.mk install

Apply patch 8888124

 Unzip Patch file 8888124
$ cd 8888184
$ sh patch.sh

Apply patch 7329300
 Unzip Patch file
$ cd 7329300
$ sh patch.sh

Apply patch 6747939
 Unzip Patch file
$ cd 6747939
$ sh patch.sh
adrelink.sh force=y "fnd f60webmx"
Apply patch 7552880
 Unzip Patch file
$ cd 7552880
$ sh patch.sh
adrelink.sh force=y "fnd f60webmx"

If 11i.ATG_PF.H.RUP6 or above, you have to apply this ====
Apply patch 9094950
Unzip Patch file
$cd 9094950
  Adpatch using u9094950.drv
Relink applications executables
- Run adadmin
- Select (2) "Maintain Applications Files Menu"
- Select (1) "Relink Applications programs"
- List of product to link: fnd
- Generate specific executables …: Yes
- Relink with debug: No
- Enter executables to relink: f60webmx ar60run ar60runb ar60rund
==
Relink these executables by running adadmin
When the Main Menu appears select 'Maintain Applications Files Menu' and then select 'Relink Applications Program'
Answer the questions below as follows, in order to select the individual executables for relinking.
Enter list of products to link ('all' for all products)[all] : fnd
Generate specific executables for each selected product [No] ? y
Relink with debug information [No] ? n
(You will then be offered a list of executables that are available for relinking)
Enter executables to relink, or enter 'all' [all] : f60webmx ar60run ar60runb ar60rund *
* In a multi-node configuration, not all these executables exist on each node. The list of executables will show those that do exist on the node you are currently running on, and only those should be entered to avoid errors.

Apply patch  9935935 (Apps Interoperability)
- Unzip patch file
$ unzip p9935935_11i_GENERIC.zip
- Enable maintenance mode: adadmin -> (5) Change Maintenance Mode -> (1) Enable Maintenance Mode
- apply patch with adpatch
- Disable maintenance mode: adadmin -> (5) Change Maintenance Mode -> (2) Disable Maintenance Mode
Verify your upgrade
- Check the timestamp for the following files:
$ cd $OA_JAVA/oracle/apps/fnd/jar
$ ll fndforms.jar fndewt.jar
If the timestamp is not current - run adadmin => Maintain Applications Files => Generate Product JAR Files.
Start all applications processes (adstrtall.sh)
- You can also verify your upgrade by login to forms responsibility -> Help -> About Oracle Applications
  You should see: Oracle Forms version: 6.0.8.28.0


Cheers!!!

SocialTwist Tell-a-Friend