You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2010/02/18 11:47:34 UTC

svn commit: r911321 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/connector/Connector.java java/org/apache/catalina/mbeans/MBeanUtils.java webapps/docs/changelog.xml

Author: markt
Date: Thu Feb 18 10:47:34 2010
New Revision: 911321

URL: http://svn.apache.org/viewvc?rev=911321&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48612
Prevent exception on shutdown if the address attribute is specified for a connector

Modified:
    tomcat/tc6.0.x/trunk/STATUS.txt
    tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/Connector.java
    tomcat/tc6.0.x/trunk/java/org/apache/catalina/mbeans/MBeanUtils.java
    tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=911321&r1=911320&r2=911321&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Feb 18 10:47:34 2010
@@ -143,13 +143,6 @@
   +1: markt, kkolinko
   -1: 
 
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48612
-  Prevent exception on shutdown
-  Port of r896193 and r905343
-  http://people.apache.org/~markt/patches/2010-02-01-bug48612.patch
-  +1: markt, kkolinko, mturk
-  -1: 
-  
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48653
   RemoteIpValve : request.secure and request.scheme are not forced to "false"
   and "http" if X-Forwarded-Proto=http

Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/Connector.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/Connector.java?rev=911321&r1=911320&r2=911321&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/Connector.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/Connector.java Thu Feb 18 10:47:34 2010
@@ -956,14 +956,21 @@
 
     protected ObjectName createObjectName(String domain, String type)
             throws MalformedObjectNameException {
-        String encodedAddr = null;
-        if (getProperty("address") != null) {
-            encodedAddr = URLEncoder.encode(getProperty("address").toString());
-        }
-        String addSuffix = (getProperty("address") == null) ? "" : ",address="
-                + encodedAddr;
-        ObjectName _oname = new ObjectName(domain + ":type=" + type + ",port="
-                + getPort() + addSuffix);
+        Object addressObj = getProperty("address");
+
+        StringBuilder sb = new StringBuilder(domain);
+        sb.append(":type=");
+        sb.append(type);
+        sb.append(",port=");
+        sb.append(getPort());
+        if (addressObj != null) {
+            String address = addressObj.toString();
+            if (address.length() > 0) {
+                sb.append(",address=");
+                sb.append(ObjectName.quote(address));
+            }
+        }
+        ObjectName _oname = new ObjectName(sb.toString());
         return _oname;
     }
 

Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/mbeans/MBeanUtils.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/mbeans/MBeanUtils.java?rev=911321&r1=911320&r2=911321&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/mbeans/MBeanUtils.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/mbeans/MBeanUtils.java Thu Feb 18 10:47:34 2010
@@ -742,21 +742,30 @@
 
         ObjectName name = null;
         try {
-            String address = (String)
+            Object addressObj =
                 IntrospectionUtils.getProperty(connector, "address");
             Integer port = (Integer)
                 IntrospectionUtils.getProperty(connector, "port");
+
             StringBuffer sb = new StringBuffer(domain);
             sb.append(":type=Connector");
-            sb.append(",port=" + port);
-            if ((address != null) && (address.length()>0)) {
-                sb.append(",address=" + address);
+            sb.append(",port=");
+            sb.append(port);
+            if (addressObj != null) {
+                String address = addressObj.toString();
+                if (address.length() > 0) {
+                    sb.append(",address=");
+                    sb.append(ObjectName.quote(address));
+                }
             }
             name = new ObjectName(sb.toString());
             return (name);
         } catch (Exception e) {
-            throw new MalformedObjectNameException
-                ("Cannot create object name for " + connector+e);
+            MalformedObjectNameException mone =
+                new MalformedObjectNameException
+                ("Cannot create object name for " + connector);
+            mone.initCause(e);
+            throw mone;
         }
     }
 

Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=911321&r1=911320&r2=911321&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Thu Feb 18 10:47:34 2010
@@ -38,6 +38,10 @@
   <subsection name="Catalina">
     <changelog>
       <fix>
+        <bug>48612</bug>: Prevent exception on shutdown if the address attribute
+        is specified for a connector. (markt)
+      </fix>
+      <fix>
         <bug>48613</bug>: Further fixes to ensure APRLifecycleListener is only
         used if defined in server.xml. (fhanik)
       </fix>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org