【问题标题】:Applet works when ran from Eclipse, not so well in the browserApplet 从 Eclipse 运行时可以工作,但在浏览器中不太好
【发布时间】:2010-08-22 17:42:45
【问题描述】:

我有一个与 Java 小程序相关的问题,非常感谢您的帮助。这是故事: 我尝试创建一个小程序,它会尝试连接到 digg.com,并使用它的 API 显示 100 个最受欢迎的故事(还包括一些对结果进行排序和过滤的选项)。
无论如何,小程序在浏览器中打开并显示 GUI 就好了,但是当我按下加载新闻的按钮时,它不会加载它们,但是当我在 Eclipse 中运行小程序时,新闻已加载。
我想,这可能与从 eclipse 创建可运行 jar 有关,因为我有一些引用的库(用于处理来自 digg.com 的 JSON 的 Google GSON)。以下是我用于创建可运行 jar 的设置(我还尝试了“将所需的库打包到生成的 JAR 中):
http://img816.imageshack.us/img816/417/exportjar.png

这是小程序(从 eclipse 运行)的图片,当新闻已加载时: http://img841.imageshack.us/img841/9121/applet.png

我将不胜感激有关如何在网络浏览器中加载新闻的任何想法。

【问题讨论】:

    标签: json applet digg


    【解决方案1】:

    我认为托拉是对的。小程序应该只能连接到它们自己的服务器。您可以尝试欺骗浏览器,将请求发送回您的服务器,要求它检索数据并将其返回给小程序。

    【讨论】:

      【解决方案2】:

      当您尝试打开与 digg 的连接时会发生什么?有安全例外吗?得知浏览器中的 JVM 实现了same origin policy,我不会感到惊讶。如果是这种情况,当您尝试连接到 digg.com 时应该会引发某种异常(我认为是 SecurityException)。

      快速搜索“same origin policy java”发现以下文章似乎都证实这可能是您的问题。 http://www.zdnet.com/blog/security/defeating-the-same-origin-policy-part-1/946

      【讨论】:

      • 所以基本上,由于相同的来源策略,不可能用小程序制作这个应用程序:(?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-09
      • 1970-01-01
      • 2020-07-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多