Enabling BTT Web2.0 iWindow framework in initial page

  1. Firstly, you need to include all .js files applied in your Web2.0 iWindow framework, such as:
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@page import="com.ibm.btt.web2.config.*" %>
    <%@page import="com.ibm.btt.util.*" %>
    <%@ page import="com.ibm.btt.web2.config.UserProfileManager" %>
    <jsp:useBean id="utb" scope="page" class="com.ibm.btt.cs.html.DSEJspContextServices">
    		<% utb.initialize(request); %>
    </jsp:useBean> 
    <jsp:useBean id="logout" scope="page" class="com.ibm.btt.web2.operation.LogOutOperation"/>
    <%
    	request.getSession(false).setAttribute("UserName", utb.getContext().getValueAt("userId"));
    	
    	DesktopManager desktopManager = new DesktopManager(request);
    	
    	List<Service> desktopIcons = desktopManager.getDesktopIcons();
    	
    	
    %>
    
    <!--  set the URL base -->
    <base href="<%=desktopManager.getContextURL()%>" ></base>
    
    <!-- dojo css -->
    <script src = "dojo/dojo/dojo.js" type="text/javascript" ></script>	
    <link href="dojo/dijit/themes/tundra/tundra.css" rel="stylesheet" type="text/css" />
    <link href="dojo/dojo/resources/dojo.css" rel="stylesheet" type="text/css" />
    <link id="themeStyles" rel="stylesheet" href="dojo/dojox/grid/resources/Grid.css"  type="text/css">
    <link id="themeStyles" rel="stylesheet" href="dojo/dijit/themes/tundra/tundra.css"  type="text/css">
    <script src="dojo/dojo/NodeList-fx.js" type="text/javascript"></script>
    <script src="dojo/dojo/NodeList-html.js" type="text/javascript"></script>
    
    
    <!-- web desktop style -->
    <link href="skin/<%=desktopManager.getSkin() %>/setting.css" rel="stylesheet" type="text/css" />
    <link href="skin/<%=desktopManager.getSkin() %>/servicetree.css" rel="stylesheet" type="text/css" />
    
    <link href="skin/<%=desktopManager.getSkin() %>/meun.css" id="menu_css" rel="stylesheet" type="text/css" />
    <link href="skin/<%=desktopManager.getSkin() %>/window.css" id="window_css" rel="stylesheet" type="text/css" />
    <link href="skin/<%=desktopManager.getSkin() %>/taskbar.css" id="taskbar_css" rel="stylesheet" type="text/css" />
    <link href="skin/<%=desktopManager.getSkin() %>/fixedboard.css" id="taskbar_css" rel="stylesheet" type="text/css" />
    <script src="skin/<%=desktopManager.getSkin() %>/style.js" type="text/javascript" ></script>
    
    <!-- dojo js -->
    
    <script  type="text/javascript">
    	dojo.require("dojo.NodeList-fx");
    	dojo.require("dijit.dijit");
    	dojo.require("dojox.grid.DataGrid");
    	dojo.require("dijit.Dialog");
    	dojo.require("dijit.form.Button");
    	dojo.require("dojo.data.ItemFileWriteStore");
    	dojo.require("dojo.parser");
    	dojo.require("dijit.layout.TabContainer");
    	dojo.require("dijit.layout.ContentPane");
    	dojo.require("dojo.dnd.Moveable");
    	dojo.require("dojo.dnd.move");
    </script>
    
    
    <!-- btt js -->
    
    <script src="BTTWeb20/common/Config.js" type="text/javascript"></script>
    <script src="BTTWeb20/common/Util.js" type="text/javascript"></script>
    <script src="BTTWeb20/common/Global.js" type="text/javascript"></script>
    <script src="BTTWeb20/exception/Error.js" type="text/javascript"></script>
    <script src="BTTWeb20/locale/Locale.js" type="text/javascript"></script>
    <script src="BTTWeb20/locale/LangList.js" type="text/javascript"></script>
    
    <!-- get locale -->
    <% if("en_US".equals(utb.getContext().getValueAt("locale"))){ %>
    <script src="BTTWeb20/locale/language/Lang-en_US.js" type='text/javascript'></script>
    <%}else{ %>
    <script src="BTTWeb20/locale/language/Lang-zh_CN.js" type='text/javascript'></script>
    
    <%} %>
    
    <script src="BTTWeb20/event/Event.js" type="text/javascript"></script>
    <script src="BTTWeb20/exception/Console.js" type="text/javascript"></script>
    
    <script src="BTTWeb20/workplace/model/base/ComponentBase.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/ServiceBase.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/Service.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/ServiceRepository.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/ServiceCategory.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/ServiceWidget.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/WidgetAttribute.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/model/servicelist/WidgetChildren.js" type="text/javascript"></script>
    
    <script language="JavaScript"  src="BTTWeb20/runtime/CatalogService.js"></script>
    <script language="JavaScript"  src="BTTWeb20/runtime/WidgetDef.js"></script>
    <script language="JavaScript"  src="BTTWeb20/runtime/WgtDefService.js"></script>
    <script language="JavaScript"  src="BTTWeb20/runtime/ResourceService.js"></script>
    <script language="JavaScript"  src="BTTWeb20/runtime/Widget.js"></script>
    <script language="JavaScript"  src="BTTWeb20/runtime/iContext.js"></script>
    <script language="JavaScript"  src="BTTWeb20/runtime/WidgetRT.js"></script>
    <script src="BTTWeb20/ioc/core/Factory.js" type="text/javascript"></script>
    <script src="BTTWeb20/ioc/core/Repository.js" type="text/javascript"></script>
    <script src="BTTWeb20/ioc/core/Engine.js" type="text/javascript"></script>
    <script src="BTTWeb20/ioc/core/ConfigParser.js" type="text/javascript"></script>
    <script src="BTTWeb20/ioc/component/ComponentIoc.js" type="text/javascript"></script>
    <script src="BTTWeb20/ioc/component/LayoutIoc.js" type="text/javascript"></script>
    <script src="BTTWeb20/ioc/component/ServiceIoc.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/abstractcontroller/AbstractServicelistLogic.js" type="text/javascript"></script>
    <script src="BTTWeb20/workplace/controller/ServicelistLogic.js" type="text/javascript"></script>
    
    <!-- desktop js -->
    <script type="text/javascript" src="BTTWeb20/desktop/view/servicetree.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/setting.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/desktopicon.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/desktop.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/taskbar.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/desk.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/window.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/fixedboard.js" ></script>
    <script type="text/javascript" src="BTTWeb20/desktop/view/startmenu.js" ></script>
    
    <script type="text/javascript">
     
  2. Secondly, you need to initiate page settings in function addOnLoad():
    dojo.addOnLoad( function()  {
    
    //get userId and session, initial service list for user.
    		if (typeof BTTMain.BTTConfig == "undefined")
    
    			var userId = '&lt;%=utb.getContet().getValueAt("userId")%>';
    
    
    			BTTMain.BTTConfig = new BTTConfig({ 
    				sessionId:"&lt;%=utb.gtSessionId()%>",
    				ServiceListPath : Constants.ContextRoot + "BTTXMLRequest?file="+ userId + "Service.xml"	           
    	           
    			});
    			
    	
    	//initial desktop settings
    		desktop = new BTT.Web2.Desktop();
    		
    	
    		desktop.utilizeTheme = function(themeFolder) 
    		{
    			document.getElementById("menu_css").href = "skin/" + themeFolder + "/meun.css";
    			document.getElementById("window_css").href = "skin/" + themeFolder + "/window.css";
    			document.getElementById("taskbar_css").href = "skin/" + themeFolder + "/taskbar.css";
    		}
    		
    // configure button “Exit” function
    		desktop.onExitDesktop = function() {
    			
    			alert('eeeeeee');
    			
    		var sessionid=BTTMain.BTTConfig.sessionId;
    		var url="Request?&dse_applicationId=-1&dse_pageId=2&dse_operationName=LogOutOp&dse_errorPage=menu.jsp&dse_sessionId="+sessionid; 		window.location.href = url; 		 		}  		 // Configure menu items in the start button:
    	 	desktop.addMenuItems = function(startmenu) {			
    			startmenu.addItem("Exit", "images/salir.gif", function() {alert('1');}, "right");		
    			startmenu.addItem("Exit", "images/salir.gif", function() {alert('1');}, "right");		
    			
    			var historyMenu2 = new BTT.Web2.SubMenu();
    			
    			historyMenu2.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu2.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu2.build();
    			
    			var historyMenu = new BTT.Web2.SubMenu();
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu.addItemWithSubMenu("Exit", "images/salir.gif", historyMenu2);
    			
    			historyMenu.build();
    			
    			var historyMenu1 = new BTT.Web2.SubMenu();
    			historyMenu1.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu1.addItem("Exit", "images/salir.gif", function() {alert('1');});
    			historyMenu1.build();
    			
    			startmenu.addItemWithSubMenu("All_Programes", "images/salir.gif", historyMenu);	
    			startmenu.addItemWithSubMenu("All_Programes", "images/salir.gif", historyMenu1, "right");	
    		}
    		
    		desktop.initialize();
    	
    		
    });