[jboss-cvs] JBoss Profiler SVN: r480 - in branches/JBossProfiler2: src/etc and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun Oct 5 21:45:36 EDT 2008


Author: Huijuan Shao
Date: 2008-10-05 21:45:36 -0400 (Sun, 05 Oct 2008)
New Revision: 480

Added:
   branches/JBossProfiler2/src/main/www/addClassPanel.xhtml
   branches/JBossProfiler2/src/main/www/compare_methods.xhtml
   branches/JBossProfiler2/src/main/www/compare_snapshots.xhtml
   branches/JBossProfiler2/src/main/www/index.html
   branches/JBossProfiler2/src/main/www/listSnapshot.xhtml
   branches/JBossProfiler2/src/main/www/load_hotspots.xhtml
   branches/JBossProfiler2/src/main/www/load_overview.xhtml
   branches/JBossProfiler2/src/main/www/load_snapshot.xhtml
   branches/JBossProfiler2/src/main/www/load_thread_hotspots.xhtml
   branches/JBossProfiler2/src/main/www/load_thread_tree.xhtml
   branches/JBossProfiler2/src/main/www/removeClassPanel.xhtml
Modified:
   branches/JBossProfiler2/build.xml
   branches/JBossProfiler2/src/etc/web.xml
   branches/JBossProfiler2/src/main/org/jboss/profiler/shared/FrameInfo.java
Log:


Modified: branches/JBossProfiler2/build.xml
===================================================================
--- branches/JBossProfiler2/build.xml	2008-10-06 01:44:47 UTC (rev 479)
+++ branches/JBossProfiler2/build.xml	2008-10-06 01:45:36 UTC (rev 480)
@@ -237,6 +237,8 @@
              <include name="org/jboss/profiler/client/*"/>
              <include name="org/jboss/profiler/client/web/**"/>
              <include name="org/jboss/profiler/shared/**"/>
+             <include name="org/jboss/profiler/ui/**"/>
+             <include name="org/jboss/profiler/ui/util/**"/>
              <exclude name="**/*.java"/>
           </classes>
           <zipfileset dir="${etc.dir}/"

Modified: branches/JBossProfiler2/src/etc/web.xml
===================================================================
--- branches/JBossProfiler2/src/etc/web.xml	2008-10-06 01:44:47 UTC (rev 479)
+++ branches/JBossProfiler2/src/etc/web.xml	2008-10-06 01:45:36 UTC (rev 480)
@@ -1,111 +1,72 @@
-<?xml version="1.0"?>
-
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
-         version="2.4">
-
-  <!-- Context params -->
-  <context-param>
-    <param-name>javax.faces.CONFIG_FILES</param-name>
-    <param-value>/WEB-INF/faces-config.xml</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
-    <param-value>.xhtml</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
-    <param-value>server</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
-    <param-value>false</param-value>
-  </context-param>
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
+  <display-name>JBossProfiler2JSF</display-name>
+  <welcome-file-list>
+    <welcome-file>index.html</welcome-file>
+    <welcome-file>index.htm</welcome-file>
+    <welcome-file>index.jsp</welcome-file>
+    <welcome-file>default.html</welcome-file>
+    <welcome-file>default.htm</welcome-file>
+    <welcome-file>default.jsp</welcome-file>
+  </welcome-file-list>
   
+    <context-param>
+      <param-name>com.sun.faces.verifyObjects</param-name>
+      <param-value>true</param-value>
+    </context-param>
+    <context-param>
+      <param-name>com.sun.faces.validateXml</param-name>
+      <param-value>true</param-value>
+    </context-param>
+    <context-param>
+      <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+      <param-value>.xhtml</param-value>
+    </context-param>
+    <context-param>
+      <param-name>facelets.DEVELOPMENT</param-name>
+      <param-value>false</param-value>
+    </context-param>
+    <context-param>
+      <param-name>facelets.SKIP_COMMENTS</param-name>
+      <param-value>true</param-value>
+    </context-param>
   <context-param>
-    <param-name>javax.faces.PARTIAL_STATE_SAVING_DISPATCH_EVERY_TIME</param-name>
-    <param-value>true</param-value>
+  	<param-name> org.richfaces.SKIN </param-name>
+  	<param-value>blueSky</param-value>
   </context-param>
+      <context-param>
+      <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name> 
+      <param-value>com.sun.facelets.FaceletViewHandler</param-value> 
+    </context-param>
 
-  <context-param> 
-    <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name> 
-    <param-value>false</param-value> 
-  </context-param>
-
-  <context-param>
-    <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
-    <param-value>com.sun.facelets.FaceletViewHandler</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>org.ajax4jsf.SKIN</param-name>
-    <param-value>jbossprofiler</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>org.richfaces.SKIN</param-name>
-    <param-value>jbossprofiler</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>facelets.SKIP_COMMENTS</param-name>
-    <param-value>false</param-value>
-  </context-param>
-
-  <context-param>
-    <param-name>facelets.DEVELOPMENT</param-name>
-    <param-value>false</param-value>
-  </context-param>
-
-  <!-- Filters -->
-  <filter> 
-    <display-name>Ajax4jsf Filter</display-name> 
-    <filter-name>ajax4jsf</filter-name> 
-    <filter-class>org.ajax4jsf.Filter</filter-class> 
-  </filter> 
-
-  <!-- Filter Mappings -->
-  <filter-mapping> 
-    <filter-name>ajax4jsf</filter-name> 
-    <servlet-name>FacesServlet</servlet-name>
-    <dispatcher>REQUEST</dispatcher>
-    <dispatcher>FORWARD</dispatcher>
-    <dispatcher>INCLUDE</dispatcher>
-  </filter-mapping>
-
- <!-- Listeners -->
-
-  <!-- Servlets -->
   <servlet>
