首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从JavaScript调用Griffon中的函数?

如何从JavaScript调用Griffon中的函数?
EN

Stack Overflow用户
提问于 2013-07-11 16:21:36
回答 1查看 133关注 0票数 2

我们有一个基于web的项目,但需要对用户的文件系统有重要的访问权限。HTML不允许我们有足够的访问权限,而且由于我们主要是Grails商店,将文件访问代码作为applet比让它成为Flash代码更有意义。

我们尝试了一下Griffon (以前这个项目的原型是一个100% Griffon Webstart应用程序),并且喜欢Griffon给applets的结构和“样板删除”。然而,我们一直遇到的问题是将Html / JavaScript UI连接到实际完成所有工作的格里芬小程序。

我们找到了James从一个Griffon应用程序调用JavaScript函数的JavaScript,但是还没有找到一个相反的例子:从JavaScript端调用Griffon函数。

主要的问题是,我们希望格里芬应用程序是“无头”(或尽可能接近),因为所有的UI将由JavaScript和HTML处理。这意味着我们不能使用从Griffon应用程序中触发的UI事件,就像James在他的例子中所做的那样。

,有没有人有一个JavaScript与格里芬小程序交互的例子,我们可以从中学习?或者任何关于如何从格里芬小程序到JavaScript?的东西表面的建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-11 20:39:38

听起来你想要调用Java (或者groovy!)使用JavaScript在小程序中从外部世界找到的函数,对吗?

为了使其发挥作用:

  1. 必须启用livescript,,applet的jar必须签名为
  2. 下一步是在applet子类中定义一个入口点,它知道如何处理要生成的调用。 这是一个棘手的问题,因为默认的applet类是griffon.swing.SwingApplet,所以您必须创建自己的griffon.swing.SwingApplet子类并使用它作为主要入口点。 您的子类将定义可从JavaScript端调用的方法(或方法)。这应该是按照以下方针进行的: 导入griffon.swing.SwingApplet;公共类MySwingApplet扩展SwingApplet { // match超类构造函数公共CalculatorApplet(String[] args) {String[]( args);}公共对象myAppletMethod(String[] args ){ // args来自JS世界//做这里所需的}}
  3. 要让告诉格里芬使用我们的自定义applet子类而不是默认的,只需创建一个名为griffon-app/scripts/_Events.groovy的文件,并将以下内容放入其中: eventPackageAppStart ={ griffonAppletClass = 'calculator.CalculatorApplet‘_c}
  4. 最后,myAppletMethod()从javascript获取applet对象,并使用您认为合适的任何值调用:

更详细的例子可以在我的博客上找到。

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

https://stackoverflow.com/questions/17598609

复制
相关文章

相似问题

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