Author: rajikak
Date: Mon Sep 20 09:02:58 2010
New Revision: 998834
URL: http://svn.apache.org/viewvc?rev=998834&view=rev
Log:
Fixed SYNAPSE-617.
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/FailoverEndpointFactory.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/FailoverEndpointFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/FailoverEndpointFactory.java?rev=998834&r1=998833&r2=998834&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/FailoverEndpointFactory.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/FailoverEndpointFactory.java
Mon Sep 20 09:02:58 2010
@@ -21,10 +21,12 @@ package org.apache.synapse.config.xml.en
import org.apache.axiom.om.OMElement;
import org.apache.synapse.SynapseConstants;
+import org.apache.synapse.SynapseException;
import org.apache.synapse.endpoints.Endpoint;
import org.apache.synapse.endpoints.FailoverEndpoint;
import javax.xml.namespace.QName;
+import java.util.List;
/**
* Creates {...@link FailoverEndpoint} using a XML configuration.
@@ -57,6 +59,16 @@ public class FailoverEndpointFactory ext
if (name != null) {
failoverEndpoint.setName(name);
}
+
+ List<Endpoint> childEndpoints = getEndpoints(failoverElement,
failoverEndpoint);
+ if(childEndpoints == null || childEndpoints.size() == 0){
+ String msg = "Invalid Synapse configuration.\n"
+ + "A FailOver must have child elements, but the
FailOver "
+ + "'" + failoverEndpoint.getName() + "' does not have
any child elements.";
+ log.error(msg);
+ throw new SynapseException(msg);
+ }
+
// set endpoints and return
failoverEndpoint.setChildren(getEndpoints(failoverElement,
failoverEndpoint));
// process the parameters