When decoding of path parameter failed, make sure to throw DecodeException instead of throwing ArrayIndexOutOfBoundsException.

git-svn-id: https://svn.apache.org/repos/asf/tomcat/tc8.0.x/trunk@1832587 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java b/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
index 9fb1e15..c9b5828 100644
--- a/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
+++ b/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
@@ -645,6 +645,7 @@
                                     "pojoMethodMapping.decodePathParamFail",
                                     valueString, pathParam.getType()), e);
                     params = new Object[] { de };
+                    break;
                 }
                 params[entry.getKey().intValue()] = value;
             }
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 50dddae..5828d0d 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -159,6 +159,15 @@
       </fix>
     </changelog>
   </subsection>
+  <subsection name="WebSocket">
+    <changelog>
+      <fix>
+        When decoding of path parameter failed, make sure to throw
+        <code>DecodeException</code> instead of throwing
+        <code>ArrayIndexOutOfBoundsException</code>. (kfujino)
+      </fix>
+    </changelog>
+  </subsection>
   <subsection name="Web applications">
     <changlog>
       <fix>