我想用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说法我没有得到一个错误信息,虽然富犯规的功能存在。为什么代码不能正常工作?
我认为第一代码片段,你已经证明还有就是你包括使用rtc.js
的@JavaScript
文件。什么是从文件丢失的是,它应该将其自身注册为特定的Java类的连接器。
该文件应该是这样的:
window.java_package_name_VideoCall = function() {
var connector = this;
connector.test = function() {
alert('Hello world!');
}
}
其中java_package_name
与VideoCall
的.
类_
替换的包名称。