2

Oracle Forms 10gアプリケーションをAPEX 4.1に移行しています。

いくつかのフォームを APEX に含める必要があります。

APEX リージョンから呼び出されるPL/SQL 関数call_form(以下を参照) があります。この関数は、単にアプレットを記述してフォームをロードし、フォーム名をパラメータとして渡します。

動作しますが、常に Forms サービスをリロードし、毎回約10 秒かかります。毎回、Oracle Application Server Forms Services のロゴが表示されます。

ご利用者様には大変ご迷惑をおかけしております…

毎回jarファイルをリロードしているためだと思ったので、アプレットを書き込むときにキャッシュオプション( cache_optioncache_archive、...)を使用してファイルをJVMにキャッシュしようとしましたが、成功しませんでした。

毎回アプレットのセキュリティ警告が表示されません。Javaキャッシュ ビューアーで、4 つの jar ファイルfrmall.jarfrmwebutil.jarFDialogPJC.jar、およびjacob.jarを確認できます。

フォームを呼び出してからページをリロードすると、webutil が2 回読み込まれるように見えるJava コンソールの内容を次に示します。

 RegisterWebUtil - Loading WebUtil Version 10.1.2.3
 proxyHost=null
 proxyPort=0
 connectMode=HTTP, native.
 Forms Applet version is : 10.1.2.3
 RegisterWebUtil - Loading WebUtil Version 10.1.2.3
 proxyHost=null
 proxyPort=0
 connectMode=HTTP, native.
 Forms Applet version is : 10.1.2.3

私の JVM は 1.6.0_31です。

call_form手順:

 procedure call_form(in_form_name in varchar2) is
 begin
   htp.p(' 
 <object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://javadl-esd.sun.com/update/1.6.0/jinstall-6-windows-i586.cab" width="0" height="0" hspace="0" vspace="0">
   <param name="type" value="application/x-java-applet">
   <param name="codebase" value="http://myhost.ch/forms/java">
   <param name="code" value="oracle.forms.webutil.common.RegisterWebUtil">
   <param name="cache_option" value="Plugin">
   <param name="cache_archive" value="frmwebutil.jar,jacob.jar">
   <param name="cache_version" value="">
   <comment>
     <embed src="" pluginspage="https://java.sun.com/javase/downloads/index.jsp"
       type="application/x-java-applet"
       java_codebase="http://myhost.ch/forms/java"
       java_code="oracle.forms.webutil.common.RegisterWebUtil"
       cache_option="Plugin"
       cache_archive="frmwebutil.jar,jacob.jar"
       cache_version=""
       width="0"
       height="0"
       hspace="0"
       vspace="0">
     </embed>
     <noembed>Registration applet definition</noembed>
   </comment>
 </object>

 <object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://javadl-esd.sun.com/update/1.6.0/jinstall-6-windows-i586.cab" width="1015" height="745" hspace="0" vspace="0">
   <param name="type" value="application/x-java-applet">
   <param name="codebase" value="http://myhost.ch/forms/java">
   <param name="code" value="oracle.forms.engine.Main">
   <param name="cache_option" value="Plugin">
   <param name="cache_archive" value="frmall.jar,FDialogPJC.jar,frmwebutil.jar,jacob.jar">
   <param name="cache_version" value=""> 
   <param name="serverURL" value="http://myhost.ch/forms/lservlet?ifcfs=http://myhost.ch/forms/frmservlet?config=myconfig&#38;form='||in_form_name||'.fmx&#38;acceptLanguage=fr">
   <param name="networkRetries" value="0">
   <param name="serverArgs" value="escapeParams=true module='||in_form_name||'.fmx userid= sso_userid=%20 sso_formsid=%25OID_FORMSID%25 sso_subDN= sso_usrDN= debug=no host= port= buffer_records=no debug_messages=no array=no obr=no query_only=no quiet=yes render=no record= tracegroup= log= term=">
   <param name="separateFrame" value="False">
   <param name="splashScreen" value="">
   <param name="background" value="">
   <param name="lookAndFeel" value="Oracle">
   <param name="colorScheme" value="teal">
   <param name="serverApp" value="default">
   <param name="logo" value="">
   <param name="imageBase" value="DocumentBase">
   <param name="formsMessageListener" value="">
   <param name="recordFileName" value="">
   <param name="EndUserMonitoringEnabled" value="">
   <param name="EndUserMonitoringURL" value="">
   <param name="heartBeat" value="">
   <param name="WebUtilLogging" value="off">
   <param name="WebUtilLoggingDetail" value="normal">
   <param name="WebUtilErrorMode" value="Alert">
   <param name="WebUtilDispatchMonitorInterval" value="5">
   <param name="WebUtilTrustInternal" value="true">
   <param name="WebUtilMaxTransferSize" value="16384">
   <comment>
     <embed src="" pluginspage="https://java.sun.com/javase/downloads/index.jsp"
       type="application/x-java-applet"
       java_codebase="http://myhost.ch/forms/java"
       java_code="oracle.forms.engine.Main"
       cache_option="Plugin"
       cache_archive="frmall.jar,FDialogPJC.jar,frmwebutil.jar,jacob.jar"
       cache_version=""
       width="1015"
       height="745"
       hspace="0"
       vspace=""
       serverURL="http://myhost.ch/forms/lservlet?ifcfs=http://myhost.ch/forms/frmservlet?config=myconfig&#38;form='||in_form_name||'.fmx&#38;acceptLanguage=fr"
       networkRetries="0"
       serverArgs="escapeParams=true module='||in_form_name||'.fmx userid= sso_userid=%20 sso_formsid=%25OID_FORMSID%25 sso_subDN= sso_usrDN= debug=no host= port= buffer_records=no debug_messages=no array=no obr=no query_only=no quiet=yes render=no record= tracegroup= log= term="
       separateFrame="False"
       splashScreen=""
       background=""
       lookAndFeel="Oracle"
       colorScheme="teal"
       serverApp="default"
       logo=""
       imageBase="DocumentBase"
       recordFileName=""
       EndUserMonitoringEnabled=""
       EndUserMonitoringURL=""
       heartBeat=""
       WebUtilLogging="off"
       WebUtilLoggingDetail="normal"
       WebUtilErrormode="Alert"
       WebUtilDispatchMonitorInterval="5"
       WebUtilTrustInternal="true"
       WebUtilMaxTransferSize="16384">
     </embed>
     <noembed>Forms applet definition</noembed>
   </comment>
 </object>
 ');
 end;

どうすればそれを防ぐことができるか考えていますか? それとも、Oracle Forms を APEX に組み込むためのより良い方法があると思いますか?

どんな助けでも大歓迎です。

ありがとう。

4

0 に答える 0