You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@pivot.apache.org by Duto <ol...@pasteur.fr> on 2010/09/20 15:48:03 UTC

composed key on Localization

Hello,

I use the Localizationvia Json file and I use composed key like this :

"startDate": {
  "header":"Start",
  "label":"Start date"
}

<Label Form.label="%startDate.label" value="2010.09.01"/>

If I forget my composed key on my file, the application don't start with
this Exception :
java.lang.IllegalArgumentException
	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
	at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
	at
org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
	at
org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
	at
org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
	at
org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
	at
org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
	at
org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
	at
org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
	at
org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
	at
org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
	at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
	at
org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
	at
org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
java.lang.IllegalArgumentException: Modal dialogs must have an owner.
	at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
	at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
	at org.apache.pivot.wtk.Window.open(Window.java:571)
	at
org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
	at
org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
	at
org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
	at
org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

But if my key is not composed, the application start with name of the key. I
would like to know if it's not possible to obtain the same thinks with the
composed key ?

Best regards

Duto



-- 
View this message in context: http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
Sent from the Apache Pivot - Users mailing list archive at Nabble.com.

Re: composed key on Localization

Posted by Chris Bartlett <cb...@gmail.com>.
Duto,

I haven't had time to look into this properly, but will try to get back to
you later.
It certainly looks like it should work based on the ComponentExplorer
tutorial.

http://svn.apache.org/repos/asf/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/
http://svn.apache.org/repos/asf/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.json
http://svn.apache.org/repos/asf/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer_window.bxml

See
<Border TabPane.tabData="%explorerPane.label">
on line 29

Can you run the ComponentExplorer application without errors?
http://svn.apache.org/repos/asf/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java

Regards,

Chris

On 20 September 2010 20:48, Duto <ol...@pasteur.fr> wrote:

>
> Hello,
>
> I use the Localizationvia Json file and I use composed key like this :
>
> "startDate": {
>  "header":"Start",
>  "label":"Start date"
> }
>
> <Label Form.label="%startDate.label" value="2010.09.01"/>
>
> If I forget my composed key on my file, the application don't start with
> this Exception :
> java.lang.IllegalArgumentException
>        at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
>        at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
>        at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
>        at
>
> org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
>        at
>
> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
>        at
> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>        at
>
> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>        at
> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>        at
>
> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>        at
> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>        at
> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
>        at
> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
>        at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
>        at
>
> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
>        at
>
> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>        at
>
> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>        at
>
> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>        at
>
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>        at
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>        at
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> java.lang.IllegalArgumentException: Modal dialogs must have an owner.
>        at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
>        at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
>        at org.apache.pivot.wtk.Window.open(Window.java:571)
>        at
>
> org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
>        at
>
> org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
>        at
>
> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
>        at
>
> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>        at
>
> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>        at
>
> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>        at
>
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>        at
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>        at
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>
> But if my key is not composed, the application start with name of the key.
> I
> would like to know if it's not possible to obtain the same thinks with the
> composed key ?
>
> Best regards
>
> Duto
>
>
>
> --
> View this message in context:
> http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
> Sent from the Apache Pivot - Users mailing list archive at Nabble.com.
>

Re: composed key on Localization

Posted by Olivier Dutrieux <ol...@pasteur.fr>.
  Oki that's work great like I would like thx :)

Duto

