2

JRE のバージョン 7u21 では起動しない署名付きアプレットに取り組んでいます。

7u21 JDK を使用してアプレットを再コンパイルTrusted-Library:trueし、マニフェストに行を追加し (SecurityException が発生した後に再度削除しました)、JRE を再インストールしました。Javaコンソールから取得できるものは次のとおりです。

basic: exception: com.sun.deploy.net.DownloadEngine$2 cannot be cast to com.sun.deploy.cache.CacheEntry.  
ExitException[ 3]java.lang.ClassCastException: com.sun.deploy.net.DownloadEngine$2 cannot be cast to com.sun.deploy.cache.CacheEntry  
               at sun.plugin2.applet.JNLP2Manager.loadJarFiles(Unknown Source)  
               at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)  
               at java.lang.Thread.run(Unknown Source)  

アプレットは、Oracle の deployJava スクリプトを使用してデプロイされています。

これは、Chrome、FireFox、IE 8 および 9 のすべてのテスト システムで発生しており、プラグインの問題を示しています。現在、この JRE 更新の前に 1 年以上正常に動作していた実稼働システムに影響があります。

誰もが持っている洞察は大歓迎です。

ローカル ビルドの JNLP ファイルの内容は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" version="2.0.30" codebase="http://localhost:8080/" href="avs/res/util-applet.jnlp">
    <information>
        <title>Utility Applet - LOCAL</title>
        <vendor>Vendor</vendor>
    </information>
    <resources>
        <j2se version="1.7+" href="http://java.sun.com/products/autodl/j2se" java-vm-args="-Xms256m -Xmx1024m"/>
        <jar href="/avs/res/util-jar-with-dependencies.jar" main="true" />
    </resources>
    <security>
        <all-permissions/>
    </security>
    <applet-desc name="guiApplet" main-class="au.edu.ncver.avs.web.util.UtilApplet" width="1" height="1"/>
    <update check="background"/>
</jnlp>

更新 1
これがプラグインのキャッシュからのものであることは十分に確認できます。Java コントロール パネルに移動してローカル ストレージを無効にすると、問題は解決します。ローカル ストレージを再度有効にすると、問題が再発します。

更新 2
JNLP を更新して、前述の SecurityException の修正を反映させました。しかし ClassCastException は残ります。私は数週間前に Oracle のバグを記録しましたが、Oracle から何も連絡がなく、バグが実際にデータベースに現れたこともありません。

Update 3
問題は 7u25 にまだ存在します。

4

0 に答える 0