Wednesday, May 30, 2012

Discoverer Plus from EBS R12.1.3 - java.lang.NullPointerException

Hi All


Here the new issue that I found after upgrade to EBS R12.1.3.
We have a lot of functions that helps users to open the discoverer reports per organization via Discoverer Plus. After we finished upgrade and updated the ICX: Discoverer Launcher and ICX: Discoverer Viewer Launcher profiles I found very strange issue:
When User (that not an EUL owner and Discoverer Administrator) try to open the discoverer via EBS function , he get an error java.lang.NullPointerException.
After restarting the APPL Tier and clear the cache I started to get the FULL error:



Exception found : 
java.lang.NullPointerException
at oracle.apps.fnd.util.URLEncoder.encode(URLEncoder.java:60)
at _OracleOasis._jspService(_OracleOasis.java:662)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:259)
at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:51)
at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:193)
at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:284)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:198)
at com.evermind.server.http.EvermindPageContext.forward(EvermindPageContext.java:395)
at _RF._jspService(_RF.java:225)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:379)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:619)


Cause
The e-BS system profile option "Java Look and Feel" (short name FND_LOOK_AND_FEEL) is null (i.e. it is not set).
Regarding the URL, any strings specified by the profile option will be added to the URL.
In both cases, it is also possible that the file appsweb.cfg changes the Java Look and Feel.
Discoverer has also been known (in 11i at least) to benefit if the profile option Self Service Accessibility Features is set to Standard Accessibility.


Solution
The fix for this issue is in 11782912 Patch . Users who have applied this patch should not experience the issue. 
Workaround for users who cannot apply the patch:
1. Ensure that the value of the Java Look and Feel profile option FND_LOOK_AND_FEEL is not null, i.e. set it to a valid value from the List of Values.
2. If the URL changes, ensure that the profile option does not include the string &LookAndFeelName=OracleLookAndFeel . If it does, it will be added from here into the URL. 
3. In either case, ensure that the e-BS configuration file appsweb.cfg does not update the profile option or include the string &LookAndFeelName=OracleLookAndFeel . 


Useful documentation:
Java Look and Feel settings cause java.lang.NullPointerExcerption or java.lang.NoSuchFieldError when trying to start Discoverer from e-Business Suite [ID 554817.1]

Good Luck ...

No comments:

Post a Comment