Le 22/09/2010 02:28, Greg Brown a écrit :
> OK, try it with the latest build and let me know if you run into any 
> problems.
>
> On Sep 21, 2010, at 4:16 PM, Olivier Dutrieux wrote:
>
>> remove completely startDate.label from json file
>>
>> Duto
>>
>> Le 21/09/2010 18:18, Greg Brown a écrit :
>>> I don't see this problem. If I change "label" to "foo" in Test.json, 
>>> the application starts and I see "startDate.label" in the UI. Can 
>>> you provide a specific code sample that demonstrates the issue?
>>>
>>> Thanks,
>>> Greg
>>>
>>> On Sep 21, 2010, at 11:51 AM, Olivier Dutrieux wrote:
>>>
>>>> Hello,
>>>>
>>>> I fact the problem is when the caller missing the nested property 
>>>> on the json file, If he missing a no nested property (like 
>>>> %startdate) the application start, but if he missing the nested 
>>>> property (like %startdate.label) the application fail with my 
>>>> previous error message.
>>>>
>>>> I would like to know if it's not possible to obtain no error (like 
>>>> no nested property) with the
>>>> nested property?
>>>>
>>>> Best regards
>>>>
>>>> Duto
>>>>
>>>> Le 21/09/2010 17:42, Greg Brown a écrit :
>>>>> Yes, you should be able to use nested property names in attribute values - see attached.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Sep 20, 2010, at 9:48 AM, Duto wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I use the Localizationvia Json file and I use composed key like this :
>>>>>>
>>>>>> "startDate": {
>>>>>>   "header":"Start",
>>>>>>   "label":"Start date"
>>>>>> }
>>>>>>
>>>>>> <Label Form.label="%startDate.label" value="2010.09.01"/>
>>>>>>
>>>>>> If I forget my composed key on my file, the application don't start with
>>>>>> this Exception :
>>>>>> java.lang.IllegalArgumentException
>>>>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
>>>>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
>>>>>> 	at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
>>>>>> 	at
>>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
>>>>>> 	at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
>>>>>> 	at
>>>>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
>>>>>> 	at
>>>>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>>>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>>>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>>>> 	at
>>>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>>>> 	at
>>>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>>>> 	at
>>>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>>>> java.lang.IllegalArgumentException: Modal dialogs must have an owner.
>>>>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
>>>>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
>>>>>> 	at org.apache.pivot.wtk.Window.open(Window.java:571)
>>>>>> 	at
>>>>>> org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
>>>>>> 	at
>>>>>> org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
>>>>>> 	at
>>>>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
>>>>>> 	at
>>>>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>>>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>>>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>>>> 	at
>>>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>>>> 	at
>>>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>>>> 	at
>>>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>>>>
>>>>>> But if my key is not composed, the application start with name of the key. I
>>>>>> would like to know if it's not possible to obtain the same thinks with the
>>>>>> composed key ?
>>>>>>
>>>>>> Best regards
>>>>>>
>>>>>> Duto
>>>>>>
>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> View this message in context:http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
>>>>>> Sent from the Apache Pivot - Users mailing list archive atNabble.com  <http://Nabble.com/>.
>>>
>>

Re: composed key on Localization

Posted by Greg Brown <gk...@mac.com>.
OK, try it with the latest build and let me know if you run into any problems.

On Sep 21, 2010, at 4:16 PM, Olivier Dutrieux wrote:

> remove completely startDate.label from json file 
> 
> Duto
> 
> Le 21/09/2010 18:18, Greg Brown a écrit :
>> 
>> I don't see this problem. If I change "label" to "foo" in Test.json, the application starts and I see "startDate.label" in the UI. Can you provide a specific code sample that demonstrates the issue?
>> 
>> Thanks,
>> Greg
>> 
>> On Sep 21, 2010, at 11:51 AM, Olivier Dutrieux wrote:
>> 
>>> Hello,
>>> 
>>> I fact the problem is when the caller missing the nested property on the json file, If he missing a no nested property (like %startdate) the application start, but if he missing the nested property (like %startdate.label) the application fail with my previous error message.
>>> 
>>> I would like to know if it's not possible to obtain no error (like no nested property) with the
>>> nested property?
>>> 
>>> Best regards
>>> 
>>> Duto
>>> 
>>> Le 21/09/2010 17:42, Greg Brown a écrit :
>>>> 
>>>> Yes, you should be able to use nested property names in attribute values - see attached.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> On Sep 20, 2010, at 9:48 AM, Duto wrote:
>>>> 
>>>>> Hello,
>>>>> 
>>>>> I use the Localizationvia Json file and I use composed key like this :
>>>>> 
>>>>> "startDate": {
>>>>>  "header":"Start",
>>>>>  "label":"Start date"
>>>>> }
>>>>> 
>>>>> <Label Form.label="%startDate.label" value="2010.09.01"/>
>>>>> 
>>>>> If I forget my composed key on my file, the application don't start with
>>>>> this Exception :
>>>>> java.lang.IllegalArgumentException
>>>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
>>>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
>>>>> 	at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
>>>>> 	at
>>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
>>>>> 	at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
>>>>> 	at
>>>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
>>>>> 	at
>>>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>>> 	at
>>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>>> 	at
>>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>>> 	at
>>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>>> java.lang.IllegalArgumentException: Modal dialogs must have an owner.
>>>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
>>>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
>>>>> 	at org.apache.pivot.wtk.Window.open(Window.java:571)
>>>>> 	at
>>>>> org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
>>>>> 	at
>>>>> org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
>>>>> 	at
>>>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
>>>>> 	at
>>>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>>> 	at
>>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>>> 	at
>>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>>> 	at
>>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>>> 
>>>>> But if my key is not composed, the application start with name of the key. I
>>>>> would like to know if it's not possible to obtain the same thinks with the
>>>>> composed key ?
>>>>> 
>>>>> Best regards
>>>>> 
>>>>> Duto
>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>> View this message in context: http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
>>>>> Sent from the Apache Pivot - Users mailing list archive at Nabble.com.
>> 
> 
> -- 
> Olivier Dutrieux
> Études et Projets Informatiques (Tél : 31 62)


