Thanks for your reply. But when adding the method
model.add("account").label("Account").sortable(false); The error occurrs after clicking the beaneditform button, the log shows the following exception: [ERROR] TapestryModule.RequestExceptionHandler Processing of request failed with uncaught exception: Failure reading parameter 'model' of component Register:beaneditform: Bean editor model for example.domain.User already contains a property model for property 'account'. ... ... Caused by: java.lang.RuntimeException: Bean editor model for example.domain.User already contains a property model for property 'account'. at org.apache.tapestry5.internal.beaneditor.BeanModelImpl.validateNewPropertyName(BeanModelImpl.java:87) at org.apache.tapestry5.internal.beaneditor.BeanModelImpl.add(BeanModelImpl.java:128) at org.apache.tapestry5.internal.beaneditor.BeanModelImpl.add(BeanModelImpl.java:79) at org.jecommerce.pages.Register.getRegisterModel(Register.java:92) at $PropertyConduit_1240259d749.get($PropertyConduit_1240259d749.java) at org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:58) ... 74 more It looks like the BeanModel already contains the proerty account. I am really confused because no matter I add or do not add a new property, the exception will always be thrown. What place may I go wrong? Or is there any example I can check if anything I miss? Thank you very much. cordenier christophe wrote: > > To add a synthetic property, you only have to call add(propertyName) on > the > BeanModel. > > By setting the datatype on the resulting PropertyModel or by using > t:parameter, you will be able to create the display for the corresponding > property in your beaneditform. > > 2009/9/28 neo anderson <javadeveloper...@yahoo.co.uk> > >> >> It is the line where PropertyConduitSource (variable source.create() ... >> ) >> create synthetic property account as the following code. >> >> PropertyConduit accountProperty = >> source.create(User.class, >> "account"); >> >> Is this the right way to create PropertyConduit? I tried to change it >> using >> String.class, but the error is the same (NullPointerException). I think >> there should have something I miss, but that's the method I found on the >> mailinglist. I am confused indeed. >> >> >> http://www.nabble.com/T5%3A-Working-with-BeanModel-td18231888.html#a18352011 >> >> >> >> >> ccordenier wrote: >> > >> > What corresponds to line 92 in your code ? >> > >> > -----Message d'origine----- >> > De : neo anderson [mailto:javadeveloper...@yahoo.co.uk] >> > Envoyé : lundi 28 septembre 2009 14:23 >> > À : users@tapestry.apache.org >> > Objet : Re: Bean editor model for User already contains a property >> model >> > for property 'account' >> > >> > >> > >> > Now I use the folloing method to create synthetic property >> > >> > PropertyConduit accountProperty = >> > source.create(User.class, "account"); >> > ClassPropertyAdapter cpa = >> access.getAdapter(User.class); >> > PropertyAdapter pa = cpa.getPropertyAdapter("account"); >> > String dt = analyzer.identifyDataType(pa); >> > >> > >> model.add("account",accountProperty).dataType(dt).label("Account").sortable(false); >> > >> > However, it throws NullPointerException without further detail. >> > >> > Caused by: java.lang.NullPointerException >> > at >> > org.jecommerce.pages.Register.getRegisterModel(Register.java:92) >> > at >> > $PropertyConduit_12400839bf9.get($PropertyConduit_12400839bf9.java) >> > at >> > >> org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:58) >> > ... 91 more >> > >> > What additional information I need to provide (or anything is missing) >> so >> > that it won't throw this error? >> > >> > Thanks for help. >> > >> > >> > >> > Thiago H. de Paula Figueiredo wrote: >> >> >> >> Em Wed, 23 Sep 2009 17:58:08 -0300, neo anderson >> >> <javadeveloper...@yahoo.co.uk> escreveu: >> >> >> >> >> >>> I have an domain object named User, in which it has a field called >> >>> `account'. However, the User object only provide method getAccount(), >> >>> but does not >> >>> provide method setAccount(String account). >> >> >> >> BeanModelSource (used when a BeanModel is needed and you don't provide >> >> one) ignores read-only properties. It doesn't care about fields, just >> >> about getters and setters. >> >> >> >>> In the page object e.g. Register, in which I build a BeanModel using >> >>> BeanModelSource.create(User.class, ...) >> >> >> >> This method is deprecated. use createDisplayModel() or >> createEditModel() >> >> instead. >> >> >> >>> 1.) in the Register page object, BeanModel does not use >> >>> `BeanModel.add("account",null).label("Account").sortable(false)' >> method >> >>> to create account field. >> >>> >> >>> Error: >> >>> aused by: java.lang.RuntimeException: Bean editor model for User does >> >>> not >> >>> contain a property named 'account'. Available properties: address, >> >>> name, >> >>> password, sex. >> >> >> >> You can't reorder a model using some property that doesn't exist. >> >> >> >>> Caused by: java.lang.RuntimeException: Bean editor model for User >> >>> already >> >>> contains a property model for property 'account'. >> >> >> >> You can't add the same property twice in the same model. >> >> >> >>> What is the correct way to add a column that the User object doesn't >> >>> provide get/set method at the same time? >> >> >> >> For BeanEditForm or BeanEditor, you'll need to provide your own >> >> PropertyConduit to model.add(String property, PropertyConduit >> conduit). >> >> >> >> -- >> >> 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 >> >> >> >> >> >> >> > >> > -- >> > View this message in context: >> > >> http://www.nabble.com/Bean-editor-model-for-User-already-contains-a-property-model-for-property-%27account%27-tp25531292p25644707.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 >> > >> > >> > >> > >> > Ce message et les pièces jointes sont confidentiels et réservés à >> l'usage >> > exclusif de ses destinataires. Il peut également être protégé par le >> > secret professionnel. Si vous recevez ce message par erreur, merci d'en >> > avertir immédiatement l'expéditeur et de le détruire. L'intégrité du >> > message ne pouvant être assurée sur Internet, la responsabilité du >> groupe >> > Atos Origin ne pourra être recherchée quant au contenu de ce message. >> Bien >> > que les meilleurs efforts soient faits pour maintenir cette >> transmission >> > exempte de tout virus, l'expéditeur ne donne aucune garantie à cet >> égard >> > et sa responsabilité ne saurait être recherchée pour tout dommage >> > résultant d'un virus transmis. >> > >> > This e-mail and the documents attached are confidential and intended >> > solely for the addressee; it may also be privileged. If you receive >> this >> > e-mail in error, please notify the sender immediately and destroy it. >> As >> > its integrity cannot be secured on the Internet, the Atos Origin group >> > liability cannot be triggered for the message content. Although the >> sender >> > endeavours to maintain a computer virus-free network, the sender does >> not >> > warrant that this transmission is virus-free and will not be liable for >> > any damages resulting from any virus transmitted. >> > >> > >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org >> > For additional commands, e-mail: users-h...@tapestry.apache.org >> > >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/Bean-editor-model-for-User-already-contains-a-property-model-for-property-%27account%27-tp25531292p25645385.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 >> >> > > -- View this message in context: http://www.nabble.com/Bean-editor-model-for-User-already-contains-a-property-model-for-property-%27account%27-tp25531292p25652604.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