Custom Look and Feel (CLAF) in Apps 11i (Framework Pages)

This post covers overview of Custom Look and Feel (CLAF) in Self Service Pages (Oracle Apps 11i) and steps to troubleshoot look & feel related issues.
.

Custom Look and Feel functionality in 11i  Framework Pages

1.User type in username/password to login to Apps 11i

2. System checks value of profile option Oracle Applications Look and Feel at User Level (if blank then); Responsibility Level (if blank then);  Server Level and finally Site Level.
(lets assume value of this profile option is my_claf)

3.Web Server (Jserv component of Apache) then search for page layout template from renderercomponent in $OA_HTML/cabo/lafs/[claf_name].xml   (in our case my_claf.xml)

<renderers>
<renderer name=”pageLayout”>
<template name=”pageLayout.uit“></template>
</renderer>
</renderers>

4.System picks page layout from $OA_HTML/cabo/template/[claf_name]/pageLayout.uit(my_claf) and apply to user page

5.System picks style sheet from $OA_HTML/cabo/styles/[claf_name].xss(my_claf.xss) and apply to user page.
.

Terminology / Important files

A. Renderer– renderer defines where items are placed on screen/page and HTML around it.
B. Styles – defines how common components (tabs, buttons) look like.
C. Profile OptionOracle Applications Look and Feel
Value in above profile options determine Look and Feel in Oracle Apps 11i (You can Set profile option at User, Responsibility, Server, Site level)
D. CLAF related directory on Application Tier
i) Styles– $OA_HTML/cabo/styles
ii) Templates– $OA_HTML/cabo/templates
iii) Cache – $OA_HTML/cabo/styles/cache
                    – $OA_HTML/cabo/images/cache

iv) Log file related to issues around Look and Feel –
$IAS_ORACLE_HOME/Apache/Jserv/logs/Jserv.log (enable logging in jserv.properties change log=false to log=true)

E. Define new Look & Feel – Responsibility -> Customizing Look and Feel Administrator

Trouble shooting Look and Feel Issues on Framework Pages 

Users reported that header (custom GIF – company logo) was missing from OA Framework Pages.

Step 1 – I enabled Extra Logging by updating log=true in jserv.properties
Step 2
– Bounced Apache using adapcctl.sh
Step 3 – Reproduced issue by accessing self service page
Step 4 – Checked logs in jserv.log and found below error

[598] Binding param 1: HOMEPAGE:1259
[599] Binding param 2: 1259
[12/06/2008 09:03:09:614 BST] OAPageLayoutBean, localName=’pageLayout’
[12/06/2008 09:03:09:626 BST] null
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at HTTPClient.ExtBufferedInputStream.fill(ExtBufferedInputStream.java:198)
at HTTPClient.ExtBufferedInputStream.read(ExtBufferedInputStream.java:335)
at HTTPClient.StreamDemultiplexor.read(StreamDemultiplexor.java:514)
at HTTPClient.RespInputStream.read(RespInputStream.java:199)
at HTTPClient.RespInputStream.read(RespInputStream.java:158)
at HTTPClient.Response.readResponseHeaders(Response.java:1176)

Steps 5 – Custom GIF (company logo) was urlInclude(relative path like $OA_HTML/companyLogo.gif ) and 11i was configured to use SSL. While searching Oracle Forums found this 

Steps 6 – Changed urlInclude to use absolute path (like https://istore.myserver.com/OA_HTML/companyLogo.gif ) ; bounced Apache and this time there was new error message in jserv.log

[12/06/2008 10:15:49:273 BST] OAPageLayoutBean, localName=’pageLayout’
[12/06/2008 10:15:49:305 BST] null
java.net.UnknownHostException: istore.myserver.com
at java.net.InetAddress.getAllByName0(InetAddress.java:1016)
at java.net.InetAddress.getAllByName0(InetAddress.java:981)
at java.net.InetAddress.getAllByName(InetAddress.java:975)
at HTTPClient.HTTPConnection.getSocket(HTTPConnection.java:1907)
at HTTPClient.HTTPConnection.sendRequest(HTTPConnection.java:2922)
at HTTPClient.HTTPConnection.handleRequest(HTTPConnection.java:2150)
at HTTPClient.HTTPConnection.setupRequest(HTTPConnection.java:3561)

Step 7 – Added istore.myserver.comin /etc/hosts (Linux Server) file on Web Node, bounce Apache
Step 8 – This time logo was visible

Note * This note is to give you direction on how to troubleshoot Look and Feel (LAF) related issues for OA Framework pages and may not cover all aspects of LAF.

.

References

  • 210670.1  How To Change Look And Feel and Colors Of Oracle Applications 11.5
  • 566578.1  Change the look-and-feel of Oracle Applications Using CLAF(UI)
  • 741054.1  Framework Pages Have Different Look and Feel in IE7
  • Martin Millmore’s Blog 

About the Author Atul Kumar

Oracle ACE, Author, Speaker and Founder of K21 Technologies & K21 Academy : Oracle Gold Partner specialising in Design, Implement, and Trainings.

follow me on:

Leave a Comment:

5 comments
alan telford says November 26, 2008

Atul,

thanks for putting this up.

There’s one confusing mistake in it

4.System picks page layout from $OA_HTML/cabo/template/[claf_name]/pageLayout.uit(my_claf) and apply to user page

should be

4.System picks page layout from $OA_HTML/cabo/templates/[claf_name]/pageLayout.uit(my_claf) and apply to user page

(the directory is cabo/templates, not template)

cheers

Alan

Reply
Sridhar says January 5, 2011

Hi Atul,

I have secussfully built and tested the CLAF object for Oracle Irec on internal server. However, when my DBA install the pack on external DMZ Irec server, I am not getting the custom header and footer logos.

Can you please let me know, is there special setup is required for external servers…

Thanks,
Sridhar

Reply
Atul Kumar says January 5, 2011

@ Sridhar,
I had similar issue ask your DBA to troubleshoot using “Trouble shooting Look and Feel Issues on Framework Pages ” section above .

Reply
Sridhar says January 5, 2011

Hi Atul,

Thanks. The above debug steps are for R11i. Does it work for R12?.

Thanks,
Sridhar

Reply
Atul Kumar says January 6, 2011

@ Sridhar,

No steps for R12 are different. JServ is replaced by OC4J in R12 so enable debug on oacore OC4J in R12 using Metalink Note 422419.1 R12, 12.1.1 – How To Enable and Collect Debug for HTTP, OC4J and OPMN

Then see error message. In my view root cause is still same.

Reply
Add Your Reply