[jboss-cvs] JBossAS SVN: r61306 - in trunk: varia/src/resources/jmx/html and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Mar 13 15:38:28 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-03-13 15:38:28 -0400 (Tue, 13 Mar 2007)
New Revision: 61306
Modified:
trunk/j2se/src/main/org/jboss/mx/util/ObjectNameConverter.java
trunk/varia/src/resources/jmx/html/inspectMBean.jsp
Log:
JBAS-4183, handle single and double quotes in object names
Modified: trunk/j2se/src/main/org/jboss/mx/util/ObjectNameConverter.java
===================================================================
--- trunk/j2se/src/main/org/jboss/mx/util/ObjectNameConverter.java 2007-03-13 19:35:39 UTC (rev 61305)
+++ trunk/j2se/src/main/org/jboss/mx/util/ObjectNameConverter.java 2007-03-13 19:38:28 UTC (rev 61306)
@@ -39,6 +39,8 @@
* ':' => '%3a' <br>
* '?' => '%3f' <br>
* '=' => '%3d' <br>
+ * '\'' => '%27' <br>
+ * '\"' => '%22' <br>
* <br>Thanx to William Hoyle for mention this
* <br><b>Attention:</b>When you have a comma in one of your property
* value then you have to use a <i>Hashtable</i> to provide the properties
@@ -207,6 +209,20 @@
( ( lIndex + 1 ) < lReturn.length() ? lReturn.substring( lIndex + 1 ) : "" );
lIndex = lReturn.indexOf( "," );
}
+ lIndex = lReturn.indexOf( "'" );
+ while( lIndex >= 0 ) {
+ lReturn = ( lIndex > 0 ? lReturn.substring( 0, lIndex ) : "" ) +
+ "%27" +
+ ( ( lIndex + 1 ) < lReturn.length() ? lReturn.substring( lIndex + 1 ) : "" );
+ lIndex = lReturn.indexOf( "'" );
+ }
+ lIndex = lReturn.indexOf( "\"" );
+ while( lIndex >= 0 ) {
+ lReturn = ( lIndex > 0 ? lReturn.substring( 0, lIndex ) : "" ) +
+ "%22" +
+ ( ( lIndex + 1 ) < lReturn.length() ? lReturn.substring( lIndex + 1 ) : "" );
+ lIndex = lReturn.indexOf( "\"" );
+ }
} else {
int lIndex = lReturn.indexOf( "%2a" );
while( lIndex >= 0 ) {
@@ -250,6 +266,20 @@
( ( lIndex + 3 ) < lReturn.length() ? lReturn.substring( lIndex + 3 ) : "" );
lIndex = lReturn.indexOf( "%25" );
}
+ lIndex = lReturn.indexOf( "%27" );
+ while( lIndex >= 0 ) {
+ lReturn = ( lIndex > 0 ? lReturn.substring( 0, lIndex ) : "" ) +
+ "'" +
+ ( ( lIndex + 3 ) < lReturn.length() ? lReturn.substring( lIndex + 3 ) : "" );
+ lIndex = lReturn.indexOf( "%27" );
+ }
+ lIndex = lReturn.indexOf( "%22" );
+ while( lIndex >= 0 ) {
+ lReturn = ( lIndex > 0 ? lReturn.substring( 0, lIndex ) : "" ) +
+ "\"" +
+ ( ( lIndex + 3 ) < lReturn.length() ? lReturn.substring( lIndex + 3 ) : "" );
+ lIndex = lReturn.indexOf( "%22" );
+ }
}
return lReturn;
}
Modified: trunk/varia/src/resources/jmx/html/inspectMBean.jsp
===================================================================
--- trunk/varia/src/resources/jmx/html/inspectMBean.jsp 2007-03-13 19:35:39 UTC (rev 61305)
+++ trunk/varia/src/resources/jmx/html/inspectMBean.jsp 2007-03-13 19:38:28 UTC (rev 61306)
@@ -58,6 +58,12 @@
}
return s;
}
+ public String quoteName(String name)
+ {
+ String sname = name.replace("\"", """);
+ sname = name.replace("\'", "'");
+ return sname;
+ }
%>
@@ -78,7 +84,7 @@
<%
ObjectName objectName = mbeanData.getObjectName();
String objectNameString = mbeanData.getName();
-
+ String quotedObjectNameString = quoteName(mbeanData.getName());
MBeanInfo mbeanInfo = mbeanData.getMetaData();
MBeanAttributeInfo[] attributeInfo = mbeanInfo.getAttributes();
@@ -144,7 +150,7 @@
<form method="post" action="HtmlAdaptor">
<input type="hidden" name="action" value="updateAttributes" />
- <input type="hidden" name="name" value="<%= objectNameString %>" />
+ <input type="hidden" name="name" value='<%= quotedObjectNameString %>'>
<table class="AttributesClass" cellspacing="0" cellpadding="5">
<tr class="AttributesHeader">
<th width="25%">
@@ -332,7 +338,7 @@
<td class='sep'>
<form method="post" action="HtmlAdaptor">
<input type="hidden" name="action" value="invokeOp" />
- <input type="hidden" name="name" value="<%= objectNameString %>" />
+ <input type="hidden" name="name" value='<%= quotedObjectNameString %>'>
<input type="hidden" name="methodIndex" value="<%= methodIndex %>" />
<%
if( sig.length > 0 )
More information about the jboss-cvs-commits
mailing list