0

jspページにドキュメントをロードするjsp(IBM FileNet JavaViwer)に埋め込まれたアプレットがあります。

アプレットは、http 要求を介して正常にロードされます。

しかし、https では問題に直面しています。

アプレットは、WAS に展開された開発サーバーの https をロードします (Web サーバーが配置されていない場合) jre5 または jre6 をインストールしたクライアントは、完全に表示できます。

しかし、IHS サーバーが WAS の前にある私のテスト環境では、アプレットのロードは jre 5 クライアントの classnot found 例外で失敗します。Jre 6 クライアントの場合、アプレットはテスト サーバーでも https でロードされます。

以下は Java コンソール ログです。


Java Plug-in 1.5.0_15
Using JRE version 1.5.0_15 Java HotSpot(TM) Client VM
User home directory = C:\Users\user1


basic: Cache is enabled
basic: Location: C:\Users\user1\AppData\LocalLow\Sun\Java\Deployment\cache\javapi\v1.0
basic: Maximum size: unlimited
basic: Compression level: 0

basic: Plugin modality.register
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
l:   dump classloader list
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
x:   clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------

basic: Registered modality listener
liveconnect: Invoking JS method: document
liveconnect: Invoking JS method: URL
basic: Referencing classloader: sun.plugin.ClassLoaderInfo@ee6681, refcount=1
basic: Added progress listener: sun.plugin.util.GrayBoxPainter@1fd6bea
basic: Loading applet ...
basic: Initializing applet ...
basic: Starting applet ...
basic: Referencing classloader: sun.plugin.ClassLoaderInfo@ee6681, refcount=2
basic: Releasing classloader: sun.plugin.ClassLoaderInfo@ee6681, refcount=1
basic: httpCompression = true
liveconnect: Invoking JS method: execScript
liveconnect: Invoking JS method: evalIntermediateValueToReturn
network: Connecting https://X.X.X.X:443/myApp/FnJavaV1Files/ji.jar with proxy=HTTP @ /Y.Y.Y.Y:8080
network: Connecting https://X.X.X.X:443/myApp/FnJavaV1Files/ji/applet/jiApplet.class with proxy=HTTP @ /Y.Y.Y.Y:8080
network: Connecting https://X.X.X.X:443/myApp/FnJavaV1Files/ji/applet/jiApplet/class.class with proxy=HTTP @ /Y.Y.Y.Y:8080
load: class ji.applet.jiApplet.class not found.
java.lang.ClassNotFoundException: ji.applet.jiApplet.class
 at sun.applet.AppletClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.applet.AppletClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.applet.AppletClassLoader.loadCode(Unknown Source)
 at sun.applet.AppletPanel.createApplet(Unknown Source)
 at sun.plugin.AppletViewer.createApplet(Unknown Source)
 at sun.applet.AppletPanel.runLoader(Unknown Source)
 at sun.applet.AppletPanel.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
basic: Exception: java.lang.ClassNotFoundException: ji.applet.jiApplet.class
java.lang.ClassNotFoundException: ji.applet.jiApplet.class
 at sun.applet.AppletClassLoader.findClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.applet.AppletClassLoader.loadClass(Unknown Source)
 at java.lang.ClassLoader.loadClass(Unknown Source)
 at sun.applet.AppletClassLoader.loadCode(Unknown Source)
 at sun.applet.AppletPanel.createApplet(Unknown Source)
 at sun.plugin.AppletViewer.createApplet(Unknown Source)
 at sun.applet.AppletPanel.runLoader(Unknown Source)
 at sun.applet.AppletPanel.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
basic: Plugin modality.pushed
basic: Modality pushed
basic: push javax.swing.JDialog[dialog0,549,317,268x134,layout=java.awt.BorderLayout,modal,title=Error - Java,defaultCloseOperation=HIDE_ON_CLOSE,rootPane=javax.swing.JRootPane[,3,25,262x106,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
basic: Plugin modality.pushed
basic: Modality pushed
basic: push javax.swing.JDialog[dialog0,549,317,422x303,layout=java.awt.BorderLayout,modal,title=Error - Java,defaultCloseOperation=HIDE_ON_CLOSE,rootPane=javax.swing.JRootPane[,3,25,416x275,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
basic: Plugin modality.popped
basic: Modality popped
basic: pop javax.swing.JDialog[dialog0,549,317,422x303,invalid,hidden,layout=java.awt.BorderLayout,modal,title=Error - Java,defaultCloseOperation=HIDE_ON_CLOSE,rootPane=javax.swing.JRootPane[,3,25,416x275,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
basic: Plugin modality.popped
basic: Modality popped
basic: pop javax.swing.JDialog[dialog0,549,317,422x303,invalid,hidden,layout=java.awt.BorderLayout,modal,title=Error - Java,defaultCloseOperation=HIDE_ON_CLOSE,rootPane=javax.swing.JRootPane[,3,25,416x275,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
4

1 に答える 1

0

テスト環境の Web サーバーが SSLV3 プロトコルをサポートしていないことが判明しました。TLSV1 のみをサポートします。Jre 5 クライアントはデフォルトで SSLv2Hello と SSLv3 を使用するため、共通のプロトコルがないためエラーがスローされます。ただし、jre 6 クライアントのデフォルトは SSLv3 と TLV1 で実行されます。この場合、TLSV1 はクライアントと Web サーバー間の共通プロトコルであり、接続は成功し、アプレットは正常にロードされます。

エラーメッセージClassNotFoundはかなり奇妙ですが..

于 2016-04-13T01:43:31.887 に答える