zoukankan      html  css  js  c++  java
  • [Doc ID 433386.1]JSP Pages Hanging in R12 After Removing Cached Class Files in _pages

    In this Document

      Symptoms
      Changes
      Cause
      Solution
      References

    Applies to: 

    Oracle Applications Technology Stack - Version 12.0.6 to 12.1.3 [Release 12.0 to 12.1] Information in this document applies to any platform. ***Checked for relevance on 03-April-2013***

    Symptoms

    In Release 12 after removing a compiled class files from the JSP pages in the directory $COMMON_TOP/_pages and then bouncing the 10GiAS server, calling JSP pages results in a hanging 'blank' screen.

    In Release 11i when performing the same steps, new class files are created automatically when the JSP page is called from a browser session and JSP was rendered fine.

    In Release 12 it's observed that when calling the JSP no class file is created in the directory $COMMON_TOP/_pages

    Changes

    Removing a class files from $COMMON_TOP/_pages

    Cause

    The root-cause of the hang is the fact that the JSP is not 'translated' into the associated class file in the _pages directory. This is a mandatory step for processing the JSP page.

    The reason this is not happening in R12 is because of the following setting the $INST_TOP/ora/10.1.3/j2ee/oacore/application-deployments/oacore/html/orion-web.xml

       <init-param>

             <param-name>main_mode</param-name>

             <param-value>justrun</param-value>

          </init-param>

       </servlet>
    When main_mode = justrun the OC4J container running the OACoreGroup is told that no compilation on the fly is allowed and only (pre)compiled classes are picked up. Since these have been removed, the processing of the JSP page is blocked.

    Solution

    Please note that if the Patch 18936791 (R12.FWK.B.delta.4) has been applied, then the Patch 21971771 also needs to be applied.

    Use the ojspcompile.pl perl script to perform a manual pre-compilation of the JSP pages. The following command will compile all the JSP pages and build up the JSP cache again.

    Unix: # perl $FND_TOP/patch/115/bin/ojspCompile.pl --compile --flush -p 2

    Windows: C:> perl -x <FND_TOP>patch115inojspCompile.pl -compile -flush

    This utility is also used by the AD utilities to perform this action such as when patches are applied that replace one or more JSP pages.  See Note:215268.1 for other command line options and examples.

    An alternative is to change the value for the main_mode parameter to recompile (instead of justrun)

    This can be achieved with the following steps

    • Use the Context editor to change the value for "s_jsp_main_mode" in the <SID>_<hostname>.xml file used by autoconfig and change value from justrun to recompile
    • 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>   

    • Test the scenario failing before.
    • See that now a new _<jspname>.class is created when the JSP page is called.
    For production environment the manual 'ojspcompile.pl' method is recommended for the following reasons
    • With 'justrun' a fixed set of JSPs are used which will not automatically change. With 'recompile' the JSP pages replacing existing ones will recompile automatically while the environment is up and running.  This may lead to errors for the users when compilation fails or in having different versions of the JSP being used within a single session.
    • Using 'justrun' improves performance by skipping the check for compilation being needed.
  • 相关阅读:
    字体下载大宝库:30款好看的免费英文字体
    jQuery Mapael – 呈现动态的矢量地图
    Qt:用 __thread 关键字让每个线程有自己的全局变量
    从C++到Qt(舍弃IDE或qmake、cmake等工具的束缚,尝试通过几个例子)
    C++11(及现代C++风格)和快速迭代式开发
    EventBus + Redis发布订阅模式
    并发、并行和高并发
    Span<T>和Memory<T>
    Lucene.Net做一个简单的搜索引擎-全文索引
    技术架构演变
  • 原文地址:https://www.cnblogs.com/pompeii2008/p/5691911.html
Copyright © 2011-2022 走看看