首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Vaadin Java应用程序中使用JavaScript

在Vaadin Java应用程序中使用JavaScript
EN

Stack Overflow用户
提问于 2019-02-08 19:00:17
回答 1查看 118关注 0票数 0

我想在我的Java web应用程序中使用Kurento WebRTC javascript客户端。

但我甚至无法在Java应用程序中调用简单的javascript函数。我遗漏了什么?

代码语言:javascript
复制
var connector = this;

connector.test = function() {
    alert('Hello world!');
}

下面是Java代码:

代码语言:javascript
复制
import com.vaadin.ui.AbstractJavaScriptComponent;


@JavaScript({"rtc.js", "jquery-1.12.3.min.js"})
public class VideoCall extends AbstractJavaScriptComponent {

    public VideoCall() {

    }

    public void testMethod() {
        callFunction("test");
        //Page.getCurrent().getJavaScript().execute("alert('Hello world!')");
        System.out.println("testMethod executed!");
    }

}

当我不推荐

代码语言:javascript
复制
Page.getCurrent().getJavaScript().execute("alert('Hello world!')");

我看到一个窗口,上面写着"Hello world!“。当我在callFunction中将测试更改为foo作为参数时,我没有得到错误消息,尽管foo并不作为函数存在。为什么代码不能工作?

EN

回答 1

Stack Overflow用户

发布于 2019-02-08 22:19:27

我假设您展示的第一个代码片段是使用@JavaScript包含的rtc.js文件。该文件缺少的是,它应该将自己注册为该特定Java类的连接器。

该文件应如下所示:

代码语言:javascript
复制
window.java_package_name_VideoCall = function() {
  var connector = this;

  connector.test = function() {
    alert('Hello world!');
  }
}

其中,java_package_name是将.替换为_VideoCall类的包名。

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

https://stackoverflow.com/questions/54590997

复制
相关文章

相似问题

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