1 2 Previous Next 15 Replies Latest reply: Jan 17, 2007 11:03 AM by Frank Cornelis RSS

Using SEAM with Apache Tree2

Andrew Newbie

I'd like to use SEAM together with Apach Tree2 component. Is it possible? If someone have experience in such task please share :-)

Thanks

--Andrew

  • 1. Re: Using SEAM with Apache Tree2
    Andrew Newbie

    has any one tried this and has some example code?
    I would really appreciate some help :-)

  • 2. Re: Using SEAM with Apache Tree2
    Andrew Newbie

    When i tried to start examples from MyFaces examples in my application i faced with problem

    17:02:30,671 INFO [STDOUT] 20.10.2005 17:02:30 com.sun.facelets.FaceletViewHandler handleRenderException
    SEVERE: Error Rendering View
    java.lang.IllegalArgumentException: Value must be a TreeModel or TreeNode
     at org.apache.myfaces.custom.tree2.UITreeData.getDataModel(UITreeData.java:398)
     at org.apache.myfaces.custom.tree2.UITreeData.saveState(UITreeData.java:91)
     at org.apache.myfaces.custom.tree2.HtmlTree.saveState(HtmlTree.java:60)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:462)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
     at org.apache.myfaces.application.jsp.JspStateManagerImpl.getComponentStateToSave(JspStateManagerImpl.java:70)
     at org.apache.myfaces.application.jsp.JspStateManagerImpl.saveSerializedView(JspStateManagerImpl.java:215)
     at com.sun.facelets.FaceletViewHandler.writeState(FaceletViewHandler.java:589)
     at org.apache.myfaces.renderkit.html.HtmlFormRendererBase.encodeBegin(HtmlFormRendererBase.java:74)
     at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:307)
     at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:511)
     at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:518)
     at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:447)
     at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:300)
     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:95)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
     at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
     at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
     at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
     at java.lang.Thread.run(Unknown Source)
    17:02:30,687 INFO [STDOUT] 20.10.2005 17:02:30 com.sun.facelets.FaceletViewHandler handleRenderException
    SEVERE: Took Type: java.io.PrintWriter


    Here is my class

    @Stateful
    @Name("classifierManagement")
    @Interceptor(SeamInterceptor.class)
    public class ClassifierManagementAction implements ClassifierManagement
    {
     private static final Logger log = Logger.getLogger(ClassifierManagement.class);
     @In
     private transient FacesContext facesContext;
    
    
     @Begin
     public TreeNode getTreeData() throws Exception {
     try{
     TreeNode treeData = new TreeNodeBase("foo-folder", "Inbox", true);
     TreeNodeBase t = null;
    
     // construct a set of fake data (normally your data would come from a database)
    
     // populate Frank's portion of the tree
     TreeNodeBase personNode = new TreeNodeBase("person", "Frank Foo", true);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo", true));
     TreeNodeBase folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X050001", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050003", false));
     personNode.getChildren().add(folderNode);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo Recommendation", true));
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J050001", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "E050011", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "R050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "C050003", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Processing", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X050003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050011", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "F050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "G050003", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J050006", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050007", false));
     personNode.getChildren().add(folderNode);
    
     treeData.getChildren().add(personNode);
    
     // populate Betty's portion of the tree
     personNode = new TreeNodeBase("person", "Betty Bar", true);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo", true));
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X012000", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X013000", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X014000", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Recommendation", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J010026", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J020002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J030103", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "E030214", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "R020444", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "C010000", false));
     personNode.getChildren().add(folderNode);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo Approval", true));
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Processing", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "T052003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "T020011", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J010002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J030047", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "F030112", false));
     personNode.getChildren().add(folderNode);
    
     treeData.getChildren().add(personNode);
    
    
    
     return treeData;
     }
     catch (Exception e){
     System.err.println(e);
     return null;
     }
     }
     /**
     * ??????? ?????????
     */
     @Destroy @Remove
     public void destroy()
     {
     log.info("destroyed");
     }


    and .xhtml

    <div class="section">
    <h:form id="foo">
     <t:tree2 id="clientTree" value="#{classifierManagement.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>
    
     <br/>
     <span style="font-family:verdana">
     <b>Tree2 w/server-side toggle</b><br/>
     </span>
     <br/>
    
     <!-- Expand/Collapse Handled By Server -->
     <t:tree2 id="serverTree" value="#{classifierManagement.treeData}" var="node" varNodeToggler="t" clientSideToggle="false">
     <f:facet name="person">
     <h:panelGroup>
     <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
     <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
     <h:outputText value="#{node.description}" styleClass="nodeFolder"/>
     </h:panelGroup>
     </f:facet>
     <f:facet name="foo-folder">
     <h:panelGroup>
     <t:graphicImage value="/images/yellow-folder-open.png" rendered="#{t.nodeExpanded}" border="0"/>
     <t:graphicImage value="/images/yellow-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
     <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>
     <t:graphicImage value="/images/blue-folder-open.gif" rendered="#{t.nodeExpanded}" border="0"/>
     <t:graphicImage value="/images/blue-folder-closed.png" rendered="#{!t.nodeExpanded}" border="0"/>
    
     <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>
    </div>


    Some help needed. Thanks

    --Andrew

  • 3. Re: Using SEAM with Apache Tree2
    js8523 Novice

    your stateful session bean must extend/implement the TreeModelBase class in the myfaces tomahawk class.

    Hope this helps, take a look at the exampl and all the other private member variables and functions.

    You need to implement all of these.

    Hope this helps,

    James

  • 4. Re: Using SEAM with Apache Tree2
    Andrew Newbie

    Sorry, may be i didn't understand you but it not working :-(

    10:15:09,546 INFO [NamingHelper] JNDI InitialContext properties:{}
    10:15:09,828 INFO [STDOUT] java.lang.IllegalArgumentException: wrong number of arguments
    10:15:09,828 INFO [STDOUT] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    10:15:09,828 INFO [STDOUT] at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    10:15:09,828 INFO [STDOUT] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    10:15:09,828 INFO [STDOUT] at java.lang.reflect.Constructor.newInstance(Unknown Source)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.EJBContainer.construct(EJBContainer.java:242)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.AbstractPool.create(AbstractPool.java:42)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.ThreadlocalPool.get(ThreadlocalPool.java:33)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.cache.simple.SimpleStatefulCache.create(SimpleStatefulCache.java:152)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.stateful.StatefulContainer.dynamicInvoke(StatefulContainer.java:224)
    10:15:09,828 INFO [STDOUT] at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:107)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:37)
    10:15:09,828 INFO [STDOUT] at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
    10:15:09,828 INFO [STDOUT] at org.jboss.ejb3.stateful.StatefulRemoteProxy.invoke(StatefulRemoteProxy.java:119)
    10:15:09,828 INFO [STDOUT] at $Proxy256.getTreeModel(Unknown Source)
    10:15:09,828 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    10:15:09,828 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    10:15:09,828 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    10:15:09,828 INFO [STDOUT] at java.lang.reflect.Method.invoke(Unknown Source)
    10:15:09,828 INFO [STDOUT] at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:400)
    10:15:09,828 INFO [STDOUT] at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:71)
    10:15:09,828 INFO [STDOUT] at com.sun.facelets.el.LegacyELContext$LegacyELResolver.getValue(LegacyELContext.java:137)
    10:15:09,828 INFO [STDOUT] at com.sun.el.parser.AstValue.getValue(AstValue.java:96)
    10:15:09,843 INFO [STDOUT] at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:183)
    10:15:09,843 INFO [STDOUT] at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
    10:15:09,843 INFO [STDOUT] at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.custom.tree2.UITreeData.getValue(UITreeData.java:248)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.custom.tree2.UITreeData.getDataModel(UITreeData.java:386)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.custom.tree2.UITreeData.saveState(UITreeData.java:91)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.custom.tree2.HtmlTree.saveState(HtmlTree.java:60)
    10:15:09,843 INFO [STDOUT] at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:462)
    10:15:09,843 INFO [STDOUT] at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
    10:15:09,843 INFO [STDOUT] at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.application.jsp.JspStateManagerImpl.getComponentStateToSave(JspStateManagerImpl.java:70)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.application.jsp.JspStateManagerImpl.saveSerializedView(JspStateManagerImpl.java:215)
    10:15:09,843 INFO [STDOUT] at com.sun.facelets.FaceletViewHandler.writeState(FaceletViewHandler.java:589)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.renderkit.html.HtmlFormRendererBase.encodeBegin(HtmlFormRendererBase.java:74)
    10:15:09,843 INFO [STDOUT] at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:307)
    10:15:09,843 INFO [STDOUT] at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:511)
    10:15:09,843 INFO [STDOUT] at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:518)
    10:15:09,843 INFO [STDOUT] at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:447)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:300)
    10:15:09,843 INFO [STDOUT] at javax.faces.webapp.FacesServlet.service(FacesServlet.java:95)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    10:15:09,843 INFO [STDOUT] at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    10:15:09,843 INFO [STDOUT] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    10:15:09,843 INFO [STDOUT] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
    10:15:09,843 INFO [STDOUT] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
    10:15:09,843 INFO [STDOUT] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    10:15:09,843 INFO [STDOUT] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    10:15:09,843 INFO [STDOUT] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
    10:15:09,843 INFO [STDOUT] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
    10:15:09,843 INFO [STDOUT] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    10:15:09,843 INFO [STDOUT] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
    10:15:09,843 INFO [STDOUT] at java.lang.Thread.run(Unknown Source)
    10:15:09,843 INFO [STDOUT] 21.10.2005 10:15:09 com.sun.facelets.FaceletViewHandler handleRenderException
    SEVERE: Error Rendering View
    javax.faces.el.EvaluationException: /main.xhtml @135,102 value="#{classifierManagement.treeModel}": $Proxy256
     at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:60)
     at org.apache.myfaces.custom.tree2.UITreeData.getValue(UITreeData.java:248)
     at org.apache.myfaces.custom.tree2.UITreeData.getDataModel(UITreeData.java:386)
     at org.apache.myfaces.custom.tree2.UITreeData.saveState(UITreeData.java:91)
     at org.apache.myfaces.custom.tree2.HtmlTree.saveState(HtmlTree.java:60)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:462)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
     at org.apache.myfaces.application.jsp.JspStateManagerImpl.getComponentStateToSave(JspStateManagerImpl.java:70)
     at org.apache.myfaces.application.jsp.JspStateManagerImpl.saveSerializedView(JspStateManagerImpl.java:215)
     at com.sun.facelets.FaceletViewHandler.writeState(FaceletViewHandler.java:589)
     at org.apache.myfaces.renderkit.html.HtmlFormRendererBase.encodeBegin(HtmlFormRendererBase.java:74)
     at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:307)
     at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:511)
     at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:518)
     at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:447)
     at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:300)
     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:95)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
     at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
     at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
     at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
     at java.lang.Thread.run(Unknown Source)
    Caused by: javax.faces.el.EvaluationException: Bean: $Proxy256, property: treeModel
     at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:404)
     at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:71)
     at com.sun.facelets.el.LegacyELContext$LegacyELResolver.getValue(LegacyELContext.java:137)
     at com.sun.el.parser.AstValue.getValue(AstValue.java:96)
     at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:183)
     at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
     at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56)
     ... 39 more
    Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
     at java.lang.reflect.Method.invoke(Unknown Source)
     at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:400)
     ... 45 more
    Caused by: javax.ejb.EJBException: null; CausedByException is:
     wrong number of arguments
     at org.jboss.ejb3.cache.simple.SimpleStatefulCache.create(SimpleStatefulCache.java:162)
     at org.jboss.ejb3.stateful.StatefulContainer.dynamicInvoke(StatefulContainer.java:224)
     at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:107)
     at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:37)
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:98)
     at org.jboss.ejb3.stateful.StatefulRemoteProxy.invoke(StatefulRemoteProxy.java:119)
     at $Proxy256.getTreeModel(Unknown Source)


    I've change my source :

    @Stateful
    @Name("classifierManagement")
    @Interceptor(SeamInterceptor.class)
    public class ClassifierManagementAction extends TreeModelBase implements ClassifierManagement
    {
     private static final Logger log = Logger.getLogger(ClassifierManagement.class);
     @In
     private transient FacesContext facesContext;
    
     public ClassifierManagementAction(TreeNode arg0) {
     super(arg0);
     // TODO Auto-generated constructor stub
     }
     @Begin
     public TreeModel getTreeModel() {
    
     //@Begin
     //public TreeNode getTreeData() throws Exception {
     try{
     TreeNode treeData = new TreeNodeBase("foo-folder", "Inbox", true);
     TreeNodeBase t = null;
    
     // construct a set of fake data (normally your data would come from a database)
    
     // populate Frank's portion of the tree
     TreeNodeBase personNode = new TreeNodeBase("person", "Frank Foo", true);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo", true));
     TreeNodeBase folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X050001", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050003", false));
     personNode.getChildren().add(folderNode);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo Recommendation", true));
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J050001", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "E050011", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "R050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "C050003", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Processing", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X050003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050011", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "F050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "G050003", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J050006", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050007", false));
     personNode.getChildren().add(folderNode);
    
     treeData.getChildren().add(personNode);
    
     // populate Betty's portion of the tree
     personNode = new TreeNodeBase("person", "Betty Bar", true);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo", true));
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X012000", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X013000", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X014000", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Recommendation", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J010026", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J020002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J030103", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "E030214", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "R020444", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "C010000", false));
     personNode.getChildren().add(folderNode);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo Approval", true));
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Processing", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "T052003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "T020011", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J010002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J030047", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "F030112", false));
     personNode.getChildren().add(folderNode);
    
     treeData.getChildren().add(personNode);
    
    
    
     return new TreeModelBase(treeData);
     }
     catch (Exception e){
     System.err.println(e);
     return null;
     }
     }
     /**
     * ??????? ?????????
     */
     @Destroy @Remove
     public void destroy()
     {
     log.info("destroyed");
     }



    @Remote
    public interface ClassifierManagement {
     public TreeModel getTreeModel();
     /**
     * ??????? ?????????
     */
     public void destroy();
     //public TreeNode getNode();
    }
    


    I'm still having problem ....

    --Andrew

  • 5. Re: Using SEAM with Apache Tree2
    Andrew Newbie

    js8523 can you post some examples. It is very important for me.

    Thanks

  • 6. Re: Using SEAM with Apache Tree2
    Marius Oancea Novice

    Nobody had success with implementing that until now? Tree is a very important comonent. What could be the problem?

  • 7. Re: Using SEAM with Apache Tree2
    js8523 Novice

    Hi Zealot

    Sorry for the slow reply. Rather than making your stateful session bean an extension of TreeNodeBase, place a private member variable within the stateful session bean that extends the TreeNodeBase class, and reference it from your jsf page through the stateful session bean (that way your not relying on remote/local interfaces of the stateful session bean to represent the extension of the TreeNodeBase.

    Try this

    class TreeClass extends TreeNodeBase{
    /* implement the treenode base class */
    }

    @Local
    interface booking {
    TreeClass getTree();
    }

    @stateful
    @name("bookingActions")
    class bookingActions extends booking {

    private TreeClass tree;

    TreeClass getTree(){
    return tree;
    }
    }


    in jsf reference like this

    "#{bookingActions.tree}"

    Hope this helps.

    James

  • 8. Re: Using SEAM with Apache Tree2
    Marius Oancea Novice

    Yes. But TreeClass tree is not initialised anywhere. And is also not injected by enybody. Am I wrong? Or you have to explicitely initialise it somewhere ?

  • 9. Re: Using SEAM with Apache Tree2
    Andrew Newbie

    js8523 thanks for your reply :-)

    It seems i did as you say:

    @Stateful
    @Name("classifierManagement")
    @Interceptor(SeamInterceptor.class)
    public class ClassifierManagementAction implements ClassifierManagement
    {
     private static final Logger log = Logger.getLogger(ClassifierManagement.class);
     @In
     private transient FacesContext facesContext;
    
     private ClassifierTree classifierTree;
    
     public ClassifierManagementAction() {
     try{
     TreeNode treeData = new TreeNodeBase("foo-folder", "Inbox", true);
     TreeNodeBase t = null;
    
     // construct a set of fake data (normally your data would come from a database)
    
     // populate Frank's portion of the tree
     TreeNodeBase personNode = new TreeNodeBase("person", "Frank Foo", true);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo", true));
     TreeNodeBase folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X050001", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050003", false));
     personNode.getChildren().add(folderNode);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo Recommendation", true));
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J050001", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "E050011", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "R050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "C050003", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Processing", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X050003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X050011", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "F050002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "G050003", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J050006", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J050007", false));
     personNode.getChildren().add(folderNode);
    
     treeData.getChildren().add(personNode);
    
     // populate Betty's portion of the tree
     personNode = new TreeNodeBase("person", "Betty Bar", true);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo", true));
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Reviewer", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "X012000", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X013000", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "X014000", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("foo-folder", "Requires Foo Recommendation", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J010026", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J020002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J030103", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "E030214", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "R020444", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "C010000", false));
     personNode.getChildren().add(folderNode);
     personNode.getChildren().add(new TreeNodeBase("foo-folder", "Requires Foo Approval", true));
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Processing", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "T052003", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "T020011", false));
     personNode.getChildren().add(folderNode);
     folderNode = new TreeNodeBase("bar-folder", "Requires Bar Approval", true);
     folderNode.getChildren().add(new TreeNodeBase("document", "J010002", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "J030047", false));
     folderNode.getChildren().add(new TreeNodeBase("document", "F030112", false));
     personNode.getChildren().add(folderNode);
    
     treeData.getChildren().add(personNode);
    
    
     TreeModelBase a = new TreeModelBase(treeData);
     //this.treeModel = a;
    
     //return new TreeModelBase(treeData);
    
     classifierTree = new ClassifierTree("foo-folder", "Inbox", true);
     }
     catch (Exception e){
     System.err.println(e);
     //return null;
     }
     }
     @Begin
     public ClassifierTree getClassifierTree() {
     return classifierTree;
     }
     /**
     * ??????? ?????????
     */
     @Destroy @Remove
     public void destroy()
     {
     log.info("destroyed");
     }
    }


    Interface
    @Remote
    public interface ClassifierManagement {
     public ClassifierTree getClassifierTree();
     /**
     * ??????? ?????????
     */
     public void destroy();
    }


    And class
    public class ClassifierTree extends TreeNodeBase {
     public ClassifierTree() {
     super();
     // TODO Auto-generated constructor stub
     }
    
     public ClassifierTree(String arg0, String arg1, boolean arg2) {
     super(arg0, arg1, arg2);
     // TODO Auto-generated constructor stub
     }
    
     public ClassifierTree(String arg0, String arg1, String arg2, boolean arg3) {
     super(arg0, arg1, arg2, arg3);
     // TODO Auto-generated constructor stub
     }
    
    }
    


    But i have error again :-(
    11:14:35,687 INFO [NamingHelper] JNDI InitialContext properties:{}
    11:14:35,890 INFO [STDOUT] 25.10.2005 11:14:35 com.sun.facelets.FaceletViewHandler handleRenderException
    SEVERE: Error Rendering View
    java.lang.IllegalArgumentException: Value must be a TreeModel or TreeNode
     at org.apache.myfaces.custom.tree2.UITreeData.getDataModel(UITreeData.java:398)
     at org.apache.myfaces.custom.tree2.UITreeData.saveState(UITreeData.java:91)
     at org.apache.myfaces.custom.tree2.HtmlTree.saveState(HtmlTree.java:60)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:462)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
     at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:456)
     at org.apache.myfaces.application.jsp.JspStateManagerImpl.getComponentStateToSave(JspStateManagerImpl.java:70)
     at org.apache.myfaces.application.jsp.JspStateManagerImpl.saveSerializedView(JspStateManagerImpl.java:215)
     at com.sun.facelets.FaceletViewHandler.writeState(FaceletViewHandler.java:589)
     at org.apache.myfaces.renderkit.html.HtmlFormRendererBase.encodeBegin(HtmlFormRendererBase.java:74)
     at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:307)
     at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:511)
     at com.sun.facelets.FaceletViewHandler.encodeRecursive(FaceletViewHandler.java:518)
     at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:447)
     at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:300)
     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:95)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
     at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
     at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
     at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
     at java.lang.Thread.run(Unknown Source)
    11:14:35,890 INFO [STDOUT] 25.10.2005 11:14:35 com.sun.facelets.FaceletViewHandler handleRenderException
    SEVERE: Took Type: java.io.PrintWriter



    Seems like a Tree is doomed component :-)

  • 10. Re: Using SEAM with Apache Tree2
    Andrew Newbie

    Finally I beat!!! :-) I put tomahawk.jar into server\default\deploy\jbossweb-tomcat55.sar\jsf-libs and
    remove it from project package. Everything working :-)
    But it strange for me, why i can't have this library in my WEB-INF/lib??????

    Thanks all

    -Andrew

  • 11. Re: Using SEAM with Apache Tree2
    Edgar Silva Newbie

    Tchê, também estou com um problema parecido... Olha só a mensagem:

    javax.servlet.ServletException: Encountered a node [0] + with an illogical state. Node is expanded but it is also considered a leaf (a leaf cannot be considered expanded.
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:109)
    org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)


    Alguém aí saberia me explicar qual é o problema?

  • 12. Re: Using SEAM with Apache Tree2
    Marius Oancea Novice

    You cannot expand a leaf node node. Try to look in your checkPath method

  • 13. Re: Using SEAM with Apache Tree2
    Dennis Wenger Newbie

    In wich pacage can i find TreeNodeBase?
    Or ist this the org.apache.myfaces.custom.tree.TreeNode now?

    shouldn't it work to implement the TreeNode in entity-beans?

    Greets
    Dennis

  • 14. Re: Using SEAM with Apache Tree2
    jdijkmeijer Newbie

    I'm also on the problem now.
    My SB ClassifierManagement.treeData is populated by an entitybean. However my deployment fails because the tomahawk classes cant be found. The removal of the backingbean the view logic is partly going to the sessionbean, putting the tomahawk jar inside the web-inf/lib/ making it invisible for the SB.

    So I'm thinking right now that for this kind of "advanced" mixtture of appdata an ui-logic the backing bean will be back? Or should tomahawk.jar be globalized as topic origator stated?

    any thoughts welcome.
    regards,
    Jeroen.

1 2 Previous Next