Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    smartGWT vs SmartClientLGPL vs smartClientEE

    Hi,
    This might be a dead horse, but I haven't got the exact answer that I am looking for, so here goes again :)

    I am prototyping an app that does all the fancy stuff that RIApps do and at the same time, are (mostly) coded in Java.
    That's why I tried GWT first and then SmartGWT. The SmartGWT showcase talks of a load on demand tree widget here: (http://www.smartclient.com/smartgwt/showcase/#tree_databinding_ondemand)

    This class (TreeGrid) accepts a whole DataSource object and thereby effects the loadOnDemand feature.

    However, I'd like to pull data from a server and populate the model from that data. And finally pass that model to the TreeGrid using setData (instead of setDataSource()). And I'm able to do that correctly except for the "on-demand" part because the model is populated in it's entirety before it is passed to the UI widget.

    So I looked further and in the SmartClient documentation (http://www.smartclient.com/devcenter/versions/5.5/smartclientSDK/isomorphic/system/reference/SmartClient_Reference.html) under Tree Data Binding, it is advised to use ResultTree instead of Tree to achieve this functionality.

    However, ResultTree is a javascript class, not a java class; therefore I cannot use it in my GWT client-side java code.
    So, what it seems to boil down to, is that if I need on-demand loading, either I use dynamic XML to produce an XML file on the fly to feed into the existing TreeGrid.setDataSource(...) api, or I resort to javascript.

    In this thread (http://forums.smartclient.com/showthread.php?t=8818&highlight=java+classes), the writer has asked a similar question but he was suggested the SmartClientEE route which seems to provide good server side integration for this type of interaction. However, SmartClientXX veers away from the Java based GWT model and expects more javascript plumbing.

    Is there a purely Java solution (client AND server) that allows me to load a tree on demand by populating a data structure programatically AND that can scale for large amounts of data?

    SmartGWT -> SmartClient -> SmartClientEE seems to provide a better user experience, but it is certainly moving away from the Java approach that GWT proposes.

    Thanks in advance!
    Pankaj

    #2
    I must ask: what is wrong with using a DataSource?

    Comment


      #3
      Hi davidj6,
      There's nothing wrong in using a datasource. However, I did not see any documentation suggesting that doing so would effect a load-on-demand, such is proposed with the use of the ResultTree class.

      Thanks.

      Comment


        #4
        A DataSource is one of the key facilities of SC and SGWT (along with the powerful support in the server framework of EE). Load-on-demand is built-in to the Tree when using a DataSource that connects to a server that can provide the data is parts (like SGWTEE).

        Comment


          #5
          I think you need to re-read the documentation:
          ResultTrees are created for you by the TreeGrid when you set dataSource

          So however you were thinking about without a datasource, your going to have to code all your own logic.

          Comment


            #6
            I'm glad I stumbled across this post, because in a way I have exactly the same question.

            Sometimes I have terrible troubles with the jsp side of things due to total lack of experience, and so would be much happier to stay completely in the Java world for server and client.

            I have written quite some server side logic for processing data requests which I definitely want to keep.

            The licence I have purchased is for 'SmartClient / SmartGWT Pro - 1 seat' - so my question for Isomorphic is whether there is a Java only route for developing the client side of things. Apologies in advance if this is a dumb question.

            Thanks

            Comment


              #7
              Yes, SmartGWT is the Java-only way. There are a handful of SmartClient APIs that are not yet available in SmartGWT, but the number of such APIs is dropping rapidly, and the remaining APIs are non-critical. For example, this poster did not actually need ResultTree.

              Comment

              Working...
              X