-    <servlet-name>FacesServlet</servlet-name>
+    <servlet-name>Faces Servlet</servlet-name>
     <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
     <load-on-startup>1</load-on-startup>
   </servlet>
-
-  <!-- Servlet mappings -->
   <servlet-mapping>
-    <servlet-name>FacesServlet</servlet-name>
-    <url-pattern>*.xhtml</url-pattern>
+    <servlet-name>Faces Servlet</servlet-name>
+    <url-pattern>*.faces</url-pattern>
   </servlet-mapping>
+  
+  <filter>
+  <display-name>Ajax4jsf Filter</display-name>
+  <filter-name>ajax4jsf</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+  </filter>
+  
+  <filter-mapping>
+  <filter-name>ajax4jsf</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+  </filter-mapping> 
 
-  <!-- Welcome files -->
-
   <welcome-file-list>
-    <welcome-file>index.xhtml</welcome-file>
+	<welcome-file>
+         index.html
+      </welcome-file>
   </welcome-file-list>
-
-  <error-page>
-    <error-code>404</error-code>
-    <location>/index.xhtml</location>
-  </error-page>
-
-  <error-page>
-    <error-code>500</error-code>
-    <location>/index.xhtml</location>
-  </error-page>
-
+  
 </web-app>

Modified: branches/JBossProfiler2/src/main/org/jboss/profiler/shared/FrameInfo.java
===================================================================
--- branches/JBossProfiler2/src/main/org/jboss/profiler/shared/FrameInfo.java	2008-10-06 01:44:47 UTC (rev 479)
+++ branches/JBossProfiler2/src/main/org/jboss/profiler/shared/FrameInfo.java	2008-10-06 01:45:36 UTC (rev 480)
@@ -22,6 +22,7 @@
 package org.jboss.profiler.shared;
 
 import java.io.Serializable;
+import java.text.DecimalFormat;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -298,4 +299,21 @@
     childMap.put(mi, Integer.valueOf(children.size() - 1));
     netTime = -1;
   }
+  
+  public String toString(){
+	  DecimalFormat df = new DecimalFormat("#0.00");
+	  long alltime;
+	  long total = this.getTotalTime();
+	  long net = this.getNetTime();
+	  //df.format(Math.toPercent(net, total);
+	  FrameInfo currentParent,currentFrame;
+	  currentFrame=this;
+	  currentParent=this.parent;
+	  while(currentParent!=null) {
+		  currentFrame=currentParent;
+		  currentParent=currentParent.parent;
+	  }
+	  alltime= currentFrame.getTotalTime();	  
+	  return df.format(Math.toPercent(total, alltime))+ "% - "+df.format(Math.nanoToMilli(total))+" ms - "+this.getCount()+" inv. - "+ this.method.getMethodName();
+  }
 }

