Author: violetagg
Date: Thu Aug 13 20:48:50 2015
New Revision: 1695778
URL: http://svn.apache.org/r1695778
Log:
Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58232
Add PojoMethodMapping to the user properties only if there are annotated methods
Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServerContainer.java
Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java?rev=1695778&r1=1695777&r2=1695778&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/pojo/PojoMethodMapping.java
Thu Aug 13 20:48:50 2015
@@ -257,6 +257,11 @@ public class PojoMethodMapping {
}
+ public boolean hasMessageHandlers() {
+ return !onMessage.isEmpty();
+ }
+
+
public Set<MessageHandler> getMessageHandlers(Object pojo,
Map<String,String> pathParameters, Session session,
EndpointConfig config) {
Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServerContainer.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServerContainer.java?rev=1695778&r1=1695777&r2=1695778&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServerContainer.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServerContainer.java
Thu Aug 13 20:48:50 2015
@@ -185,9 +185,11 @@ public class WsServerContainer extends W
// Add method mapping to user properties
PojoMethodMapping methodMapping = new
PojoMethodMapping(sec.getEndpointClass(),
sec.getDecoders(), path);
- sec.getUserProperties().put(
-
org.apache.tomcat.websocket.pojo.Constants.POJO_METHOD_MAPPING_KEY,
- methodMapping);
+ if (methodMapping.getOnClose() != null || methodMapping.getOnOpen() !=
null
+ || methodMapping.getOnError() != null ||
methodMapping.hasMessageHandlers()) {
+
sec.getUserProperties().put(org.apache.tomcat.websocket.pojo.Constants.POJO_METHOD_MAPPING_KEY,
+ methodMapping);
+ }
UriTemplate uriTemplate = new UriTemplate(path);
if (uriTemplate.hasParameters()) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]