查看 oracle 应用程序并获取:java.lang.ClassNotFoundException: oracle.forms.engine.Main

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/22492400/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-13 16:03:59  来源:igfitidea点击:

Viewing oracle app and getting: java.lang.ClassNotFoundException: oracle.forms.engine.Main

javaoracleinternet-exploreroracle10goracleforms

提问by Rolan

I'm trying to debug an oracle forms application. In production, when I load the application I get an error: java.lang.ClassNotFoundException: oracle.forms.engine.Main

我正在尝试调试 oracle 表单应用程序。在生产中,当我加载应用程序时出现错误:java.lang.ClassNotFoundException: oracle.forms.engine.Main

I'm uncertain as to what is causing this issue. I've been searching forums for a bout half a day now, and it seems like it may have something to do with a java versioning issue.

我不确定是什么导致了这个问题。我已经在论坛上搜索了半天了,似乎这可能与 Java 版本控制问题有关。

I've included the (slightly modified to protect my company) java console output, and if I'm reading it right, it looks like a certificate needs to be repackaged.
But, when I look at the certificate for the site it says that it's verified by verisign.

我已经包含了(稍微修改以保护我的公司)java 控制台输出,如果我没看错,看起来证书需要重新打包。
但是,当我查看该站点的证书时,它说它已通过 verisign 验证。

I'm using IE 9 to try to view the forms app, and I get a : java.lang.ClassNotFoundException: oracle.forms.engine.Main

我正在使用 IE 9 尝试查看表单应用程序,但我得到一个:java.lang.ClassNotFoundException: oracle.forms.engine.Main

In the Java console I get the following output:

在 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 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...

Is this a Java versioning issue, or is something amiss on the server side? Is there an apparent reason why java can't find the oracle forms engine?

这是 Java 版本控制问题,还是服务器端有问题?java找不到oracle表单引擎有明显的原因吗?

Apologies for the long, gross-looking text, but I'm guessing that it's needed to figure out what going on here.

为冗长而粗俗的文字道歉,但我猜有必要弄清楚这里发生了什么。

Many thanks for any help or direction you can give!

非常感谢您提供的任何帮助或指导!

采纳答案by Rolan

I found a workaround for this issue - not really a solution, but I'm in IT so it's close enough.

我找到了解决此问题的方法 - 不是真正的解决方案,但我在 IT 部门,所以它已经足够接近了。

I was using Java 7u51.
I went into control panel-> Java-> Advanced

我使用的是 Java 7u51。
我进入control panel-> Java->Advanced

Under Advanced Security settings I selected:

在我选择的高级安全设置下:

Use SSL 2.0 ClientHello format
Use SSL 3.0
Use TLS 1.0

(those happen to be the types of connections the server accepted)

(这些恰好是服务器接受的连接类型)

I also went into the security tab and added the site to the Exception Site List

我还进入了安全选项卡并将该站点添加到了例外站点列表

Lastly, I went into the Java tab and clicked View. I then deselected Java 1.7.0_51 from my installed JREs.

最后,我进入 Java 选项卡并单击 View。然后我从我安装的 JRE 中取消选择 Java 1.7.0_51。

I'm not entirely clear on how/why all of this worked when uninstalling & disabling other versions of java didn't. But I'm glad to have the site up and working again.

我不完全清楚在卸载和禁用其他版本的 java 时所有这些是如何/为什么工作的。但我很高兴让网站重新启动并重新工作。

Hope this helps someone else in future.

希望这有助于将来的其他人。

回答by Amir

I had same problem, I solve my problem by reattach my webutil in my oracle 12c form and it is work fine now.

我遇到了同样的问题,我通过在我的 oracle 12c 表单中重新附加我的 webutil 解决了我的问题,现在它工作正常。