在Vaadin Java应用程序使用JavaScript

问题描述 投票:0回答:1

我想用Kurento的WebRTC JavaScript客户端在我的Java Web应用程序。

但我不能甚而设法调用一个简单的JavaScript函数在我的Java应用程序。我在想什么?

var connector = this;

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

这里谈到的Java代码:

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!");
    }

}

当我uncommend

Page.getCurrent().getJavaScript().execute("alert('Hello world!')");

我得到消息的窗口的“Hello world!”。当我改变测试富在callFunction说法我没有得到一个错误信息,虽然富犯规的功能存在。为什么代码不能正常工作?

javascript vaadin
1个回答
1
投票

我认为第一代码片段,你已经证明还有就是你包括使用rtc.js@JavaScript文件。什么是从文件丢失的是,它应该将其自身注册为特定的Java类的连接器。

该文件应该是这样的:

window.java_package_name_VideoCall = function() {
  var connector = this;

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

其中java_package_nameVideoCall._替换的包名称。

© www.soinside.com 2019 - 2024. All rights reserved.