查看 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
Viewing oracle app and getting: java.lang.ClassNotFoundException: oracle.forms.engine.Main
提问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 解决了我的问题,现在它工作正常。