Thank you very much
I am still a little puzzled
The code that i copied is from
tomahawk sample code. And it really works .
Maybe you mean we can't use nested
facets in facelet?
Thanks again for your
help
davy.mailing
2006-09-20
发件人: Andrew
Robinson
发送时间:
2006-09-19 23:51:45
收件人: MyFaces
Discussion
抄送:
主题: Re: Questions about
tree2 and Facelet
Why do you have nested facets? There should only be one facet per
"node" type. Nested is not supported. Have a look at the example apps
to see how to create the facets. The use of "expand" and "collapse"
facets is not supported, especially when you have added these facets
to a panel group. The panel group component does not render facets
On 9/19/06, davy.mailing <[EMAIL PROTECTED]
> wrote:
>
>
> Thanks for Andrew Robinson
>
> I wrote tree2.xhtml like this
>
>
> <html xmlns="http://www.w3.org/1999/xhtml"
> xmlns:ui="http://java.sun.com/jsf/facelets"
> xmlns:h="http://java.sun.com/jsf/html"
> xmlns:f="http://java.sun.com/jsf/core"
> xmlns:t="http://myfaces.apache.org/tomahawk"
>
> <h:inputText value="test jsf"/ >
> <f:view >
> <h:form id="tree" >
> <t:tree2 id="clientTree"
> value="#{csc_CSCTreeBean.treeData}" var="node"
> varNodeToggler="t" >
>
<f:facet name="person" >
>
<h:panelGroup >
>
<f:facet name="expand" >
>
<t:graphicImage value="images/yellow-folder-open.png"
> rendered="#{t.nodeExpanded}" border="0"/ >
>
</f:facet >
>
<f:facet name="collapse" >
>
<t:graphicImage value="images/yellow-folder-closed.png"
> rendered="#{!t.nodeExpanded}" border="0"/ >
>
</f:facet >
>
<h:outputText value="#{node.description}"
> styleClass="nodeFolder"/ >
>
</h:panelGroup >
> </f:facet
>
>
<f:facet name="foo-folder" >
>
<h:panelGroup >
>
<f:facet name="expand" >
>
<t:graphicImage value="images/yellow-folder-open.png"
> rendered="#{t.nodeExpanded}" border="0"/ >
>
</f:facet >
>
<f:facet name="collapse" >
>
<t:graphicImage value="images/yellow-folder-closed.png"
> rendered="#{!t.nodeExpanded}" border="0"/ >
>
</f:facet >
>
<h:outputText value="#{node.description}"
> styleClass="nodeFolder"/ >
>
<h:outputText value=" (#{node.childCount})"
> styleClass="childCount" rendered="#{!empty node.children}"/
>
>
</h:panelGroup >
> </f:facet
>
>
<f:facet name="bar-folder" >
>
<h:panelGroup >
>
<f:facet name="expand" >
>
<t:graphicImage value="images/blue-folder-open.gif"
> rendered="#{t.nodeExpanded}" border="0"/ >
>
</f:facet >
>
<f:facet name="collapse" >
>
<t:graphicImage value="images/blue-folder-closed.png"
> rendered="#{!t.nodeExpanded}" border="0"/ >
>
</f:facet >
>
<h:outputText value="#{node.description}"
> styleClass="nodeFolder"/ >
>
<h:outputText value=" (#{node.childCount})"
> styleClass="childCount" rendered="#{!empty node.children}"/
>
>
</h:panelGroup >
> </f:facet
>
>
<f:facet name="document" >
>
<h:panelGroup >
>
<h:commandLink immediate="true" styleClass="#{t.nodeSelected
> ? 'documentSelected':'document'}" actionListener="#{t.setNodeSelected}"
>
>
<t:graphicImage value="images/document.png" border="0"/ >
>
<h:outputText value="#{node.description}"/ >
>
<f:param name="docNum" value="#{node.identifier}"/ >
>
</h:commandLink >
>
</h:panelGroup >
> </f:facet
>
> </t:tree2 >
>
> </h:form >
> </f:view >
> </html >
>
>
> and in java code TreeBean I wrote like this
>
> public TreeNode getTreeData()
> {
> TreeNode treeData = new TreeNodeBase("foo-folder", "Inbox", false);
> TreeNodeBase personNode = new TreeNodeBase("person", "Frank Foo",
> false);
> personNode.getChildren().add(new TreeNodeBase("foo-folder",
> "Requires Foo", false));
> TreeNodeBase folderNode = new TreeNodeBase("foo-folder", "Requires
> Foo Reviewer", false);
> folderNode.getChildren().add(new TreeNodeBase("document", "X050001",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "X050002",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "X050003",
> true));
> personNode.getChildren().add(folderNode);
> personNode.getChildren().add(new TreeNodeBase("foo-folder",
> "Requires Foo Recommendation", false));
> folderNode = new TreeNodeBase("foo-folder", "Requires Foo Approval",
> false);
> folderNode.getChildren().add(new TreeNodeBase("document", "J050001",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "J050002",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "J050003",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "E050011",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "R050002",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "C050003",
> true));
> personNode.getChildren().add(folderNode);
> folderNode = new TreeNodeBase("bar-folder", "Requires Bar
> Processing", false);
> folderNode.getChildren().add(new TreeNodeBase("document", "X050003",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "X050011",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "F050002",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "G050003",
> true));
> personNode.getChildren().add(folderNode);
> folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval",
> false);
> folderNode.getChildren().add(new TreeNodeBase("document", "J050006",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "J050007",
> true));
> personNode.getChildren().add(folderNode);
> treeData.getChildren().add(personNode);
> personNode = new TreeNodeBase("person", "Betty Bar", false);
> personNode.getChildren().add(new TreeNodeBase("foo-folder",
> "Requires Foo", false));
> folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer",
> false);
> folderNode.getChildren().add(new TreeNodeBase("document", "X012000",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "X013000",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "X014000",
> true));
> personNode.getChildren().add(folderNode);
> folderNode = new TreeNodeBase("foo-folder", "Requires Foo
> Recommendation", false);
> folderNode.getChildren().add(new TreeNodeBase("document", "J010026",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "J020002",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "J030103",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "E030214",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "R020444",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "C010000",
> true));
> personNode.getChildren().add(folderNode);
> personNode.getChildren().add(new TreeNodeBase("foo-folder",
> "Requires Foo Approval", false));
> folderNode = new TreeNodeBase("bar-folder", "Requires Bar
> Processing", false);
> folderNode.getChildren().add(new TreeNodeBase("document", "T052003",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "T020011",
> true));
> personNode.getChildren().add(folderNode);
> folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval",
> false);
> folderNode.getChildren().add(new TreeNodeBase("document", "J010002",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "J030047",
> true));
> folderNode.getChildren().add(new TreeNodeBase("document", "F030112",
> true));
> personNode.getChildren().add(folderNode);
> treeData.getChildren().add(personNode);
> return treeData;
> }
>
> It does not work . I don't know why
>
> ________________________________
>
> davy.mailing
> 2006-09-19
> ________________________________
>
> 发件人: Andrew Robinson
> 发送时间: 2006-09-19 10:43:00
> 收件人: MyFaces Discussion
> 抄送:
> 主题: Re: Questions about tree2 and Facelet
>
>
>
> There is nothing special to do when using tree2 with
> facelets.
>
> On 9/18/06, davy.mailing
<[EMAIL PROTECTED] > wrote:
> >
> >
> > Dear all
> >
>
> I am using tree2 and facelet now
> >
>
> Who can tell me how to use tree2 in facelet and
> what's more a example will
> > be better
> >
> > thanks in advance
> >
> > ________________________________
> >
> > davy.mailing
> > 2006-09-18
>