Re: composed key on Localization

Posted by Olivier Dutrieux <ol...@pasteur.fr>.
  remove completely startDate.label from json file

Duto

Le 21/09/2010 18:18, Greg Brown a écrit :
> I don't see this problem. If I change "label" to "foo" in Test.json, 
> the application starts and I see "startDate.label" in the UI. Can you 
> provide a specific code sample that demonstrates the issue?
>
> Thanks,
> Greg
>
> On Sep 21, 2010, at 11:51 AM, Olivier Dutrieux wrote:
>
>> Hello,
>>
>> I fact the problem is when the caller missing the nested property on 
>> the json file, If he missing a no nested property (like %startdate) 
>> the application start, but if he missing the nested property (like 
>> %startdate.label) the application fail with my previous error message.
>>
>> I would like to know if it's not possible to obtain no error (like no 
>> nested property) with the
>> nested property?
>>
>> Best regards
>>
>> Duto
>>
>> Le 21/09/2010 17:42, Greg Brown a écrit :
>>> Yes, you should be able to use nested property names in attribute values - see attached.
>>>
>>>
>>>
>>>
>>>
>>> On Sep 20, 2010, at 9:48 AM, Duto wrote:
>>>
>>>> Hello,
>>>>
>>>> I use the Localizationvia Json file and I use composed key like this :
>>>>
>>>> "startDate": {
>>>>   "header":"Start",
>>>>   "label":"Start date"
>>>> }
>>>>
>>>> <Label Form.label="%startDate.label" value="2010.09.01"/>
>>>>
>>>> If I forget my composed key on my file, the application don't start with
>>>> this Exception :
>>>> java.lang.IllegalArgumentException
>>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
>>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
>>>> 	at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
>>>> 	at
>>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
>>>> 	at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
>>>> 	at
>>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
>>>> 	at
>>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>> 	at
>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>> 	at
>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>> 	at
>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>> java.lang.IllegalArgumentException: Modal dialogs must have an owner.
>>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
>>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
>>>> 	at org.apache.pivot.wtk.Window.open(Window.java:571)
>>>> 	at
>>>> org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
>>>> 	at
>>>> org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
>>>> 	at
>>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
>>>> 	at
>>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>> 	at
>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>> 	at
>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>> 	at
>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>>
>>>> But if my key is not composed, the application start with name of the key. I
>>>> would like to know if it's not possible to obtain the same thinks with the
>>>> composed key ?
>>>>
>>>> Best regards
>>>>
>>>> Duto
>>>>
>>>>
>>>>
>>>> -- 
>>>> View this message in context:http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
>>>> Sent from the Apache Pivot - Users mailing list archive atNabble.com  <http://Nabble.com>.
>

-- 
Olivier Dutrieux
Études et Projets Informatiques (Tél : 31 62)

Re: composed key on Localization

Posted by Greg Brown <gk...@mac.com>.
I don't see this problem. If I change "label" to "foo" in Test.json, the application starts and I see "startDate.label" in the UI. Can you provide a specific code sample that demonstrates the issue?

Thanks,
Greg

On Sep 21, 2010, at 11:51 AM, Olivier Dutrieux wrote:

