Java 小程序在 Azure 中不起作用

Posted

技术标签:

【中文标题】Java 小程序在 Azure 中不起作用【英文标题】:Java applet not working in Azure 【发布时间】:2012-12-06 22:34:05 【问题描述】:

我构建了一个可以在本地完美运行的简单 Java 小程序。当我将我的网站上传到 Azure(作为云服务)时,它会显示一个灰色框

我尝试过 Win XP、Win 7、JRE 6、JRE 7 和不同的浏览器。 Java 控制台不显示任何消息。

知道发生了什么吗?

【问题讨论】:

你试过检查服务器日志吗? RDP into the web role box and check the event log。你也可以enable Azure Diagnostics to write to blob storage。 您能分享失败的页面网址吗? 你最后解决问题了吗? 【参考方案1】:

您是否检查过该小程序是否是从 Azure 网站下载的?

最好的方法是在 Chrome 中使用网络控制台或在 Firefox 中使用 Firebug,然后查看所有请求和服务器响应。如果任何资源出现问题,该项目将变为红色。您将能够检查响应错误代码。

Azure IIS 上的文件类型配置可能存在一个小问题,因此服务器不为您的小程序提供服务。

为了更改 Azure IIS,您可能需要添加如下配置更改:

<configuration>
    <system.webServer>
        <staticContent>
            <remove fileExtension=".class" />
            <mimeMap fileExtension=".class" mimeType="application/x-java-applet" />
        </staticContent>
    </system.webServer>
</configuration>

编辑

我检查了您提供的 URL,发现您正在尝试使用小程序标记属性和 JNLP 参数部署 Java 插件小程序。

我看到JNLP路径设置如下:jnlp_href: basePath + "launch.jnlp"basePath"/Content/WorldWindApplet/dist/")。

但我无法从以下路径加载launch.jnlp/Content/WorldWindApplet/dist/launch.jnlp

请检查launch.jnlp 是否位于/Content/WorldWindApplet/dist/ 下。如果存在,则尝试将 JNPL 映射添加到 IIS。

sn-p代码如下:

<configuration>
    <system.webServer>
        <staticContent>
            <remove fileExtension=".jnlp" />
            <mimeMap fileExtension=".jnlp" mimeType="application/x-java-jnlp-file" />
        </staticContent>
    </system.webServer>
</configuration>

【讨论】:

Firebug 控制台在 Azure 和本地显示相同的日志。我还尝试了您提出的配置更改,但没有成功。我一直在努力。 非常高兴修复(显然在两个地方都使用 .jnlp)最终奏效了。

以上是关于Java 小程序在 Azure 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

使用 CORS 的应用程序在 Azure 中不起作用

Java KeyListener 在小程序中不起作用

服务总线输出绑定在 Azure 中不起作用

DeleteAsync 方法在 Azure 人脸识别服务中不起作用

机器人的语音服务在 Azure 中的“Web 聊天测试”选项中不起作用

WCF 配置/身份验证在 Azure 中不起作用