我需要桥接一个相当过程化的Javascript库,该库由一些.js文件组成,其中包含要从GWT调用的函数。
已经有一个很好的实用程序,叫做GWT-Exporter,它可以做相反的事情(http://code.google.com/p/gwt-exporter/),我需要一种GWT-Importer,它可以自动生成javascript函数的.java包装器。
我知道类型在这里是一个问题,但如果所有返回类型都变成JavaScriptObject或原语,我会很满意。
JSNI似乎是一种方法,但我想要一些自动创建类的东西,而不是必须通过JSNI手动绑定所有的方法。
发布于 2010-11-10 06:08:25
这听起来像是JSNI的工作。
http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsJSNI.html
如果您知道要调用哪些函数,那么可以很容易地设置一个实用程序类,其中包含表示有问题的函数的静态方法。
假设您有一个JavaScript库,您希望在其中将函数foo()和bar(number)公开给您的GWT应用程序。您将希望执行以下操作。
war目录中。(如果通过将<script>标记添加到主机页来外部hosted.)public final class LibraryName {
public static native int foo() /*-{
$wnd.foo(); // Use $wnd instead of window in JSNI methods
}-*/;
public static native void bar(double number) /*-{
$wnd.bar(number)
}-*/;
}有关JSNI的更深入的文章,请查看http://googlewebtoolkit.blogspot.com/2008/07/getting-to-really-know-gwt-part-1-jsni.html。
https://stackoverflow.com/questions/4138887
复制相似问题