Check out the Tacos Tree component  (http://tacos.sf.net/). The source
has a TreeIterator that you can use independently to flatten out
hierarchical iterations so you can use a regular Foreach (while
tracking depth)...

check the source for: 

http://cvs.sourceforge.net/viewcvs.py/tacos/tacos/src/net/sf/tacos/tree/TreeIterator.java?rev=1.2&view=auto

  viktor


On 8/10/05, Paul Cantrell <[EMAIL PROTECTED]> wrote:
> Suppose I have some data like this:
> 
>      public interface TaxonomyTree
>          {
>          public String getAnimalName();
>          public Set<TaxonomyTree> getChildren();
>          }
> 
> ...and suppose I want to render it in a page with a recursively
> nested structure, so that my HTML tag structure matches the tree
> structure of the data:
> 
>      <div>
>          Birds
>          <div> Hummingbird </div>
>          <div> Warbler </div>
>          <div> Raptor
>              <div> Eagle </div>
>              <div> Vulture </div>
>          </div>
>      </div>
>      <div>
>          Mammals
>          <div> Platypus </div>
>      ...etc...
> 
> Of course, *if* I know that the tree is n levels deep, I can render
> it with n nested @For components (though it's pretty ugly!). But if I
> don't know the depth of the tree, I need true recursion.
> 
> Is there a way to do this without writing a custom component for my
> specific data? Is anybody aware of a generic component that will do
> the job? I'm hoping for something like this:
> 
>      <span jwcid="[EMAIL PROTECTED]" source="ognl:treeRootNodes">
>          <div>
>              <span jwcid="@Insert"
> value="ognl:components.animalTree.value.animalName" />
>              <span jwcid="@RecursiveChildren" loop="animalTree"
>                  value="ognl:components.animalTree.value.children" />
>          </div>
>      </span>
> 
> If nobody's aware of such a thing, I might try my hand at writing it.
> But I'd rather spare myself the effort if there's already a good
> solution out there....
> 
> Cheers,
> 
> Paul
> 
> _________________________________________________________________
> 
> "Les grandes personnes ne comprennent jamais rien toutes seules,
>   et c'est fatigant, pour les enfants, de toujours et toujours
>   leur donner des explications."     -- Antoine de Saint-Exupéry
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to