[jboss-cvs] JBossAS SVN: r60480 - in branches/Branch_4_0/console/src: resources/webconsole.war and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sun Feb 11 11:48:30 EST 2007
Author: darran.lofthouse at jboss.com
Date: 2007-02-11 11:48:30 -0500 (Sun, 11 Feb 2007)
New Revision: 60480
Modified:
branches/Branch_4_0/console/src/main/org/jboss/console/plugins/EJBModuleLister.java
branches/Branch_4_0/console/src/resources/webconsole.war/EntityEjb.jsp
branches/Branch_4_0/console/src/resources/webconsole.war/MdbEjb.jsp
branches/Branch_4_0/console/src/resources/webconsole.war/StatefulEjb.jsp
branches/Branch_4_0/console/src/resources/webconsole.war/StatelessEjb.jsp
Log:
JBAS-4056 - Update web console to support unique local JNDI names where applicable.
Modified: branches/Branch_4_0/console/src/main/org/jboss/console/plugins/EJBModuleLister.java
===================================================================
--- branches/Branch_4_0/console/src/main/org/jboss/console/plugins/EJBModuleLister.java 2007-02-11 16:33:21 UTC (rev 60479)
+++ branches/Branch_4_0/console/src/main/org/jboss/console/plugins/EJBModuleLister.java 2007-02-11 16:48:30 UTC (rev 60480)
@@ -32,6 +32,7 @@
import javax.management.ObjectInstance;
import javax.management.ObjectName;
+
/**
* As the number of MBeans is very big, we use a real Java class which is far
* faster than beanshell
@@ -48,100 +49,126 @@
* <li> First implementation </li>
* </ul>
*/
-public class EJBModuleLister
- extends AbstractPluginWrapper
+public class EJBModuleLister extends AbstractPluginWrapper
{
protected final static String JMX_JSR77_DOMAIN = "jboss.management.local";
-
- public EJBModuleLister () { super(); }
-
- ResourceTreeNode[] createBeans (ObjectName parent) throws Exception
+
+ public EJBModuleLister()
{
+ super();
+ }
+
+ ResourceTreeNode[] createBeans(ObjectName parent) throws Exception
+ {
// there is a bug in the current jsr77 implementation with regard to naming
// of EJBModule that are part of EARs => I've used a workaround
//
- ObjectInstance[] insts = getMBeansForQuery(JMX_JSR77_DOMAIN +
- ":EJBModule="+parent.getKeyProperty("name")+",*", null);
+ ObjectInstance[] insts = getMBeansForQuery(JMX_JSR77_DOMAIN + ":EJBModule=" + parent.getKeyProperty("name")
+ + ",*", null);
- ResourceTreeNode[] ejbs = new ResourceTreeNode[insts.length];
- for (int i=0; i<insts.length; i++)
+ ResourceTreeNode[] ejbs = new ResourceTreeNode[insts.length];
+ for (int i = 0; i < insts.length; i++)
{
ObjectName objName = insts[i].getObjectName();
String type = objName.getKeyProperty("j2eeType");
-
String ejbName = objName.getKeyProperty("name");
- String containerUrl = "jboss.j2ee:service=EJB,jndiName=" + ejbName;
- containerUrl = java.net.URLEncoder.encode(containerUrl);
- containerUrl = "/jmx-console/HtmlAdaptor?action=inspectMBean&name=" + containerUrl;
+ String containerName = createContainerName(objName);
+
+ if (containerName == null)
+ continue;
+
+ containerName = encode(containerName);
+ String containerUrl = "/jmx-console/HtmlAdaptor?action=inspectMBean&name=" + containerName;
+
TreeNodeMenuEntry[] menus = new TreeNodeMenuEntry[]
- {
- new SimpleTreeNodeMenuEntryImpl ("View container in other window",
- new HttpLinkTreeAction (containerUrl, "_blank")
- )
- };
-
- String j2eeType = objName.getKeyProperty ("j2eeType");
+ {new SimpleTreeNodeMenuEntryImpl("View container in other window", new HttpLinkTreeAction(containerUrl,
+ "_blank"))};
+
+ String j2eeType = objName.getKeyProperty("j2eeType");
String filename = "EJB.jsp";
- if (j2eeType.equalsIgnoreCase ("StatelessSessionBean"))
+ if (j2eeType.equalsIgnoreCase("StatelessSessionBean"))
{
filename = "StatelessEjb.jsp";
}
- else if (j2eeType.equalsIgnoreCase ("StatefulSessionBean"))
+ else if (j2eeType.equalsIgnoreCase("StatefulSessionBean"))
{
filename = "StatefulEjb.jsp";
}
- else if (j2eeType.equalsIgnoreCase ("EntityBean"))
+ else if (j2eeType.equalsIgnoreCase("EntityBean"))
{
filename = "EntityEjb.jsp";
}
- else if (j2eeType.equalsIgnoreCase ("MessageDrivenBean"))
+ else if (j2eeType.equalsIgnoreCase("MessageDrivenBean"))
{
filename = "MdbEjb.jsp";
}
-
- ejbs[i] = createResourceNode(
- ejbName, // name
+
+ ejbs[i] = createResourceNode(ejbName, // name
type, // description
"images/bean.gif", // Icon URL
- filename+"?ObjectName=" + encode(objName.toString()), // Default URL
- menus,
- null, // sub nodes
- null, // Sub-Resources
- objName.toString(),
- insts[i].getClassName()
- );
-
+ filename + "?ObjectName=" + encode(objName.toString()) + "&ContainerObjectName=" + containerName, // Default URL
+ menus, null, // sub nodes
+ null, // Sub-Resources
+ objName.toString(), insts[i].getClassName());
+
}
-
- return ejbs;
+
+ return ejbs;
}
+ protected String createContainerName(ObjectName objName) throws Exception
+ {
+ String jndiName = (String) mbeanServer.getAttribute(objName, "JndiName");
+ String localJndiName = (String) mbeanServer.getAttribute(objName, "LocalJndiName");
+
+ String containerUrl = null;
+
+ String defaultContainerUrl = "jboss.j2ee:service=EJB,jndiName=" + jndiName;
+ ObjectName defaultObjectName = new ObjectName(defaultContainerUrl);
+ String localContainerUrl = "jboss.j2ee:service=EJB,jndiName=" + localJndiName;
+ ObjectName localObjectName = new ObjectName(localContainerUrl);
+
+ if (mbeanServer.isRegistered(defaultObjectName))
+ {
+ log.debug("Found container with default JNDI name URL for - " + objName.toString());
+ containerUrl = defaultContainerUrl;
+ }
+ else if (mbeanServer.isRegistered(localObjectName))
+ {
+ log.debug("Found container with local JNDI name URL for - " + objName.toString());
+ containerUrl = localContainerUrl;
+ }
+ else
+ {
+ log.warn("Unable to find container for - " + objName.toString());
+ }
+
+ return containerUrl;
+ }
+
protected TreeNode getTreeForResource(String profile, ManageableResource resource)
{
try
{
- ObjectName objName = ((MBeanResource)resource).getObjectName();
+ ObjectName objName = ((MBeanResource) resource).getObjectName();
- return createTreeNode
- (
- objName.getKeyProperty("name"), // name
+ return createTreeNode(objName.getKeyProperty("name"), // name
"", // description
"images/beans.gif", // Icon URL
"EJBModule.jsp?ObjectName=" + encode(objName.toString()), // Default URL
- null,
- null, // sub nodes
- createBeans (objName) // Sub-Resources
- ).setMasterNode(true);
-
+ null, null, // sub nodes
+ createBeans(objName) // Sub-Resources
+ ).setMasterNode(true);
+
}
catch (Exception e)
{
- e.printStackTrace ();
- System.out.println (checker);
+ e.printStackTrace();
+ System.out.println(checker);
return null;
-
+
}
}
Modified: branches/Branch_4_0/console/src/resources/webconsole.war/EntityEjb.jsp
===================================================================
--- branches/Branch_4_0/console/src/resources/webconsole.war/EntityEjb.jsp 2007-02-11 16:33:21 UTC (rev 60479)
+++ branches/Branch_4_0/console/src/resources/webconsole.war/EntityEjb.jsp 2007-02-11 16:48:30 UTC (rev 60480)
@@ -1,11 +1,10 @@
<%@ taglib uri="/webconsole" prefix="jb" %>
<jb:mbean id="ejb" intf="org.jboss.management.j2ee.EntityBeanMBean" />
-<jb:mbean id="container" mbean='<%="jboss.j2ee:service=EJB,jndiName=" + (new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name"))%>' intf="org.jboss.ejb.ContainerMBean" />
+<jb:mbean id="container" mbean='<%=request.getParameter("ContainerObjectName")%>' intf="org.jboss.ejb.ContainerMBean" />
<%
String ejbName = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name");
String ejbModule = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("EJBModule");
- String containerUrl = "jboss.j2ee:service=EJB,jndiName=" + ejbName;
- containerUrl = java.net.URLEncoder.encode(containerUrl);
+ String containerUrl = java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
containerUrl = "../jmx-console/HtmlAdaptor?action=inspectMBean&name=" + containerUrl;
org.jboss.invocation.InvocationStatistics invokeStats= container.getInvokeStats ();
@@ -21,9 +20,12 @@
invokeStats.resetStats ();
}
- String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String myUrl = response.encodeURL(request.getRequestURI()) + "?" + "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ String parameters = "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ parameters = parameters + "&ContainerObjectName=" + java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
+
+ String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true" + parameters;
+ String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true" + parameters;
+ String myUrl = response.encodeURL(request.getRequestURI()) + "?" + parameters;
org.jboss.metadata.BeanMetaData beanMetaData = container.getBeanMetaData();
%>
Modified: branches/Branch_4_0/console/src/resources/webconsole.war/MdbEjb.jsp
===================================================================
--- branches/Branch_4_0/console/src/resources/webconsole.war/MdbEjb.jsp 2007-02-11 16:33:21 UTC (rev 60479)
+++ branches/Branch_4_0/console/src/resources/webconsole.war/MdbEjb.jsp 2007-02-11 16:48:30 UTC (rev 60480)
@@ -7,15 +7,11 @@
<%@ taglib uri="/webconsole" prefix="jb" %>
<jb:mbean id="ejb" intf="org.jboss.management.j2ee.MessageDrivenBeanMBean" />
-<jb:mbean id="container" mbean='<%="jboss.j2ee:service=EJB,jndiName=" + (new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name"))%>' intf="org.jboss.ejb.ContainerMBean" />
-
+<jb:mbean id="container" mbean='<%=request.getParameter("ContainerObjectName")%>' intf="org.jboss.ejb.ContainerMBean" />
<%
- // Author: Boris Cinkler cinkler at users.sourceforge.net
-
String ejbName = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name");
String ejbModule = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("EJBModule");
- String containerUrl = "jboss.j2ee:service=EJB,jndiName=" + ejbName;
- containerUrl = java.net.URLEncoder.encode(containerUrl);
+ String containerUrl = java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
containerUrl = "../jmx-console/HtmlAdaptor?action=inspectMBean&name=" + containerUrl;
org.jboss.invocation.InvocationStatistics invokeStats= container.getInvokeStats ();
@@ -31,12 +27,15 @@
invokeStats.resetStats ();
}
- String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String myUrl = response.encodeURL(request.getRequestURI()) + "?" + "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ String parameters = "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ parameters = parameters + "&ContainerObjectName=" + java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
+
+ String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true" + parameters;
+ String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true" + parameters;
+ String myUrl = response.encodeURL(request.getRequestURI()) + "?" + parameters;
org.jboss.metadata.BeanMetaData beanMetaData = container.getBeanMetaData();
- %>
+%>
<%!
public String addStatRow (javax.management.j2ee.statistics.Statistic stat)
Modified: branches/Branch_4_0/console/src/resources/webconsole.war/StatefulEjb.jsp
===================================================================
--- branches/Branch_4_0/console/src/resources/webconsole.war/StatefulEjb.jsp 2007-02-11 16:33:21 UTC (rev 60479)
+++ branches/Branch_4_0/console/src/resources/webconsole.war/StatefulEjb.jsp 2007-02-11 16:48:30 UTC (rev 60480)
@@ -1,11 +1,10 @@
<%@ taglib uri="/webconsole" prefix="jb" %>
<jb:mbean id="ejb" intf="org.jboss.management.j2ee.StatefulSessionBeanMBean" />
-<jb:mbean id="container" mbean='<%="jboss.j2ee:service=EJB,jndiName=" + (new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name"))%>' intf="org.jboss.ejb.ContainerMBean" />
+<jb:mbean id="container" mbean='<%=request.getParameter("ContainerObjectName")%>' intf="org.jboss.ejb.ContainerMBean" />
<%
String ejbName = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name");
String ejbModule = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("EJBModule");
- String containerUrl = "jboss.j2ee:service=EJB,jndiName=" + ejbName;
- containerUrl = java.net.URLEncoder.encode(containerUrl);
+ String containerUrl = java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
containerUrl = "../jmx-console/HtmlAdaptor?action=inspectMBean&name=" + containerUrl;
org.jboss.invocation.InvocationStatistics invokeStats= container.getInvokeStats ();
@@ -21,9 +20,12 @@
invokeStats.resetStats ();
}
- String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String myUrl = response.encodeURL(request.getRequestURI()) + "?" + "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ String parameters = "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ parameters = parameters + "&ContainerObjectName=" + java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
+
+ String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true" + parameters;
+ String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true" + parameters;
+ String myUrl = response.encodeURL(request.getRequestURI()) + "?" + parameters;
org.jboss.metadata.BeanMetaData beanMetaData = container.getBeanMetaData();
%>
Modified: branches/Branch_4_0/console/src/resources/webconsole.war/StatelessEjb.jsp
===================================================================
--- branches/Branch_4_0/console/src/resources/webconsole.war/StatelessEjb.jsp 2007-02-11 16:33:21 UTC (rev 60479)
+++ branches/Branch_4_0/console/src/resources/webconsole.war/StatelessEjb.jsp 2007-02-11 16:48:30 UTC (rev 60480)
@@ -1,11 +1,10 @@
<%@ taglib uri="/webconsole" prefix="jb" %>
<jb:mbean id="ejb" intf="org.jboss.management.j2ee.StatelessSessionBeanMBean" />
-<jb:mbean id="container" mbean='<%="jboss.j2ee:service=EJB,jndiName=" + (new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name"))%>' intf="org.jboss.ejb.ContainerMBean" />
+<jb:mbean id="container" mbean='<%=request.getParameter("ContainerObjectName")%>' intf="org.jboss.ejb.ContainerMBean" />
<%
String ejbName = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("name");
String ejbModule = new javax.management.ObjectName(request.getParameter("ObjectName")).getKeyProperty ("EJBModule");
- String containerUrl = "jboss.j2ee:service=EJB,jndiName=" + ejbName;
- containerUrl = java.net.URLEncoder.encode(containerUrl);
+ String containerUrl = java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
containerUrl = "../jmx-console/HtmlAdaptor?action=inspectMBean&name=" + containerUrl;
org.jboss.invocation.InvocationStatistics invokeStats= container.getInvokeStats ();
@@ -21,9 +20,12 @@
invokeStats.resetStats ();
}
- String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
- String myUrl = response.encodeURL(request.getRequestURI()) + "?" + "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ String parameters = "&ObjectName=" + java.net.URLEncoder.encode(request.getParameter("ObjectName"));
+ parameters = parameters + "&ContainerObjectName=" + java.net.URLEncoder.encode(request.getParameter("ContainerObjectName"));
+
+ String resetUrl = response.encodeURL(request.getRequestURI()) + "?doReset=true" + parameters;
+ String resetInvocUrl = response.encodeURL(request.getRequestURI()) + "?doResetInvoc=true" + parameters;
+ String myUrl = response.encodeURL(request.getRequestURI()) + "?" + parameters;
org.jboss.metadata.BeanMetaData beanMetaData = container.getBeanMetaData();
%>
More information about the jboss-cvs-commits
mailing list