BrowseeTree.xml file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Copyright (c) 2001-2005. EMC Corporation. All Rights Reserved. -->
<!-- -->
<!-- Component: browsertree -->
<config version='1.0'>
<scope>
<component id="browsertree" extends="browsertree:webtop/config/browsertree_component.xml">
<!-- Component Layout -->
<pages>
<start>/custom/browsertree/browsertree.jsp</start>
</pages>
<class>com.tsm.browsertree.CustomWebTopBrowserTree</class>
</component>
</scope>
</config>
Custom Webtop TLD
<shortname>ct</shortname>
<tag>
<name>browsertree</name>
<tagclass>com.tsm.browsertree.CustomWebTopBrowserTreeTag</tagclass>
</tag>
This is my custom browsertree.jsp
<%
//
%>
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page errorPage="/wdk/errorhandler.jsp" %>
<%@ taglib uri="/WEB-INF/tlds/dmform_1_0.tld" prefix="dmf" %>
<%@ taglib uri="/WEB-INF/tlds/dmformext_1_0.tld" prefix="dmfx" %>
<%@ taglib uri="/WEB-INF/tlds/dmwebtop_1_0.tld" prefix="dmwt" %>
<%@ taglib uri="/WEB-INF/tlds/dmfxsearch_1_0.tld" prefix="dmfxs" %>
<%@ taglib uri="/WEB-INF/tlds/custom_webtop_1_0.tld" prefix="ct" %>
<%@ page import="com.documentum.web.form.Form,
com.documentum.web.common.ClientInfo,
com.documentum.web.common.ClientInfoService,
com.documentum.webtop.webcomponent.browsertree.BrowserTree" %>
<%@ page import="com.tsm.browsertree.CustomWebTopBrowserTree" %>
<%@ page import="com.documentum.web.form.control.TreeNode" %>
<%@ page import="com.documentum.web.form.FormTag"%>
<%
ClientInfo info = ClientInfoService.getInfo();
String strBottomPadding = "0";
String strRightPadding = "0";
if (info.isBrowser(ClientInfo.MSIE))
{
strBottomPadding = "4";
strRightPadding = "4";
}
//
%>
<dmf:html>
<dmf:head>
<dmf:webform/>
<script language='JavaScript1.2' src='<%=Form.makeUrl(request, "/wdk/include/dynamicAction.js")%>'></script>
<script type="text/javascript" language='JavaScript1.2' >
// handler and save the value, can't have it below the main part of the page
function onclickTree(nodeId, nodeDiv)
{
browsertree.state.onclickTree(nodeId, nodeDiv);
}
</script>
<title> <%=FormTag.BROWSER_TREE_TITLE%> </title>
</dmf:head>
<dmf:body cssclass='webtopTreeBackground' marginheight='6' marginwidth='6'
topmargin='6' bottommargin='0' leftmargin='6' rightmargin='0'>
<dmfx:dragdrop/>
<dmf:form>
<%
BrowserTree form = (BrowserTree) pageContext.getAttribute(BrowserTree.FORM, PageContext.REQUEST_SCOPE);
CustomWebTopBrowserTree tree = (CustomWebTopBrowserTree) form.getControl(BrowserTree.TREE_CONTROL, CustomWebTopBrowserTree.class);
String inlineSupportedArg = form.getInitArgs().get("inlineRefresh");
%>
<dmf:panel id='<%=BrowserTree.INCLUDEHEADERPANEL_CONTROL%>' name='<%=BrowserTree.INCLUDEHEADERPANEL_CONTROL%>' visible='false'>
<dmf:paneset name='<%=BrowserTree.MAINPANESET_CONTROL%>' rows="20, *" minheight="50" minwidth="100" bottompadding='<%=strBottomPadding%>' rightpadding='<%=strRightPadding%>' toppadding="0" leftpadding="0" >
<dmf:pane name='<%=BrowserTree.HEADERPANE_CONTROL%>' overflow="hidden">
<table cellpadding="0" cellspacing="0" border="0" width="100%" class='webtopMenubarBackground'>
<tr>
<dmf:panel id='<%=BrowserTree.HEADERPANEL_CONTROL%>' name='<%=BrowserTree.HEADERPANEL_CONTROL%>'>
<dmf:panel id='<%=BrowserTree.DISPLAY_MENU_PANEL_CONTROL%>' name='<%=BrowserTree.DISPLAY_MENU_PANEL_CONTROL%>'>
<td class="leftAlignment">
<dmf:menugroup name='menugroup' >
<dmf:menu name='headerMenu' nlsid='MSG_MENU_NAME'>
<dmf:panel id='<%=BrowserTree.EXPANDALLPANEL_CONTROL%>' name='<%=BrowserTree.EXPANDALLPANEL_CONTROL%>'>
<dmf:menuitem name='expandSelectionMenu' nlsid='MSG_EXPAND_SELECTION' onclick='onExpandAll' />
</dmf:panel>
<dmf:panel id='<%=BrowserTree.COLLAPSEALLPANEL_CONTROL%>' name='<%=BrowserTree.COLLAPSEALLPANEL_CONTROL%>'>
<dmf:menuitem name='collapseSelectionMenu' nlsid='MSG_COLLAPSE_SELECTION' onclick='onCollapseAll' />
</dmf:panel>
<dmf:menuseparator name='separator' />
<dmf:panel id='<%=BrowserTree.SEPARATORPANEL_CONTROL%>' name='<%=BrowserTree.SEPARATORPANEL_CONTROL%>'>
</dmf:panel>
<dmf:menuitem id='<%=BrowserTree.SHOW_ALL_MENU_ITEM_CONTROL%>' name='<%=BrowserTree.SHOW_ALL_MENU_ITEM_CONTROL%>' nlsid='MSG_SHOW_ALL' onclick='onShowAll' />
<dmf:menuitem id='<%=BrowserTree.SHOW_FOCUSED_ITEM_ONLY_MENU_ITEM_CONTROL%>' name='<%=BrowserTree.SHOW_FOCUSED_ITEM_ONLY_MENU_ITEM_CONTROL%>' onclick='onShowFocusedNodeOnly' enabled='false' />
</dmf:menu>
</dmf:menugroup>
</td>
</dmf:panel>
<dmf:panel id='<%=BrowserTree.VDMPANEL_CONTROL%>' name='<%=BrowserTree.VDMPANEL_CONTROL%>'>
<td class="rightAlignment">
<dmf:label name='<%=BrowserTree.VERSIONLABEL_CONTROL%>' />
</td>
<td class="rightAlignment">
<dmfx:actionlink name='<%=BrowserTree.SAVE_CHANGES_LINK_CONTROL%>' nlsid='MSG_SAVE_CHANGES' tooltipnlsid='MSG_SAVE_CHANGES' action='savechanges' showifdisabled="true" showifinvalid='true'>
<dmfx:argument name='objectId' contextvalue='objectId'/>
</dmfx:actionlink>
</td>
</dmf:panel>
</dmf:panel>
</tr>
</table>
</dmf:pane>
<dmf:pane name='<%=BrowserTree.TREEPANE_CONTROL%>' overflow="auto">
<table cellpadding="0">
<dmf:panel id='<%=BrowserTree.DISPLAY_LINKS_PANEL_CONTROL%>' name='<%=BrowserTree.DISPLAY_LINKS_PANEL_CONTROL%>'>
<tr>
<td class="leftAlignment">
<dmf:label name='treedisplay' nlsid='MSG_TREE_DISPLAY_NAME'/>
</td>
</tr>
<tr>
<td class="leftAlignment" nowrap>
<dmf:panel id='<%=BrowserTree.EXPANDALLPANEL_CONTROL%>' name='<%=BrowserTree.EXPANDALLPANEL_CONTROL%>'>
<dmf:link name='expandSelectionLink' nlsid='MSG_EXPAND_SELECTION' onclick='onExpandAll' />
</dmf:panel>
<dmf:panel id='<%=BrowserTree.COLLAPSEALLPANEL_CONTROL%>' name='<%=BrowserTree.COLLAPSEALLPANEL_CONTROL%>'>
<dmf:link name='collapseSelectionLink' nlsid='MSG_COLLAPSE_SELECTION' onclick='onCollapseAll' />
</dmf:panel>
</td>
</tr>
<tr>
<td class="leftAlignment" nowrap>
<dmf:link name='<%=BrowserTree.SHOW_ALL_LINK_CONTROL%>' nlsid='MSG_SHOW_ALL' onclick='onShowAll' />
<dmf:link name='<%=BrowserTree.SHOW_FOCUSED_ITEM_ONLY_LINK_CONTROL%>' onclick='onShowFocusedNodeOnly' enabled='false' />
</td>
</tr>
</dmf:panel>
</table>
<dmf:panel id='<%=BrowserTree.WORKAREALINKPANEL_CONTROL%>' name='<%=BrowserTree.WORKAREALINKPANEL_CONTROL%>'>
<dmf:link onclick='setFocusOnFirstElementInFrame,"content"' runatclient='true' nlsid='MSG_GO_TO_WORK_AREA' tooltipnlsid='MSG_GO_TO_WORK_AREA_TIP'/>
<br>
</dmf:panel>
<dmwt:browsertree name='<%=BrowserTree.TREE_CONTROL%>' onclick='onclickTree'
onexpand='onexpandTree'
normalclass='browserTreeNormal' selectedclass='browserTreeSelected'
ondrop='onDrop' dragenabled='true' showroot='false' runatclient='true'/>
</dmf:pane>
</dmf:paneset>
</dmf:panel>
<dmf:panel id='<%=BrowserTree.NOHEADERPANEL_CONTROL%>' name='<%=BrowserTree.NOHEADERPANEL_CONTROL%>'>
<dmf:panel id='<%=BrowserTree.WORKAREALINKPANEL_CONTROL%>' name='<%=BrowserTree.WORKAREALINKPANEL_CONTROL%>'>
<dmf:link onclick='setFocusOnFirstElementInFrame,"content"' runatclient='true' nlsid='MSG_GO_TO_WORK_AREA' tooltipnlsid='MSG_GO_TO_WORK_AREA_TIP'/>
<br>
</dmf:panel>
<ct:browsertree name='<%=BrowserTree.TREE_CONTROL%>' onclick='onclickTree'
onexpand='onexpandTree'
normalclass='browserTreeNormal' selectedclass='browserTreeSelected'
ondrop='onDrop' dragenabled='true' showroot='false' runatclient='true'/>
</dmf:panel>
<br/>
<dmf:panel id='<%=BrowserTree.SMARTNAVIGATIONPANEL_CONTROL%>' name='<%=BrowserTree.SMARTNAVIGATIONPANEL_CONTROL%>'>
<table width="150%" cellpadding="3">
<tr class='pagerBackground'>
<td nowrap="true" valign="middle">
<div>
<nobr>
<dmf:link onclick="onClickCollapsePanel" focus="true">
<dmf:image name='<%=BrowserTree.SMARTNAVIGATIONHEADER_ICON%>' onclick="onClickCollapsePanel"
src='icons/minus.gif'/>
</dmf:link>
<dmf:label name='<%=BrowserTree.SMARTNAVIGATIONHEADER_LABEL%>' cssclass='webcomponentTitle'
nlsid='MSG_SMARTNAVIGATION_HEADER'/>
<dmf:panel id='<%=BrowserTree.REFRESHLINKPANEL_CONTROL%>'
name='<%=BrowserTree.REFRESHLINKPANEL_CONTROL%>'>
<dmf:image name='<%=BrowserTree.REFRESHIMAGE_CONTROL%>'
src='icons/search/refreshclusters.gif'
onclick='refreshClusterTreeGroup' nlsid='MSG_REFRESH'>
<dmf:argument name='<%=BrowserTree.CT_FORCE_REFRESH_ARG_NAME%>' value='true'/>
</dmf:image>
</dmf:panel>
<dmf:image src='icons/search/editclusters.gif' onclick='onClickPref' nlsid='MSG_SEARCH_PREFERENCES'/>
</nobr>
</div>
</td>
</tr>
</table>
<dmf:panel id='<%=BrowserTree.CLUSTERPANEL_CONTROL%>' name='<%=BrowserTree.CLUSTERPANEL_CONTROL%>'>
<table>
<tr>
<td>
<dmfxs:clustergroup name='<%=BrowserTree.CLUSTERGROUP_CONTROL%>' onclick='onclickClusterTree'
normalclass='browserTreeNormal' selectedclass='browserTreeSelected' headerclass='webcomponentTitle'
showroots='false' showheaders='true' isVertical='true' showicons='true' id='customtreegroup'/>
</td>
</tr>
</table>
</dmf:panel>
</dmf:panel>
<%
String focusedNodeId = null;
String originalFocusedNodeId = null;
if (tree.isTreeFocusedOnNode())
{
TreeNode focusedNode = tree.getFocusedNode();
focusedNodeId = focusedNode.getUniqueId();
originalFocusedNodeId = tree.getOriginalNodeIdForFocusedNode(focusedNodeId);
}
%>
<script type="text/javascript" language='JavaScript1.2' src='<%=Form.makeUrl(request, "/webtop/classic/browsertree/browsertree.js")%>'></script>
<script type="text/javascript">
browsertree.state.setTreeConfigId("<%=tree.getFunctionName()%>");
browsertree.state.setBrowserTreeId("<%=form.getElementName()%>");
browsertree.state.setTreeId("<%=tree.getElementName()%>");
if ("true" == "<%=tree.isTreeFocusedOnNode()%>")
{
browsertree.state.setIsTreeFocused(true);
browsertree.state.setFocusedNodeId("<%=focusedNodeId%>");
browsertree.state.setFullFocusedNodeId("<%=originalFocusedNodeId%>");
}
else
{
browsertree.state.setIsTreeFocused(false);
browsertree.state.setFocusedNodeId(null);
browsertree.state.setFullFocusedNodeId(null);
}
browsertree.state.setIsInlineSupported("true" == "<%=inlineSupportedArg%>");
browsertree.state.setFormUniqueId("<%=form.getFormUniqueId()%>");
browsertree.state.setTreeControlName("<%=BrowserTree.TREE_CONTROL%>");
browsertree.state.setExpandUrl('<%=Form.makeUrl(request, "/webtop/classic/browsertree/browsertreeRefreshFromId.jsp?__dmfJumpType=page&__dmfHandlerArgs=&hiddenItemCount=decrement&EXPAND_TREE_ELEMENT_NAME=")%>');
registerClientEventHandler(null, "onUpdateMultiselectControls", updateMultiselectControls);
registerClientEventHandler(null, "selectTreeNode", browsertree.state.selectTreeNode);
</script>
</dmf:form>
</dmf:body>
</dmf:html>
CustomWebtopBrowserTree.java
import java.util.Iterator;
import com.documentum.web.common.ArgumentList;
import com.documentum.web.form.control.TreeNode;
import com.documentum.webtop.control.WebTopBrowserTree;
public class CustomWebTopBrowserTree extends WebTopBrowserTree
{
public void onInit(ArgumentList args)
{
super.onInit(args);
Iterator it = getAllNodes();
if (null != it)
{
Object m_Node = null;
while (it.hasNext())
{
m_Node = it.next();
}
if (null != m_Node)
{
((TreeNode) m_Node).setVisible(false);
}
}
}
}
CustomWebtopBrowserTreeTag.java
package com.tsm.browsertree;
import com.documentum.webtop.control.WebTopBrowserTreeTag;
public class CustomWebTopBrowserTreeTag extends WebTopBrowserTreeTag
{
protected Class getControlClass()
{
return com.tsm.browsertree.CustomWebTopBrowserTree.class;
}
}
I have created Custom TLD, Custom WebtopBrowserTree, Custom WebtopBrowserTreeTag and i have configured the custom tld in the jsp file. Can any one help me i am getting error page in the browser tree frame.


