I'm getting back into Tapestry after starting to look at it many months ago 
and having to jump ship ( no pun intended ;) to work on another project.  
Currently I'm working on a proof of concept for a company that I'm consulting 
with where I have a model, and I want to display and edit the model using 
Tapestry components.

The model is:

Person
  |
  |--------->Name
  |
  |--------->Address

Person has a Name and an Address.

I want to develop reusable components, PersonEditor, NameEditor and 
AddressEditor, where PersonEditor is composed of NameEditor and 
AddressEditor.  I don't want the components to know how they were bound to 
their models, and I want a PersonEditor component to set the model(s) for 
it's child components (NameEditor/AddressEditor).

PersonEditor
  embeds NameEditor
  embeds AddressEditor

I'm approaching the problem using parameters/properties/bindings.  Currently 
the Page provides the Person model object, and binds it to a parameter of 
PersonEditor.


<specification class="twoflower.PersonPage">

 <component id="personEditor" type="/twoflower/PersonEditor.jwc">
  <binding name="person" property-path="person"/>
 </component>
 
</specification>


<specification class="twoflower.PersonEditor">

 <parameter name="person" property-name="person" required="yes"
  direction="in" java-type="twoflower.Person"/>
 
 <component id="nameEditor" type="/twoflower/NameEditor.jwc">
  <binding name="name" property-path="person.name"/>
 </component>

</specification>


<specification class="twoflower.NameEditor">

 <parameter name="name" property-name="name" required="yes"
   java-type="twoflower.Name"/>
 
 <component id="nameField" type="Insert">
  <binding name="value" property-path="name.value"/>
 </component>
 
</specification>

Currently, this does not work.  I get the following error: HTTP ERROR: 500 
Content type of response never set.

I've confirmed that PersonEditor.person is being set with the correct model 
object from PersonPage.  The problem seems to arise from trying to bind 
PersonEditor.person.name to PersonEditor.nameEditor.name.

Does anyone see any glaring problem with the component specifications?

Thanks in advance,
Rowland




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Tapestry-developer mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/tapestry-developer

Reply via email to