The bind is not working because model is not a string, and whatever property 
you bind to qx.ui.embed.Html.html must be a string.

qx.data.store.Rest “marshals” the JSON result into it’s “model” property using 
qx.data.marshal.Json - what that means is that given a JSON data structure like:


        [ { name: “alpha”, id: 1 }, { name: “bravo”, id: 2 } ]

It will create a class on the fly which looks approximately like:

Qx.Class.define(“qx.data.model.id\”name”, {
  extend: qx.core.Object,
  properties: {
    name: {
      check: “String”,
      event: “changeName”
    },
    id: {
      check: “Number”,
      event: “changeId”
    }
  }
});

And then create two instances of the new class and stick them in an array.  

This is obviously useful for binding to Qx objects, and when using the Rest.* 
apis that’s normally what you want but it means that you’re trying to set 
qx.ui.embed.Html.html’s property to an object (maybe a qx.data.Array of 
“qx.data.model.id\”name” objects in this case).

If you want the raw output, try this:

this.__tos.addListener(“getSuccess”, function(evt) {

  var data = e.getData();
  this.__tosWidget.setHtml(data||””);
}, this);

John




On 22/09/2015 20:50, "voger" <vogernewslett...@yahoo.gr> wrote:

>I have this code https://gist.github.com/voger/8595dd76bbc6c5753922
>
>In line 30 I set a store of type qx.data.store.Rest
>In line 31 I set a store of type qx.data.store.Json
>
>In lines 46 to 53 I set bindings the qx.data.store.Rest to a 
>qx.ui.embed.Html widget and the qx.data.store.Json to a 
>qx.data.controller.List
>
>The problem is that when I run the code, when the widget appears on the 
>screen I get this error
>
>020996 Assertion error! Invalid incoming value for property 'html' of 
>class 'qx.ui.embed.Html': Expected value to be a string but found 
>qx.data.model.id"name[3079-0],qx.data.model.id"name[3080-0],qx.data.model.id"name[3081-0]!
>
>When I disable the binding to the lines 47 to 53 I get no error in 
>console. It seems like the bindings use the same model which doesn't 
>make sense.
>
>After that it works normally without error messages until I close and 
>open the widget again.
>
>I guess I could use plain event listeners for this task but I would like 
>to know why the code above doesn't work.
>
>------------------------------------------------------------------------------
>_______________________________________________
>qooxdoo-devel mailing list
>qooxdoo-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel



------------------------------------------------------------------------------
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to