MessageService: fix null or empty string selector
JMSSelector is removed, but no selector can still pass
diff --git a/core/src/main/java/flex/messaging/services/MessageService.java b/core/src/main/java/flex/messaging/services/MessageService.java
index c15af1d..0531270 100644
--- a/core/src/main/java/flex/messaging/services/MessageService.java
+++ b/core/src/main/java/flex/messaging/services/MessageService.java
@@ -1037,18 +1037,25 @@
* @param msg A test message.
*/
private void testSelector(String selectorExpression, Message msg) {
+ if (selectorExpression != null && !selectorExpression.equals(""))
+ {
+ ServiceException se = new ServiceException();
+ se.setMessage(BAD_SELECTOR, new Object[]{selectorExpression});
+ se.setRootCause(new RuntimeException("JMSSelector removed"));
+ throw se;
+ }
/*try
{
JMSSelector selector = new JMSSelector(selectorExpression);
selector.match(msg);
}
catch (Exception e)
- {*/
- ServiceException se = new ServiceException();
- se.setMessage(BAD_SELECTOR, new Object[]{selectorExpression});
- se.setRootCause(new RuntimeException("JMSSelector removed"));
- throw se;
- //}
+ {
+ ServiceException se = new ServiceException();
+ se.setMessage(BAD_SELECTOR, new Object[]{selectorExpression});
+ se.setRootCause(e);
+ throw se;
+ }*/
}
private int processMaxFrequencyHeader(CommandMessage command) {