Hello, I want to use Wicket with GAE and exploit all GAE features but some problems arise.
1. I'm looking for a good solution for asynchronous simulteanous queries in Wicket. DataStore has a functionality of asynchronous queries so I would want to be able to fire various queries before rendering anything and then return the actual model objects when rendering particular component. I think of an Interface (or, better, abstract class) extending IModel with an additional method, name it prepareModel() which would run the asynchronous query, so getObjet would just wait for the query to finish and then return the result (this way total time spend of waiting for DataStore queries will be at most equal to slowest query). DataStore entities are organized into Entity Groups where there are ancestors and descendants. So sometimes to find an object I must first find the ancestor. So I would want to fire the prepareModel() for parent components first. 2. DataStore doesn't support joins internally and it's queries are limited to 1000 results (this means that GQL COUNT will never return value higher than 1000 even if there's more that 1000 entities that mets the requirements). Instead DataStore provides cursors to retrieve more than 1000 results and GAE devs recommends using separate sharded counters instead of GQL COUNT's (of course if the result would never exceed 1000 then we shall use normal GQL COUNT). Are there any components (repeaters) in Wicket that supports that approach? 3. I think that Wicket should be able to store pages from PageMap independently. This way we could store pages in separate entities in datastore (DataStore doesn't have schemas, one can store entities of any form as every kind) so fewer bytes would be transmitted to and from DataStore (Http Sessions are kept in MemCache and DiskStore). 4. How to inject an DataStore object in Models that will be testing friendly?