overriding dateeditor
Hi, I am still trying to find the proper way to override the default date editor component. I have tried to do the following in my AppModule class public static void contributeBeanBlockSource(ConfigurationBeanBlockContribution configuration) { configuration.add(new BeanBlockContribution(date, AppPropertyEditBlocks, dateEdit, true)); configuration.add(new BeanBlockContribution(date, AppPropertyEditBlocks, dateDisplay, false)); } But since the TapestryModule.class is contributing its own beanblocksources for those types public static void contributeBeanBlockSource(ConfigurationBeanBlockContribution configuration) { addEditBlock(configuration, text); addEditBlock(configuration, number); addEditBlock(configuration, enum); addEditBlock(configuration, boolean); addEditBlock(configuration, date); . . } my contributions get overridden by Tapestys' default. I tried adding an @order(after:*Tapestry*) annotation to my method but had no success. What can I do else but changing the original Tapestry source code to achieve this? Thanks Moritz
Re: overriding dateeditor
Em Wed, 03 Jun 2009 15:49:13 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Hi, HI! public static void contributeBeanBlockSource(ConfigurationBeanBlockContribution configuration) You should use an OrderedConfiguration as a parameter, not a Configuration. Example: Tapestry CRUD provides an editing block for entity classes and its configured like this: public static void contributeDataTypeAnalyzer( OrderedConfigurationDataTypeAnalyzer configuration, EntityDataTypeAnalyzer entityDataTypeAnalyzer) { configuration.add(Constants.ENTITY_DATA_TYPE, entityDataTypeAnalyzer, before:Annotation); } The before:Annotation guarantees that my analyzer is called before the Tapestry built-in ones. -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: overriding dateeditor
Sorry, does not work. org.apache.tapestry5.ioc.internal.OperationException Service 'BeanBlockSource' is configured using org.apache.tapestry5.ioc.Configuration, not org.apache.tapestry5.ioc.OrderedConfiguration. What is funny is that the order of execution of those contributeBeanBlockSource methods is not predictable. Most often times the method from my appModule class is called first but sometimes the method from tapestryModule is called first. M. Am 03.06.2009 um 21:02 schrieb Thiago H. de Paula Figueiredo: Em Wed, 03 Jun 2009 15:49:13 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Hi, HI! public static void contributeBeanBlockSource(ConfigurationBeanBlockContribution configuration) You should use an OrderedConfiguration as a parameter, not a Configuration. Example: Tapestry CRUD provides an editing block for entity classes and its configured like this: public static void contributeDataTypeAnalyzer( OrderedConfigurationDataTypeAnalyzer configuration, EntityDataTypeAnalyzer entityDataTypeAnalyzer) { configuration.add(Constants.ENTITY_DATA_TYPE, entityDataTypeAnalyzer, before:Annotation); } The before:Annotation guarantees that my analyzer is called before the Tapestry built-in ones. -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - 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
Re: overriding dateeditor
Em Wed, 03 Jun 2009 16:16:19 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Sorry, does not work. org.apache.tapestry5.ioc.internal.OperationException Service 'BeanBlockSource' is configured using org.apache.tapestry5.ioc.Configuration, not org.apache.tapestry5.ioc.OrderedConfiguration. What Tapestry version are you using? The example I gave you is for Tapestry 5.1.0.5. -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: overriding dateeditor
Well yes, I'm using 5.1.0.5 too. Your example is working for the DataTypeAnalyzer whicht takes an ordered List. BeanBlockContribution unfortunately only takes an unorderedList. M. Am 03.06.2009 um 21:29 schrieb Thiago H. de Paula Figueiredo: Em Wed, 03 Jun 2009 16:16:19 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Sorry, does not work. org.apache.tapestry5.ioc.internal.OperationException Service 'BeanBlockSource' is configured using org.apache.tapestry5.ioc.Configuration, not org.apache.tapestry5.ioc.OrderedConfiguration. What Tapestry version are you using? The example I gave you is for Tapestry 5.1.0.5. -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - 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
Re: overriding dateeditor
Em Wed, 03 Jun 2009 16:36:22 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Well yes, I'm using 5.1.0.5 too. Your example is working for the DataTypeAnalyzer whicht takes an ordered List. BeanBlockContribution unfortunately only takes an unorderedList. You're right, but I am too. :) As far as I know, you can have only one bean editor block for each type, so you need to provide a data type analyzer that says that dates have type mydate, for example, and then provide a bean editor block for it. ;) -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: overriding dateeditor
Wow, found a strange solution: calling the method contributeBeanBlockOverrideSource instead of contributeBeanBlockSource fixes it. My method is called after tapestrys'. I got this from tapx-datefield where the method has this name. Can anyone explain this? M. Am 03.06.2009 um 21:36 schrieb Moritz Gmelin: Well yes, I'm using 5.1.0.5 too. Your example is working for the DataTypeAnalyzer whicht takes an ordered List. BeanBlockContribution unfortunately only takes an unorderedList. M. Am 03.06.2009 um 21:29 schrieb Thiago H. de Paula Figueiredo: Em Wed, 03 Jun 2009 16:16:19 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Sorry, does not work. org.apache.tapestry5.ioc.internal.OperationException Service 'BeanBlockSource' is configured using org.apache.tapestry5.ioc.Configuration, not org.apache.tapestry5.ioc.OrderedConfiguration. What Tapestry version are you using? The example I gave you is for Tapestry 5.1.0.5. -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - 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 - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: overriding dateeditor
BeanBlockSourceImpl call BeanBlockOverrideSource first to find the display/edit block, so contribute to BeanBlockOverrideSource give you the chance to overwrite the default. DH - Original Message - From: Moritz Gmelin Sent: Thursday, June 04, 2009 4:01 AM Subject: Re: overriding dateeditor Wow, found a strange solution: calling the method contributeBeanBlockOverrideSource instead of contributeBeanBlockSource fixes it. My method is called after tapestrys'. I got this from tapx-datefield where the method has this name. Can anyone explain this? M. Am 03.06.2009 um 21:36 schrieb Moritz Gmelin: Well yes, I'm using 5.1.0.5 too. Your example is working for the DataTypeAnalyzer whicht takes an ordered List. BeanBlockContribution unfortunately only takes an unorderedList. M. Am 03.06.2009 um 21:29 schrieb Thiago H. de Paula Figueiredo: Em Wed, 03 Jun 2009 16:16:19 -0300, Moritz Gmelin moritz.gme...@gmx.de escreveu: Sorry, does not work. org.apache.tapestry5.ioc.internal.OperationException Service 'BeanBlockSource' is configured using org.apache.tapestry5.ioc.Configuration, not org.apache.tapestry5.ioc.OrderedConfiguration. What Tapestry version are you using? The example I gave you is for Tapestry 5.1.0.5. -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - 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 - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org