On Thu, 31 Oct 2013 14:14:32 -0200, Hottois Ludwig <ludwig.hott...@worldline.com> wrote:

Hi everyone !

Hi!

I was asking myself during a long time how to correctly create a form for create a user, but in this form, i want include a part wich is a form for create an address.

I was thinking first about putting this part of the form, which is created for instruct informations about the user address, into a component, and include this into the parent tml like :

<t :form>
<t :texfield value= <name >/>

<t :myform.address/>
....

</form>

And into myform.address put :

<t :container ...>
<t :textfield value= < roadName >/>
....
</t :container>

But if i do this, when i click on the submit on the principal form, the fired event of validation asking is not catched by the < myform.address > component i think ?

Yep. That's expected behavior. Tapestry events bubble up. The form is surrounding your Address component, which is inside the form (below). Form triggers a validate event, which bubbles up to the component above it (parent), which, in this case, is your page or the component in which your form was declared. The Address component is below the form.

I haven't tried that, but you can @Environment private FormSupport formSupport in Address and use one its defer() methods to register a callback and validate the information edited inside Address.

And when i click on my submit, my principal form doesn't have any information about my differents fields into the sub form.

Yep. Component should be built and used as black boxes (that's the best practice), and the page containg the Address component shouldn't access the Address form fields (again, that's the best practice). On the other hand, nothing prevents you from adding getters in Address to access the form fields there and use @InjectComponent private Address address.


What are the best practices?

Thanks,
Ludwig

________________________________

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? de Worldline 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 Worldline 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.


--
Thiago H. de Paula Figueiredo
Tapestry, Java and Hibernate consultant and developer
http://machina.com.br

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

Reply via email to