首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从javascript调用Java时出现通信权限问题

从javascript调用Java时出现通信权限问题
EN

Stack Overflow用户
提问于 2011-01-09 05:29:41
回答 3查看 205关注 0票数 1

我有一个小图形编辑Java applet嵌入在一个HTML/Javascript/jquery页面。

我在页面上有一个保存按钮,它弹出一个调用Java函数的jquery对话框。

当该函数试图访问服务器时,它会死于权限错误。相同的代码可以加载图形对象。

我目前假设从Javascript对Java的调用不在applet上下文中(单独的线程?),因此没有加载它的位置,因此无法与其通信。

有没有办法进入正确的上下文?

我希望我可以通过在Java applet中放置保存按钮并使用Java对话来获取其他数据来解决这个问题。长期使用HTML5 canvas是我认为的解决方案。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-01-09 06:31:45

JavaScript -> Java调用的security model表示,即使是对签名小程序的调用也会被视为不可信。为了避免这种情况,如果您知道调用的是什么方法,可以使用AccessController.doPrivileged()来允许调用以正确的权限执行。但是,请注意,任何人都可以嵌入您的小程序并使用自己的JavaScript调用它,因此此解决方案确实具有安全后果,您应该仔细考虑。

票数 0
EN

Stack Overflow用户

发布于 2011-01-09 06:35:03

您可以在策略文件(${user.home}.java.policy)中设置权限-您可以手动进行设置,也可以使用策略工具(在JDK bin目录中)进行设置。在将使用您的小程序的每台客户端计算机上,请参阅Set up a Policy File to Grant the Required Permission.This。

另一种方法是给你的applet签名。

有关小程序安全性的更多详细信息,请访问wikiJava Plug-in Developer Guide

票数 0
EN

Stack Overflow用户

发布于 2011-01-09 07:52:09

需要注意的是,未签名的applet只能与提供它的服务器进行通信。要与不同的服务器通信,需要对小程序进行签名。更多信息here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4636261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档