> Hello,
> 
> I fact the problem is when the caller missing the nested property on the json file, If he missing a no nested property (like %startdate) the application start, but if he missing the nested property (like %startdate.label) the application fail with my previous error message.
> 
> I would like to know if it's not possible to obtain no error (like no nested property) with the
> nested property?
> 
> Best regards
> 
> Duto
> 
> Le 21/09/2010 17:42, Greg Brown a écrit :
>> 
>> Yes, you should be able to use nested property names in attribute values - see attached.
>> 
>> 
>> 
>> 
>> On Sep 20, 2010, at 9:48 AM, Duto wrote:
>> 
>>> Hello,
>>> 
>>> I use the Localizationvia Json file and I use composed key like this :
>>> 
>>> "startDate": {
>>>  "header":"Start",
>>>  "label":"Start date"
>>> }
>>> 
>>> <Label Form.label="%startDate.label" value="2010.09.01"/>
>>> 
>>> If I forget my composed key on my file, the application don't start with
>>> this Exception :
>>> java.lang.IllegalArgumentException
>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
>>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
>>> 	at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
>>> 	at
>>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
>>> 	at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
>>> 	at
>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
>>> 	at
>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>> 	at
>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>> 	at
>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>> 	at
>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>> java.lang.IllegalArgumentException: Modal dialogs must have an owner.
>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
>>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
>>> 	at org.apache.pivot.wtk.Window.open(Window.java:571)
>>> 	at
>>> org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
>>> 	at
>>> org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
>>> 	at
>>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
>>> 	at
>>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>> 	at
>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>> 	at
>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>> 	at
>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>> 
>>> But if my key is not composed, the application start with name of the key. I
>>> would like to know if it's not possible to obtain the same thinks with the
>>> composed key ?
>>> 
>>> Best regards
>>> 
>>> Duto
>>> 
>>> 
>>> 
>>> -- 
>>> View this message in context: http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
>>> Sent from the Apache Pivot - Users mailing list archive at Nabble.com.
>> 


Re: composed key on Localization

Posted by Olivier Dutrieux <ol...@pasteur.fr>.
  Hello,

I fact the problem is when the caller missing the nested property on the 
json file, If he missing a no nested property (like %startdate) the 
application start, but if he missing the nested property (like 
%startdate.label) the application fail with my previous error message.

I would like to know if it's not possible to obtain no error (like no 
nested property) with the
nested property?

Best regards

Duto

Le 21/09/2010 17:42, Greg Brown a écrit :
> Yes, you should be able to use nested property names in attribute values - see attached.
>
>
>
>
>
> On Sep 20, 2010, at 9:48 AM, Duto wrote:
>
>> Hello,
>>
>> I use the Localizationvia Json file and I use composed key like this :
>>
>> "startDate": {
>>   "header":"Start",
>>   "label":"Start date"
>> }
>>
>> <Label Form.label="%startDate.label" value="2010.09.01"/>
>>
>> If I forget my composed key on my file, the application don't start with
>> this Exception :
>> java.lang.IllegalArgumentException
>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:178)
>> 	at org.apache.pivot.beans.BeanAdapter.<init>(BeanAdapter.java:167)
>> 	at org.apache.pivot.json.JSON.containsKey(JSON.java:221)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.processAttributes(BXMLSerializer.java:1037)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:801)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.processStartElement(BXMLSerializer.java:883)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:435)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:614)
>> 	at
>> org.apache.pivot.beans.BXMLSerializer.readObject(BXMLSerializer.java:568)
>> 	at fr.pasteur.infoIp.views.InfoIp.startup(InfoIp.java:21)
>> 	at
>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:594)
>> 	at
>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>> 	at
>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>> 	at
>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>> 	at
>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>> java.lang.IllegalArgumentException: Modal dialogs must have an owner.
>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:180)
>> 	at org.apache.pivot.wtk.Dialog.open(Dialog.java:132)
>> 	at org.apache.pivot.wtk.Window.open(Window.java:571)
>> 	at
>> org.apache.pivot.wtk.DesktopApplicationContext.displayException(DesktopApplicationContext.java:677)
>> 	at
>> org.apache.pivot.wtk.DesktopApplicationContext.access$400(DesktopApplicationContext.java:45)
>> 	at
>> org.apache.pivot.wtk.DesktopApplicationContext$2.run(DesktopApplicationContext.java:597)
>> 	at
>> org.apache.pivot.wtk.ApplicationContext$QueuedCallback.run(ApplicationContext.java:1423)
>> 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>> 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>> 	at
>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>> 	at
>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>> 	at
>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>> 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>> 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>
>> But if my key is not composed, the application start with name of the key. I
>> would like to know if it's not possible to obtain the same thinks with the
>> composed key ?
>>
>> Best regards
>>
>> Duto
>>
>>
>>
>> -- 
>> View this message in context: http://apache-pivot-users.399431.n3.nabble.com/composed-key-on-Localization-tp1529066p1529066.html
>> Sent from the Apache Pivot - Users mailing list archive at Nabble.com.

Re: composed key on Localization

Posted by Greg Brown <gk...@mac.com>.
Yes, you should be able to use nested property names in attribute values - see attached.