Time allowing, an optional sub-project of Tapestry.

The hard part is coming up with a format that works well with Tapestry;

I suppose we could just treat the first key name in the property path
as a JavaBean property, i.e.

user.address.line1

would expect there to be a

public JSONObject getUser() { ... }

on the class; the JSONObject would contain key "address", and sub-key "line1".

A proper syntax should give some option for supporting nested JSONArrays.

In addition, is only the Tapestry property case-insensitive, or do we
make the keys inside the JSONObjects case insensitive as well?

I've also been thinking of a simple mapping from JSONObject to normal
Object, with annotated fields and/or naming conventions. So you might
pass a JSONObject to a service and get back an Object that you can
then use with Tapestry.


On Fri, Jul 27, 2012 at 11:13 AM, Christian Riedel
<cr.ml...@googlemail.com> wrote:
> So what do you think? Should something like that go into tapestry-core or 
> into some 3rd party library?
>
>
> Am 27.07.2012 um 19:35 schrieb Howard Lewis Ship:
>
>> Some form of json: binding prefix will be invaluable as we move from
>> Java-centric ORMs such as Hibernate to JSON-centric databases such as
>> MongoDB and CouchDB (or, perhaps, even Datomic).
>>
>> On Fri, Jul 27, 2012 at 5:57 AM, Christian Riedel
>> <cr.ml...@googlemail.com> wrote:
>>> This might be solved using a custom PropertyBinding and should look like 
>>> ${json:property.name}…
>>> Challenge accepted!
>>>
>>> https://gist.github.com/3187796
>>>
>>>
>>> Am 27.07.2012 um 02:16 schrieb Angelo C.:
>>>
>>>> Hi,
>>>>
>>>> you have this in the code,
>>>>
>>>> public JSONObject getJS() {
>>>>      JSONObject js = new JSONObject();
>>>>      js.put("name1","123");
>>>>      return js;
>>>> }
>>>>
>>>> then in the template:
>>>> ${js.get('name1')}
>>>>
>>>> considering json objects are used often nowadays, possible to have a direct
>>>> support in template? maybe some other prefix like:
>>>> #{js.name1}
>>>>
>>>> what do you think?
>>>>
>>>> Angelo
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context: 
>>>> http://tapestry.1045711.n5.nabble.com/json-support-in-template-tp5714820.html
>>>> Sent from the Tapestry - User mailing list archive at Nabble.com.
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>
>>
>>
>>
>> --
>> Howard M. Lewis Ship
>>
>> Creator of Apache Tapestry
>>
>> The source for Tapestry training, mentoring and support. Contact me to
>> learn how I can get you up and productive in Tapestry fast!
>>
>> (971) 678-5210
>> http://howardlewisship.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to