Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Kaazing Websockets在GWT应用程序中接收消息<;类型>;代理权</类型>;配置_Gwt_Websocket_Kaazing - Fatal编程技术网

如何使用Kaazing Websockets在GWT应用程序中接收消息<;类型>;代理权</类型>;配置

如何使用Kaazing Websockets在GWT应用程序中接收消息<;类型>;代理权</类型>;配置,gwt,websocket,kaazing,Gwt,Websocket,Kaazing,我正在尝试构建一个GWT(2.4.0)应用程序,它可以使用基于文本的协议与服务器进行通信(全双工)。为了实现这一点,我使用Kaazing Websocket网关版本3.3.2作为代理 GWT应用程序Kaazing后端服务器 这是我的Kaazing配置: <service> <accept>ws://127.0.0.1:9444/foobar</accept> <connect>tcp://localhost:50189</connec

我正在尝试构建一个GWT(2.4.0)应用程序,它可以使用基于文本的协议与服务器进行通信(全双工)。为了实现这一点,我使用Kaazing Websocket网关版本3.3.2作为代理

GWT应用程序Kaazing后端服务器

这是我的Kaazing配置:

<service>
  <accept>ws://127.0.0.1:9444/foobar</accept>
  <connect>tcp://localhost:50189</connect>
  <type>proxy</type>
  <cross-site-constraint>
    <allow-origin>http://127.0.0.1:8888</allow-origin>
  </cross-site-constraint>  
</service>
GWT客户端可以成功地将文本发送到后端服务器。它无法处理来自服务器的任何响应。调用ev.getData()后会立即引发JavaScript异常

Uncaught JavaScript exception [Uncaught java.lang.ClassCastException: com.google.gwt.core.client.JavaScriptObject$ cannot be cast to java.lang.String]
如果我将上述代码中的WebSocket地址更改为ws://127.0.0.1:9444/echo以使用Kaazing echo服务,则GWT应用程序将成功接收我发送的任何文本。如果我将服务更改回代理(或广播),则每次收到来自服务器的消息时都会引发上述JavaScript异常

Java程序中的相同代码(使用Kaazing Java客户机)工作正常


由于我不是GWT专家,是否有任何方法可以进一步调试该问题,或者有一个简单的解决方案我只是看不到?

我相信我以前见过这个问题,您介意分享您的gwtclient.GWT.xml文件内容吗?或者,根据您在gwt客户端的“gwtclient.gwt.xml”中使用的是ByteSocket还是WebSocket,尝试添加“”或“”

希望这有帮助


-马塞洛

非常感谢你,马塞洛。你给我指出了正确的方向。在检查了Kaazing演示中的一些gwtclient.gwt.xml文件后,我发现缺少一个JavaScript文件的引用。(这就解释了为什么用于ByteSockets的Kaazing演示不起作用,因为他们也忘了在gwt.xml中包含该文件)。缺少的JavaScript文件位于Kaazing归档文件的/lib/client/JavaScript/下。在我的gwt.xml文件中包含了WebSocket.js之后,它成功了。非常感谢。
Uncaught JavaScript exception [Uncaught java.lang.ClassCastException: com.google.gwt.core.client.JavaScriptObject$ cannot be cast to java.lang.String]