Webstart https:适用于证书上的服务器而不是负载均衡器 [英] Webstart https: works with server on certificate and not on loadbalancer

查看:20
本文介绍了Webstart https:适用于证书上的服务器而不是负载均衡器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为我的 Java webstart 应用程序创建 https 安全连接.我所做的只是将我的 Tomcat 配置为使用证书,然后就大功告成了.我只能做

I'm trying to create a https secure connection for my Java webstart application. All I did was to configure my Tomcat to use a certificate and I was done. I could just do

https://nsjns:8443/abc/xyz.jnlp",它下载了我的应用程序并且运行良好.

"https://nsjns:8443/abc/xyz.jnlp" and it downloaded my application and worked fine.

为了生产,我们购买了一个证书,这个证书保存在负载平衡器上,实际的网络服务器在负载平衡器后面.如果我使用浏览器,我可以看到服务器,并且可以通过在浏览器中输入 url 来下载我的 jnlp 文件.但是,由于出现以下异常,我无法使用 Java webstart 执行 jnlp 文件.

for production, we purchased a certificate and this cert was kept on the load balancer with the actual web server behind the load balancer. If I use the browser I can see the server and can download my jnlp file by typing the url in the browser. However, I cannot execute the jnlp file using Java webstart as I get the below exception.

Java.io.IOException: Server returned HTTP response code: 503 for URL: "http://test.tec.com/abc.jnlp"
                at sun.reflect.GeneratedConstructorAccessor13.newInstance(Unknown Source)
                at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
                at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
                at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1674)
                at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1672)
                at java.security.AccessController.doPrivileged(Native Method)
                at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1670)
                at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1243)
                at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
                at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source)
                at com.sun.deploy.net.BasicHttpRequest.doGetRequest(Unknown Source)
                at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
                at com.sun.deploy.net.DownloadEngine._downloadCacheEntry(Unknown Source)
                at com.sun.deploy.cache.ResourceProviderImpl.getResourceCacheEntry(Unknown Source)
                at com.sun.deploy.cache.ResourceProviderImpl.getResourceCacheEntry(Unknown Source)
                at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
                at com.sun.javaws.Launcher.updateFinalLaunchDesc(Unknown Source)
                at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
                at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
                at com.sun.javaws.Launcher.launch(Unknown Source)
                at com.sun.javaws.Main.launchApp(Unknown Source)
                at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
                at com.sun.javaws.Main.access$000(Unknown Source)
                at com.sun.javaws.Main$1.run(Unknown Source)
                at java.lang.Thread.run(Thread.java:722)
Caused by: java.io.IOException: Server returned HTTP response code: 503 for URL: http://test.tec.com/abc.jnlp
                at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1625)
                at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)
                ... 17 more

它正在将我的 url 从 https 解析为 http.我对这一切都很陌生.请帮助我提出您的想法和建议.我错过了什么?

It is resolving my url from https to http. I'm new to all this. Please help me with your ideas and suggestions. What am I missing to do?

推荐答案

不太可能与您的证书有关.尝试在 webstart URL 中使用 IP 地址而不是主机名.

Unlikely to have anything to do with your certificate. Try using the IP address instead of the hostname in the webstart URL.

您没有说明在什么平台上运行 webstart,但如果 IP 地址有效,则启动 webstart 控制面板:javaws -viewer 并转到 Java 选项卡上的网络设置.假设它没有这么说,选择直接连接(即无代理)并告诉我们之后它是否有效.

You don't say what platform you are running webstart on, but if the IP address works then launch the webstart control panel: javaws -viewer and go to Network Settings on the Java tab. Assuming it doesn't already say so, select Direct Connection (i.e. no proxy) and tell us if it works after that.

这篇关于Webstart https:适用于证书上的服务器而不是负载均衡器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