具有休息数据源错误的SmartGWT

时间:2010-05-03 14:03:29

标签: java javascript gwt restlet smartgwt

从休息数据源检索数据时出现以下错误

00:00:52.439 [ERROR] 01:46:57.001:RDQ1:WARN:ResultSet:isc_ResultSet_1(由:isc_CustomerDocGrid_0创建):get:无效索引-1 com.smartgwt.client.core.JsObject $ SGWT_WARN:01:46:57.001:RDQ1:WARN:ResultSet:isc_ResultSet_1(由:isc_CustomerDocGrid_0创建):get:无效索引-1在sun.reflect.NativeConstructorAccessorImpl.newInsta nce0(本机方法) )at sun.reflect.NativeConstructorAccessorImpl.newInsta nce(NativeConstructorAccessorImpl.java:39)at sun.reflect.DelegatingConstructorAccessorImpl.newI nstance(DelegatingConstructorAccessorImpl.java:27)at java.lang.reflect.Constructor.newInstance(Construc tor.java:513) )com.google.gwt.devoke(MododAdaptor.invoke(mem odAdaptor.java:105)com.google上com.google.gwt.dev.shell.MethodDispatch.invoke(Met hodDispatch.java:71)的com.google.gwt.devoke。 gwt.dev.shell.OophmSessionHandler.invok e(OophmSessionHandler.java:157)位于com.google.gwt.dev.shell.BrowserChannel.reactToMes sages(BrowserChannel.java:1668)的com.google.gwt.dev.shell。 BrowserChannelServer.proc essConnection(BrowserChannelServer.java:401)位于com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:222)在java.lang.Thread.run(Thread.java:619)

这是我的数据源(它扩展了RestDataSource)

代码:     public CustomerDataSource(String id)     {         SETID(ID);         setDataFormat(DSDataFormat.XML);         setRecordXPath( “customerdoc”);

    setOperationBindings();
    OperationBinding fetch = new OperationBinding();
    fetch.setOperationType(DSOperationType.FETCH);
    fetch.setDataProtocol(DSProtocol.GETPARAMS);

    setOperationBindings(fetch);

    setDataURL("/customer");

我知道我的Web服务正在返回数据,因为我可以在浏览器中显示XML文件。这似乎不是一个解析错误(我之前见过)。不确定错误的含义。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

我无法弄清楚这是什么时候发生的,但通常是在没有收到数据时。 我的猜测是你的xml与预期的格式(错误的xpath)不匹配,所以它找不到任何数据。

试试:

dataSource.setRecordXPath("//customerdoc");