1. ホーム
  2. java

[解決済み] oracleアプリを表示すると、java.lang.ClassNotFoundException: oracle.forms.engine.Main を取得します。

2022-02-15 21:16:26

質問

Oracleフォームアプリケーションをデバッグしようとしています。 本番では、アプリケーションをロードすると、エラーが発生します。 java.lang.ClassNotFoundException: oracle.forms.engine.Main

何が原因でこの問題が発生しているのか不明です。 半日ほどフォーラムを検索してみましたが、どうやらJavaのバージョン管理の問題と関係がありそうです。

私は(私の会社を保護するために少し修正した)Javaコンソール出力を含んでいます。私がそれを正しく読むならば、それは証明書が再パッケージ化される必要があるように見えます。
しかし、サイトの証明書を見ると、ベリサインによって検証されていると書いてあります。

IE 9 を使ってフォームアプリを表示しようとすると、.NET が表示されます。 java.lang.ClassNotFoundException: oracle.forms.engine.Main が表示されます。

Javaコンソールでは、次のような出力が得られます。

Java Plug-in 1.6.0_45 Using JRE version 1.6.0_45-b06 Java HotSpot(TM) Client VM User home directory = C:\Users\my_username network: Cache entry not found [url: https://company_site.ca:4446/forms/java/frmall.jar, version: null] network: Connecting https://company_site.ca:4446/forms/java/frmall.jar with proxy=DIRECT network: Connecting http://company_site.ca:4446/ with proxy=DIRECT javax.net.ssl.SSLException: Received fatal alert: unexpected_message at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source) at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source) at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(Unknown Source) at sun.plugin.PluginURLJarFileCallBack.connect(Unknown Source) at sun.plugin.PluginURLJarFileCallBack.retrieve(Unknown Source) at sun.net.www.protocol.jar.URLJarFile.retrieve(Unknown Source) at sun.net.www.protocol.jar.URLJarFile.getJarFile(Unknown Source) at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source) at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source) at sun.plugin.net.protocol.jar.CachedJarURLConnection.connect(Unknown Source) at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFileInternal(Unknown Source) at sun.plugin.net.protocol.jar.CachedJarURLConnection.getJarFile(Unknown Source) at com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown Source) at com.sun.deploy.security.DeployURLClassPath$JarLoader.access$1000(Unknown Source) at com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown Source) at com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(Unknown Source) at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source) at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source) at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source) at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source) at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source) at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source) at java.lang.Thread.run(Unknown Source) ... 3 more javax.net.ssl.sslexceptions network: Cache entry not found [url: https://company_site.ca:4446/forms/java/, version: null] network: Cache entry not found [url: https://company_site.ca:4446/forms/java/oracle/forms/engine/Main.class, version: null] network: Connecting https://company_site.ca:4446/forms/java/oracle/forms/engine/Main.class with proxy=DIRECT network: Connecting http://company_site.ca:4446/ with proxy=DIRECT network: Cache entry not found [url: https://company_site.ca:4446/forms/java/oracle/forms/engine/Main.class, version: null] network: Connecting https://company_site.ca:4446/forms/java/oracle/forms/engine/Main.class with proxy=DIRECT network: Connecting http://company_site.ca:4446/ with proxy=DIRECT basic: load: class oracle.forms.engine.Main not found. load: class oracle.forms.engine.Main not found. java.lang.ClassNotFoundException: oracle.forms.engine.Main at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source) at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source) at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Exception: java.lang.ClassNotFoundException: oracle.forms.engine.Main Ignored exception: java.lang.ClassNotFoundException: oracle.forms.engine.Main basic: Loading Java Applet Failed...

これはJavaのバージョンの問題なのでしょうか、それともサーバー側で何か問題があるのでしょうか? javaがオラクル・フォーム・エンジンを見つけられない理由は明らかでしょうか?

長い文章で申し訳ありませんが、ここで起こっていることを理解するために必要なことだと思われます。

どんなことでもご相談ください。

解決方法は?

この問題に対する回避策を見つけました。本当の解決策ではありませんが、私はIT業界にいるので、十分に近いものです。

Java 7u51を使用していました。
に入りました。 コントロールパネル -> Java -> アドバンスド

セキュリティの詳細設定]で、私は選択しました。

Use SSL 2.0 ClientHello format
Use SSL 3.0
Use TLS 1.0

(これらはたまたまサーバーが受け入れた接続の種類です)

また、セキュリティタブを開き、例外サイトリストにサイトを追加しました。

最後に、「Java」タブで「表示」をクリックしました。 そして、インストールしたJREからJava 1.7.0_51の選択を解除しました。

他のバージョンのjavaを無効にするとうまくいかなかったのに、なぜ&をアンインストールするとうまくいったのか、その理由がよくわかりません。 しかし、私はサイトを立ち上げて再び動作させることができてうれしいです。

今後、どなたかのお役に立てれば幸いです。