在GWT代码中引用Javascript常量

在GWT代码中引用Javascript常量,gwt,google-maps-api-3,jsni,Gwt,Google Maps Api 3,Jsni,有没有办法使用JSNI和JSOT(javascript覆盖类型)将javascript常量映射到自定义java类型 例如: 我将GoogleMapV3JavaScriptAPI映射到GWT,其中有常量。我想在java代码中将TERRAIN常量(一个javascript字符串)作为MapTypeId对象(一个POJO而不是java.lang.string)引用。到目前为止,编译器说它无法将javascript字符串映射到我的自定义类型。外部脚本加载到HTML主机页中,您将在JSNI中引用它作为$w

有没有办法使用JSNI和JSOT(javascript覆盖类型)将javascript常量映射到自定义java类型

例如:


我将GoogleMapV3JavaScriptAPI映射到GWT,其中有常量。我想在java代码中将TERRAIN常量(一个javascript字符串)作为MapTypeId对象(一个POJO而不是java.lang.string)引用。到目前为止,编译器说它无法将javascript字符串映射到我的自定义类型。

外部脚本加载到HTML主机页中,您将在JSNI中引用它作为
$wnd
。我不知道Maps API,但我想
$wnd.MapTypeId
应该可以工作。

我唯一能工作的就是将字符串常量包装在纯javascript对象中,并将其映射为哑覆盖类型。然后,GWT java to js编译器能够将其转换为我的强类型MapTypeId

public static native MapTypeId getHybrid() /*-{
        return { value : $wnd.google.maps.MapTypeId.HYBRID };
    }-*/;