Added: branches/JBossProfiler2/src/main/www/addClassPanel.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/addClassPanel.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/addClassPanel.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,61 @@
+<ui:composition xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:rich="http://richfaces.org/rich"
+            xmlns:a4j="http://richfaces.org/a4j"
+      xmlns:ui="http://java.sun.com/jsf/facelets">
+	
+    <rich:modalPanel id="addClassPanel" width="350" height="250" onhide="false">
+    <a4j:region id="addClassRegion">
+	    <a4j:form id="addClassFrom" ajaxSubmit="true" rendered="true"> 
+	    <a4j:outputPanel layout="block">
+	    
+  		<f:facet name="controls">
+        		<h:panelGroup>
+                	<h:graphicImage value="/images/modal/close.png" style="cursor:pointer" id="hidelink1"/>
+                	<rich:componentControl for="addClassPanel" attachTo="hidelink1" operation="hide" event="onclick"/>
+            	</h:panelGroup>
+        		</f:facet>
+				<h:panelGroup>
+				<rich:panel>
+				<f:facet name="header">
+                	<h:outputText value="Add Class to Intercept During Runtime"/>
+        		</f:facet>
+        		
+        		<h:outputText value="Class to add (e.g. org.jboss.*)"/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>
+        		
+				<h:inputText value="#{basicOptBean.addClass}"/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>
+				
+				<h:outputText value="Choose the visibility for above class"/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>
+				
+				<a4j:outputPanel layout="block" id="visibilitySelect">
+				<h:selectOneMenu value="#{basicOptBean.visibility}" style="width: 200px" lable="#{basicOptBean.visibility}">
+					<a4j:support event="onchange" reRender="port,protocolSelect">
+    				</a4j:support>
+    				<f:selectItems value="#{basicOptBean.visibilities}" />
+				</h:selectOneMenu>
+				</a4j:outputPanel>
+
+				<br/>
+
+				<a4j:commandButton id="addButton1" value="add class" action="#{basicOptBean.addClassAction}" onclick="this.disable=true">
+					<rich:componentControl for="addClassPanel" attachTo="addButton1" operation="hide" event="onclick"/>
+				</a4j:commandButton>
+			
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<a4j:commandButton id="closebutton1" value="cancel">
+				<rich:componentControl for="addClassPanel" attachTo="closebutton1" operation="hide" event="onclick"/>
+				</a4j:commandButton>
+				</rich:panel>
+        		</h:panelGroup>
+    </a4j:outputPanel>
+    </a4j:form>
+	</a4j:region>
+    </rich:modalPanel>
+	</ui:composition>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/addClassPanel.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/compare_methods.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/compare_methods.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/compare_methods.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<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:a4j="http://richfaces.org/a4j"
+	xmlns:rich="http://richfaces.org/rich">
+
+	<ui:composition template="/template/comparetemplate.xhtml">
+		<ui:define name="compareContent">
+		<h:form>
+			<h:outputText value="The methods #{compareSnapshotBean.snapshotsToCompare[0]} and #{compareSnapshotBean.snapshotsToCompare[1]} comparing results is: "/>
+			<p></p>
+			
+			<rich:datascroller align="left" for="compareSnapshotsTable" maxPages="20"/>
+				<rich:spacer height="30"/>
+            
+    			<rich:dataTable id="compareSnapshotsTable" rows="10" value="#{compareSnapshotBean.compareSnapshotBeans}" var="compareResult" width="500px" columnClasses="center" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'">
+    			<f:facet name="label"> 
+                        <h:outputText value="Diff(Total Time)   Old(ms)   New(ms)   Diff(Invocations)   Old(#)   New(#)   Method"/>
+                </f:facet>
+                
+ 		 		<rich:column style="width:500px" sortBy="#{compareResult.difftime}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="Diff(Total Time)"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.difftime}"/>
+		     	</rich:column>
+		     	
+		     	<rich:column style="width:500px" sortBy="#{compareResult.OTime}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="Old(ms)"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.OTime}"/>
+		     	</rich:column>
+		     	
+		     	<rich:column style="width:500px" sortBy="#{compareResult.NTime}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="New(ms)"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.NTime}"/>
+		     	</rich:column>
+		     	
+		     	<rich:column style="width:500px" sortBy="#{compareResult.diffCount}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="Diff(Invocations)"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.diffCount}"/>
+		     	</rich:column>
+		     	
+		     	<rich:column style="width:500px" sortBy="#{compareResult.OCount}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="Old(#)"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.OCount}"/>
+		     	</rich:column>
+		     	
+		     	<rich:column style="width:500px" sortBy="#{compareResult.NCount}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="New(#)"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.NCount}"/>
+		     	</rich:column>
+		     	
+		     	 <rich:column style="width:500px" sortBy="#{compareResult.methodName}"> 
+ 		 			<f:facet name="header"> 
+                        <h:outputText value="Method"/>
+                	</f:facet>
+                	<h:outputText value="#{compareResult.methodName}"/>
+		     	</rich:column>
+		     	
+		     </rich:dataTable>
+		</h:form>
+		</ui:define>
+	</ui:composition>
+
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/compare_methods.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/compare_snapshots.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/compare_snapshots.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/compare_snapshots.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:a4j="http://richfaces.org/a4j"
+      xmlns:rich="http://richfaces.org/rich"
+      xmlns:richfaces="http://richfaces.ajax4jsf.org/rich"
+      xmlns:ajax="https://ajax4jsf.dev.java.net/ajax">
+
+	<ui:composition template="/template/comparetemplate.xhtml">
+	<ui:define name="compareContent">
+			<h:outputText value="Please choose two snapshots *.jps file for analyzing."/>
+			<p></p>
+		
+			<h:selectManyListbox value="#{compareSnapshotBean.snapshotsToCompare}" style="height:300px;width:500px">
+    			<f:selectItems value="#{compareSnapshotBean.JPSs}" />
+			</h:selectManyListbox>
+			<p></p>
+			<a4j:commandLink action="#{compareSnapshotBean.analyzeAction}" onclick="document.location.href='./compare_methods.faces'">
+        		<h:outputText value="Compare the selected two snapshots" /> 
+        	</a4j:commandLink>
+	</ui:define>
+	</ui:composition>
+
+</html>


Property changes on: branches/JBossProfiler2/src/main/www/compare_snapshots.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/index.html
===================================================================
--- branches/JBossProfiler2/src/main/www/index.html	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/index.html	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,11 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta http-equiv="refresh" content="0; url=listSnapshot.faces" />
+<title>Insert title here</title>
+</head>
+<body>
+
+</body>
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/index.html
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/listSnapshot.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/listSnapshot.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/listSnapshot.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,93 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<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:a4j="http://richfaces.org/a4j"
+	xmlns:rich="http://richfaces.org/rich">
+
+	<ui:composition template="/template/head.xhtml">
+		<ui:define name="mainContent">
+		<h:panelGrid border="0" columns="2" columnClasses="wholecol" style="width: 150px">
+		<h:form>
+		<rich:panel style="background-color: AliceBlue; height: 915px; width: 150px; background-position: left center; padding-right: 1px; padding-left: 1px; padding-top: 1px; border-top-style: solid; margin-bottom: 1px; border-right-style: solid; padding-bottom: 1px; border-bottom-color: LightBlue; border-bottom-style: solid; margin-right: 1px; border-left-color: LightBlue; border-top-color: LightBlue; border-right-color: LightBlue; border-left-style: solid; margin-left: 1px; margin-top: 1px; font-size:32px" >
+			<h:outputLabel value="Snapshot Operations"/>
+			<p>
+			</p>
+			<h:commandLink action="${basicOptBean.takeSnapshot}"> Take Snapshot
+			</h:commandLink>
+			<p>
+			</p>
+			<a href="listSnapshot.faces">  List Snapshots </a>
+			<p>
+			</p>
+			<h:commandLink action="${basicOptBean.clearSnapshot}">  Clear Snapshots
+			</h:commandLink>
+		</rich:panel>
+		</h:form>
+		
+
+			<a4j:region id="listSnapshotRegion">
+	    	<a4j:form  id="listSnapshotForm" ajaxSubmit="true" rendered="true"> 
+	    	<a4j:outputPanel id="listSnapshotPanel" layout="block">
+			
+			<rich:panel style="height:919px;width:822px">			
+			<h:outputText value="All the snapshots are listed here"/>    
+			<h:form>
+				<rich:panel>
+				<rich:datascroller align="left" for="snapshotsTable" maxPages="20" reRender="sc2" id="sc1"/>
+				<rich:spacer height="30"/>
+            
+    			<rich:dataTable id="snapshotsTable" rows="10" value="#{basicOptBean.snapshots}" var="snapshot" width="500px" columnClasses="center" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'">
+    			<f:facet name="label"> 
+                        <h:outputText value="Snapshot start time --> stop time"/>
+                </f:facet>
+                
+ 		 		<rich:column style="width:500px" sortBy="#{snapshot}" onclick="document.location.href='./listSnapshot.faces'"> 
+                	<h:outputText value="#{snapshot}"/>
+                	<rich:toolTip direction="top-right" showDelay="500">
+            			<span style="white-space:nowrap"> Click to choose one snapshot for save!<br/></span>
+            		</rich:toolTip>
+		     	</rich:column>
+
+		     	<a4j:support event="onRowClick" action="#{basicOptBean.selectSnapshotAction}" reRender="listSnapshotPanel,selectedOutput">
+		     		<a4j:actionparam name="selected" value="#{snapshot}" assignTo="#{basicOptBean.selectSnapshot}">
+		     		</a4j:actionparam>
+				</a4j:support>
+				</rich:dataTable>
+				</rich:panel>
+				
+				<rich:spacer height="30"/>
+				
+				<rich:panel id="savePanel" rendered="#{basicOptBean.panelShows}">
+				<h:outputText id="selectedOutput" value="the selected snapshot is No.#{basicOptBean.selectSnapshot}"/>
+				
+				<p></p>
+				<h:outputText value="Input the snapshot name. If it's blank, the name based on time is generated."/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>
+        		
+				<h:inputText id="inputSaveName" value="#{basicOptBean.saveSnapshotName}"/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>			
+				<br/>
+				
+				<a4j:commandButton id="savebutton" value="Save" action="#{basicOptBean.selectSaveSnapshotAction}" reRender="inputSaveName,saveEcho">
+					<rich:componentControl for="saveSnapshotPanel" attachTo="savebutton" operation="hide" event="onclick"/>
+				</a4j:commandButton>
+				<p>
+				</p>
+				
+				<h:outputText id="saveEcho" value="#{basicOptBean.saveEcho}"/>
+				</rich:panel>
+			</h:form>
+
+			</rich:panel>
+    		</a4j:outputPanel>
+    		</a4j:form>
+			</a4j:region>	
+		</h:panelGrid>
+		</ui:define>
+	</ui:composition>
+
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/listSnapshot.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/load_hotspots.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/load_hotspots.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/load_hotspots.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,178 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<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:a4j="http://richfaces.org/a4j"
+	xmlns:rich="http://richfaces.org/rich">
+
+	<ui:composition template="/template/loadtemplate.xhtml">
+		<ui:define name="loadContent">
+		<rich:tabPanel id="classTabPanel" width="40%" headerAlignment="left">
+		<rich:tab label="hotspot" styleClass="cc">
+		<h:form>
+			<rich:datascroller align="left" for="hotspots" maxPages="20"/>
+			<rich:spacer height="30"/>
+			<rich:dataTable width="483" id="hotspots" rows="12" columnClasses="wholecol" value="#{overviewBean.hotspots}" var="hsb" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'">
+				<rich:column id="Count" sortBy="#{hsb.count}">
+							<f:facet name="header"><h:outputText value="Count"/></f:facet>
+				            <h:outputText value="#{hsb.count}"/>
+				        </rich:column>
+				        <rich:column id="MostTimeMs" sortBy="#{hsb.totalTime}">
+				            <f:facet name="header"><h:outputText value="Total Time(ms)"/></f:facet>
+				            <h:outputText value="#{hsb.totalTime}">
+				            	<f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				        <rich:column id="Avg" sortBy="#{hsb.totalTime/hsb.count}">
+				            <f:facet name="header"><h:outputText value="Average"/></f:facet>
+				            <h:outputText value="#{hsb.totalTime/hsb.count}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				                <rich:column id="Percentage" sortBy="#{hsb.percent}">
+				            <f:facet name="header"><h:outputText value="Percentage"/></f:facet>
+				            <h:outputText value="#{hsb.percent}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				        <rich:column id="Method" sortBy="#{hsb.prettyName}" width="250">
+				            <f:facet name="header"><h:outputText value="Method"/></f:facet>
+				            <h:outputText value="#{hsb.prettyName}"/>
+				        </rich:column>
+			</rich:dataTable>
+			</h:form>
+			<br/>
+		</rich:tab>
+		
+		<rich:tab label="package" styleClass="cc">
+			<h:form>
+			<rich:datascroller align="left" for="hotspots" maxPages="20"/>
+			<rich:spacer height="30"/>
+			<rich:dataTable width="483" id="hotspots" rows="20" columnClasses="wholecol" value="#{overviewBean.packages}" var="pgb" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'">
+	            <rich:column id="Percentage" sortBy="#{pgb.percent}">
+				 	<f:facet name="header"><h:outputText value="Percentage"/></f:facet>
+				    <h:outputText value="#{pgb.percent}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column id="TotalTime" sortBy="#{pgb.totalTime}">
+				 	<f:facet name="header"><h:outputText value="Total Time(ms)"/></f:facet>
+				    <h:outputText value="#{pgb.totalTime}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column id="Packagename" sortBy="#{pgb.prettyName}">
+				 	<f:facet name="header"><h:outputText value="Package Name"/></f:facet>
+				    <h:outputText value="#{pgb.prettyName}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+			</rich:dataTable>
+			</h:form>
+			<br/>
+		</rich:tab>
+				
+		<rich:tab label="class/method">
+	
+			<h:outputText value="Please click one class for detailed method info."/>
+			<h:form>
+			<rich:datascroller align="left" for="classes" maxPages="20"/>
+			<rich:spacer height="30"/>
+			<rich:dataTable width="483" id="classes" rows="20" columnClasses="wholecol" value="#{classBean.classes}" var="clazzb" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'" rowKeyVar="rowClassVar">
+				<rich:column sortBy="#{clazzb.className}">
+				 	<f:facet name="header"><h:outputText value="Class Name"/></f:facet>
+				    <h:outputText value="#{clazzb.className}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{clazzb.type}">
+				 	<f:facet name="header"><h:outputText value="Type"/></f:facet>
+				    <h:outputText value="#{clazzb.type}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{clazzb.totalTime}">
+				 	<f:facet name="header"><h:outputText value="Total Time"/></f:facet>
+				    <h:outputText value="#{clazzb.totalTime}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{clazzb.waitTime}">
+				 	<f:facet name="header"><h:outputText value="Wait Time"/></f:facet>
+				    <h:outputText value="#{clazzb.waitTime}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{clazzb.allocCount}">
+				 	<f:facet name="header"><h:outputText value="Invocations"/></f:facet>
+				    <h:outputText value="#{clazzb.allocCount}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+		
+            <a4j:support event="onRowClick" action="#{classBean.fireMethodsInfo}" reRender="methodsDataTable,classOutputText">
+            	<a4j:actionparam name="selected" value="#{clazzb.className}" assignTo="#{classBean.selectedClass}">
+            	</a4j:actionparam>
+			</a4j:support>
+			</rich:dataTable>
+			</h:form>
+
+			<br/>
+			<p></p>
+			
+			<h:outputText id="classOutputText" value="Class #{classBean.selectedClass} is chosen,please see the
+			methods info below!"/>
+			
+			<h:form>
+			<rich:datascroller align="left" for="classes" maxPages="20"/>
+			<rich:spacer height="30"/>
+			<rich:dataTable width="483" id="methodsDataTable" rows="20" columnClasses="wholecol" value="#{methodBean.methods}" var="methodb" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'">
+				<rich:column sortBy="#{methodb.count}">
+				 	<f:facet name="header"><h:outputText value="Counts"/></f:facet>
+				    <h:outputText value="#{methodb.count}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{methodb.totalTime}">
+				 	<f:facet name="header"><h:outputText value="Total Time"/></f:facet>
+				    <h:outputText value="#{methodb.totalTime}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{methodb.CPercent}">
+				 	<f:facet name="header"><h:outputText value="Class Percent"/></f:facet>
+				    <h:outputText value="#{methodb.CPercent}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{methodb.TPercent}">
+				 	<f:facet name="header"><h:outputText value="Total Percent"/></f:facet>
+				    <h:outputText value="#{methodb.TPercent}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+				
+				<rich:column sortBy="#{methodb.prettyName}">
+				 	<f:facet name="header"><h:outputText value="Method Name"/></f:facet>
+				    <h:outputText value="#{methodb.prettyName}">
+				    <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				    </h:outputText>
+				</rich:column>
+			</rich:dataTable>
+			</h:form>
+		</rich:tab>
+	</rich:tabPanel>
+		</ui:define>
+	</ui:composition>
+
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/load_hotspots.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/load_overview.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/load_overview.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/load_overview.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<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:a4j="http://richfaces.org/a4j"
+	xmlns:rich="http://richfaces.org/rich">
+
+	<ui:composition template="/template/loadtemplate.xhtml">
+		<ui:define name="loadContent">
+			<h:panelGrid border="0" columns="2" columnClasses="col" style="color: Black; background-color: WhiteSmoke; left: auto; clear: left; font-size: 12px; margin-top: auto; margin-bottom: auto; margin-right: auto; margin-left: auto; bottom: auto; right: auto; background-position: left left; top: auto; vertical-align: top; background-attachment: scroll; background-repeat: repeat">
+				<f:facet name="header">
+				<h:outputText value="Overview"/>		
+				</f:facet>
+				
+								<rich:panel style="middlepanel">
+						<f:facet name="header">
+						<h:outputText value="Hotspots"/>		
+						</f:facet>
+				<rich:scrollableDataTable value="#{overviewBean.hotspots}" var="hsb" id="HotSpot" rows="0" style="middlepanel" height="200px" width="360px">
+						<rich:column id="Count" sortBy="#{hsb.count}">
+							<f:facet name="header"><h:outputText value="Count"/></f:facet>
+				            <h:outputText value="#{hsb.count}"/>
+				        </rich:column>
+				        <rich:column id="MostTimeMs" sortBy="#{hsb.totalTime}">
+				            <f:facet name="header"><h:outputText value="Total Time(ms)"/></f:facet>
+				            <h:outputText value="#{hsb.totalTime}">
+				            	<f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				        <rich:column id="Avg" sortBy="#{hsb.totalTime/hsb.count}">
+				            <f:facet name="header"><h:outputText value="Average"/></f:facet>
+				            <h:outputText value="#{hsb.totalTime/hsb.count}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				                <rich:column id="Percentage" sortBy="#{hsb.percent}">
+				            <f:facet name="header"><h:outputText value="Percentage"/></f:facet>
+				            <h:outputText value="#{hsb.percent}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				        <rich:column id="Method" sortBy="#{hsb.prettyName}" width="250">
+				            <f:facet name="header"><h:outputText value="Method"/></f:facet>
+				            <h:outputText value="#{hsb.prettyName}"/>
+				        </rich:column>
+						</rich:scrollableDataTable>
+				</rich:panel>				
+
+				<rich:panel style="middlepanel">
+						<f:facet name="header">
+						<h:outputText value="Most Time"/>		
+						</f:facet>
+						<rich:scrollableDataTable value="#{overviewBean.mostTime}" var="mts" id="MostTime" rows="0" style="middlescroll" width="360px" height="200px">
+						<rich:column id="Count">
+							<f:facet name="header"><h:outputText value="Count"/></f:facet>
+				            <h:outputText value="#{mts.count}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				        <rich:column id="MostTimeMs">
+				            <f:facet name="header"><h:outputText value="Most Time(ms)"/></f:facet>
+				            <h:outputText value="#{mts.totalTime}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				                <rich:column id="Percentage">
+				            <f:facet name="header"><h:outputText value="Percent"/></f:facet>
+				            <h:outputText value="#{mts.percent}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+				        <rich:column id="Method" width="500">
+				            <f:facet name="header"><h:outputText value="Method"/></f:facet>
+				            <h:outputText value="#{mts.prettyName}"/>
+				        </rich:column>
+						</rich:scrollableDataTable>
+				</rich:panel>		
+			
+				<rich:panel style="middlepanel">
+				<f:facet name="header">
+				<h:outputText value="Classes"/>		
+						</f:facet>
+						<rich:scrollableDataTable value="#{classBean.classes}" var="classb" id="Classes" rows="0" style="middlescroll" height="200px" width="360px">
+						<rich:column id="ClassCname">
+							<f:facet name="header"><h:outputText value="Class Name"/></f:facet>
+				            <h:outputText value="#{classb.className}"/>
+				        </rich:column>
+				        <rich:column id="ClassCtype">
+				            <f:facet name="header"><h:outputText value="Type"/></f:facet>
+				            <h:outputText value="#{classb.type}"/>
+				        </rich:column>
+				        <rich:column id="ClassCms">
+				            <f:facet name="header"><h:outputText value="Ms"/></f:facet>
+				            <h:outputText value="#{classb.totalTime}"/>
+				        </rich:column>
+						</rich:scrollableDataTable>
+				</rich:panel>
+			
+				<rich:panel style="middlepanel">
+				<f:facet name="header">
+				<h:outputText value="Threads Info"/>		
+						</f:facet>
+						<rich:scrollableDataTable value="#{overviewBean.threads}" var="ths" id="Overview" rows="0" sortOrder="#{threadsBean.millionSeconds}" style="middlescroll" height="200px" width="360px">
+						<rich:column id="Threads">
+							<f:facet name="header"><h:outputText value="Threads"/></f:facet>
+				            <h:outputText value="#{ths.name}"/>
+				        </rich:column>
+				        <rich:column id="Ms">
+				            <f:facet name="header"><h:outputText value="Total Time(ms)"/></f:facet>
+				            <h:outputText value="#{ths.totalTime/1000000}">
+				            <f:convertNumber maxFractionDigits="2"></f:convertNumber>
+				            </h:outputText>
+				        </rich:column>
+						</rich:scrollableDataTable>
+				</rich:panel>
+			
+			 	<rich:panel style="middlepanel">
+				<f:facet name="header">
+				<h:outputText value="Allocations"/>		
+						</f:facet>
+						<rich:scrollableDataTable value="#{overviewBean.allocations}" var="allob" id="Allocations" rows="0" style="middlescroll" height="200px" width="360px">
+						<rich:column id="AlloMethodName" width="250">
+							<f:facet name="header"><h:outputText value="Class Name"/></f:facet>
+				            <h:outputText value="#{allob.className}"/>
+				        </rich:column>
+				        <rich:column id="AlloTimes">
+				            <f:facet name="header"><h:outputText value="Times"/></f:facet>
+				            <h:outputText value="#{allob.count}"/>
+				        </rich:column>
+						</rich:scrollableDataTable>
+				</rich:panel>
+				
+	</h:panelGrid>
+		</ui:define>
+	</ui:composition>
+
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/load_overview.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/load_snapshot.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/load_snapshot.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/load_snapshot.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:a4j="http://richfaces.org/a4j"
+      xmlns:rich="http://richfaces.org/rich"
+      xmlns:richfaces="http://richfaces.ajax4jsf.org/rich"
+      xmlns:ajax="https://ajax4jsf.dev.java.net/ajax">
+
+	<ui:composition template="/template/loadtemplate.xhtml">
+	<ui:define name="loadContent">
+			<h:outputText value="Please choose one snapshot *.jps file for analyzing."/>
+			<p></p>
+			<h:selectOneListbox value="#{loadSnapshotBean.snapshotToLoad}" style="height:300px;width:500px">
+    			<f:selectItems value="#{loadSnapshotBean.JPSs}" />
+			</h:selectOneListbox>
+			<p></p>
+			<a4j:commandLink action="#{loadSnapshotBean.analyzeAction}" onclick="document.location.href='./load_overview.faces'">
+        		<h:outputText value="Analyze this snapshot" /> 
+        	</a4j:commandLink>
+	</ui:define>
+	</ui:composition>
+
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/load_snapshot.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/load_thread_hotspots.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/load_thread_hotspots.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/load_thread_hotspots.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,62 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<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:a4j="http://richfaces.org/a4j"
+	xmlns:rich="http://richfaces.org/rich">
+
+	<ui:composition template="/template/loadtemplate.xhtml">
+		<ui:define name="loadContent">
+		<h:form>
+		<h:panelGrid columns="2">
+		
+		<h:outputText value="Thread Selection:" style="width:150px"/>	
+		<h:selectOneMenu value="#{threadHotspotBean.selectItem}" style="width: 500px" valueChangeListener="#{threadHotspotBean.selectionChanged}"
+			lable="#{threadHotspotBean.selectItem}">
+			<a4j:support event="onchange" reRender="selectedOutput,callerTable">
+    		</a4j:support>
+    		<f:selectItems value="#{threadHotspotBean.allSelectItems}" />
+		</h:selectOneMenu>
+    	</h:panelGrid>
+    	
+    	<h:outputText id="selectedOutput" value="the selected thread is #{threadHotspotBean.selectItem}"/>
+    	</h:form>	
+    	
+		<rich:separator height="1" style="background-color: white"/>
+		<h:form>
+        <rich:dataTable id="callerTable" value="#{threadHotspotBean.subKeys}" var="key" width="300px" columnClasses="center" rows="25" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'">
+ 		 	<rich:column style="width:200px" sortBy="#{key}"> 
+            	<f:facet name="header"><h:outputText value="caller"/></f:facet>
+                <h:outputText value="#{key}"/>
+            </rich:column>
+            
+            <rich:column style="width:150px" sortBy="#{threadHotspotBean.newMap[key].className}">
+            	<f:facet name="header"><h:outputText value="callee"/></f:facet>
+                <h:outputText value="#{threadHotspotBean.newMap[key].className}"/> 
+            </rich:column>
+            
+            <rich:column style="width:150px" sortBy="#{threadHotspotBean.newMap[key].totalTime}">
+            	<f:facet name="header"><h:outputText value="Total Time(ms)"/></f:facet>
+                <h:outputText value="#{threadHotspotBean.newMap[key].totalTime}">
+                	<f:convertNumber maxFractionDigits="2"/>
+                </h:outputText> 
+            </rich:column>
+            
+            <rich:column style="width:150px" sortBy="#{threadHotspotBean.newMap[key].totalTime/threadHotspotBean.newMap[key].count}">
+            	<f:facet name="header"><h:outputText value="Average Time(ms)"/></f:facet>
+                <h:outputText value="#{threadHotspotBean.newMap[key].totalTime/threadHotspotBean.newMap[key].count}">
+                	<f:convertNumber maxFractionDigits="2"/>
+                </h:outputText>
+            </rich:column>
+            
+            <rich:column style="width:150px" sortBy="#{threadHotspotBean.newMap[key].count}">
+            	<f:facet name="header"><h:outputText value="Invocations"/></f:facet>
+                <h:outputText value="#{threadHotspotBean.newMap[key].count}"/> 
+            </rich:column>
+
+        </rich:dataTable>  
+    	</h:form>
+	</ui:define>
+	</ui:composition>
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/load_thread_hotspots.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/load_thread_tree.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/load_thread_tree.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/load_thread_tree.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,87 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<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:a4j="http://richfaces.org/a4j"
+	xmlns:rich="http://richfaces.org/rich">
+
+	<ui:composition template="/template/loadtemplate.xhtml">
+		<ui:define name="loadContent">
+			<f:facet name="header">
+				<h:outputText value="Threads tree"/>		
+			</f:facet>
+
+			<rich:panel id="threadPanel">
+			<h:form>
+			<rich:datascroller align="left" for="threads" maxPages="20"/>
+			<rich:spacer height="30"/>
+			<rich:dataTable width="483" id="threads" rows="20" columnClasses="wholecol" value="#{treeThreadBean.allThreads}" var="threadInfoB" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#FFFFFF'" rowKeyVar="rowClassVar">
+				<f:facet name="header">
+					<rich:columnGroup>
+						<h:column>
+						<h:outputText styleClass="headerText" value="Thread No"/>
+						</h:column>
+						<h:column>
+						<h:outputText styleClass="headerText" value="Thread Name"/>
+						</h:column>
+						<h:column>
+						<h:outputText styleClass="headerText" value="Priority"/>
+						</h:column>
+						<h:column>
+						<h:outputText styleClass="headerText" value="Daemon"/>
+						</h:column>
+						<h:column>
+						<h:outputText styleClass="headerText" value="Groups"/>
+						</h:column>
+					</rich:columnGroup>
+				</f:facet>
+				
+			<h:column>
+                <h:outputText value="#{threadInfoB.id}"/>
+            </h:column>
+            <h:column>
+                <h:outputText value="#{threadInfoB.name}"/>
+            </h:column>
+            <h:column>
+                <h:outputText value="#{threadInfoB.priority}"/>
+            </h:column>
+            <h:column>
+                <h:outputText value="#{threadInfoB.daemon}"/>
+            </h:column>
+            <h:column>
+                <h:outputText value="#{threadInfoB.groups}"/>
+            </h:column>
+            
+            <a4j:support event="onRowClick" action="#{treeThreadBean.fireSelectedThread}" reRender="threadOutputText,threadTree">
+            	<a4j:actionparam name="selected" value="#{threadInfoB.id}" assignTo="#{treeThreadBean.selectedThread}">
+            	</a4j:actionparam>
+            	<rich:toolTip direction="top-right" showDelay="500">
+            		<span style="white-space:nowrap"> Click one row to show the threads tree below!<br/></span>
+            	</rich:toolTip>
+			</a4j:support>
+			</rich:dataTable>
+			
+			</h:form>
+			</rich:panel>	
+			
+			<br/>	
+			<h:outputText id="threadOutputText" value="Thread #{treeThreadBean.selectedThread} is chosen,please see the
+			threads info below!"/>	
+			
+		<rich:panel>		
+	 	 <h:form>    
+	 	 <h:form>    
+       	 <rich:tree id="threadTree" style="width:300px" switchType="ajax" stateAdvisor="#{treeDemoStateAdvisor}">
+            <rich:recursiveTreeNodesAdaptor roots="#{treeFrameBean.srcRoots}" var="item" nodes="#{item.children}">
+            </rich:recursiveTreeNodesAdaptor>
+		</rich:tree>
+    	</h:form>
+
+    	</h:form>
+		</rich:panel>	
+		
+		</ui:define>
+	</ui:composition>
+
+</html>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/load_thread_tree.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: branches/JBossProfiler2/src/main/www/removeClassPanel.xhtml
===================================================================
--- branches/JBossProfiler2/src/main/www/removeClassPanel.xhtml	                        (rev 0)
+++ branches/JBossProfiler2/src/main/www/removeClassPanel.xhtml	2008-10-06 01:45:36 UTC (rev 480)
@@ -0,0 +1,48 @@
+<ui:composition xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:rich="http://richfaces.org/rich"
+            xmlns:a4j="http://richfaces.org/a4j"
+      xmlns:ui="http://java.sun.com/jsf/facelets">
+	
+    <rich:modalPanel id="removeClassPanel" width="350" height="250" onhide="false">
+    <a4j:region id="removeClassAddRegion">
+	    <a4j:form id="removeClassForm" ajaxSubmit="true" rendered="true"> 
+	    <a4j:outputPanel layout="block">
+	    
+  		<f:facet name="controls">
+        		<h:panelGroup>
+                		<h:graphicImage value="/images/modal/close.png" style="cursor:pointer" id="hidelink2"/>
+                		<rich:componentControl for="removeClassPanel" attachTo="hidelink2" operation="hide" event="onclick"/>
+            		</h:panelGroup>
+        		</f:facet>
+				<h:panelGroup>
+				<rich:panel>
+				<f:facet name="header">
+                	<h:outputText value="Remove Class to Intercept During Runtime"/>
+        		</f:facet>
+        		
+        		<h:outputText value="Class to remove (e.g. org.jboss.*)"/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>
+        		
+				<h:inputText value="#{basicOptBean.removeClass}"/>
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<br/>			
+				<br/>
+				
+				<a4j:commandButton id="removebutton" value="Remove" action="#{basicOptBean.removeClassAction}" onclick="this.disable=true">
+					<rich:componentControl for="removeClassPanel" attachTo="removebutton" operation="hide" event="onclick"/>
+				</a4j:commandButton>
+			
+				<rich:spacer width="50" height="20" title="Here is a spacer..."/>
+				<a4j:commandButton id="closebutton2" value="close">
+				<rich:componentControl for="removeClassPanel" attachTo="closebutton2" operation="hide" event="onclick"/>
+				</a4j:commandButton>
+				</rich:panel>
+        		</h:panelGroup>
+    </a4j:outputPanel>
+    </a4j:form>
+	</a4j:region>
+    </rich:modalPanel>
+	</ui:composition>
\ No newline at end of file


Property changes on: branches/JBossProfiler2/src/main/www/removeClassPanel.xhtml
___________________________________________________________________
Name: svn:mime-type
   + text/plain




More information about the jboss-cvs-commits mailing list