You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2016/01/07 16:06:36 UTC

svn commit: r1723568 - in /uima/sandbox/uima-ducc/trunk: src/main/assembly/ uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/ uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/ uima-ducc-agent/src/main/java/org/apache/uima/ducc/ag...

Author: cwiklik
Date: Thu Jan  7 15:06:35 2016
New Revision: 1723568

URL: http://svn.apache.org/viewvc?rev=1723568&view=rev
Log:
UIMA-4730 Upgraded DUCC to use UIMA-AS-SNAPSHOT 2.8.1, new Jetty, Camel and fix code to compile the new dependencies

Modified:
    uima/sandbox/uima-ducc/trunk/src/main/assembly/bin.xml
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/AgentConfiguration.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultNodeMetricsProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/NodeMetricsProcessor.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/uima/DuccJobProcessFC.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/pom.xml
    uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/config/OrchestratorConfiguration.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-parent/pom.xml
    uima/sandbox/uima-ducc/trunk/uima-ducc-sm/pom.xml
    uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/config/ServiceManagerConfiguration.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/CasHelper.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/FlowController.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/helper/BrokerHelper.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebServer.java

Modified: uima/sandbox/uima-ducc/trunk/src/main/assembly/bin.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/src/main/assembly/bin.xml?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/src/main/assembly/bin.xml (original)
+++ uima/sandbox/uima-ducc/trunk/src/main/assembly/bin.xml Thu Jan  7 15:06:35 2016
@@ -231,6 +231,7 @@ under the License.
         <include>org.apache.camel:camel-http</include>
         <include>org.apache.camel:camel-http4</include>
         <include>org.apache.camel:camel-jetty</include>
+        <include>org.apache.camel:camel-jetty-common</include>
         <include>org.apache.camel:camel-jms</include>
         <include>org.apache.camel:camel-mina</include>
         <include>org.apache.camel:camel-spring</include>

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/NodeAgent.java Thu Jan  7 15:06:35 2016
@@ -204,6 +204,9 @@ public class NodeAgent extends AbstractD
     // fetch Page Size from the OS and cache it
     pageSize = getOSPageSize();
     
+    // begin publishing node metrics
+    factory.startNodeMetrics(this);
+    
     numProcessors = getNodeProcessors();
     
     logger.info("NodeAgent", null, "OS Page Size:" + pageSize);

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/AgentConfiguration.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/AgentConfiguration.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/AgentConfiguration.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/config/AgentConfiguration.java Thu Jan  7 15:06:35 2016
@@ -21,6 +21,8 @@ package org.apache.uima.ducc.agent.confi
 import java.util.Map;
 import java.util.Map.Entry;
 
+import javax.annotation.PostConstruct;
+
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.Predicate;
@@ -67,6 +69,9 @@ import com.thoughtworks.xstream.XStream;
 public class AgentConfiguration {
   DuccLogger logger = new DuccLogger(this.getClass(), "Agent");
 
+  NodeAgent agent = null;
+  NodeMetricsProcessor nodeMetricsProcessor;
+
   // fetch the name of an endpoint where the JM expects incoming requests
   // @Value("#{ systemProperties['IP'] }")
   public String ip = System.getenv("IP");
@@ -137,7 +142,7 @@ public class AgentConfiguration {
   private RouteBuilder routeBuilderForNodeMetricsPost(final NodeAgent agent,
           final String targetEndpointToReceiveNodeMetricsUpdate, final int nodeMetricsPublishRate)
           throws Exception {
-    final Processor nmp = nodeMetricsProcessor(agent);
+    final Processor nmp = nodeMetricsProcessor();
     final Predicate blastFilter = new DuccBlastGuardPredicate(agent.getLogger());
     final Processor cp = new ConfirmProcessor();
     return new RouteBuilder() {
@@ -396,7 +401,8 @@ public class AgentConfiguration {
       camelContext = common.camelContext();
       camelContext.disableJMX();
 
-      NodeAgent agent = new NodeAgent(nodeIdentity(), launcher(), camelContext, this);
+//      NodeAgent agent = new NodeAgent(nodeIdentity(), launcher(), camelContext, this);
+      agent = new NodeAgent(nodeIdentity(), launcher(), camelContext, this);
       // optionally configures Camel Context for JMS. Checks the 'agentRequestEndpoint' to
       // to determine type of transport. If the the endpoint starts with "activemq:", a
       // special ActiveMQ component will be activated to enable JMS transport
@@ -424,10 +430,11 @@ public class AgentConfiguration {
     	              common.nodeInventoryEndpoint, Integer.parseInt(common.nodeInventoryPublishRate)));
       
       camelContext.addRoutes(inventoryRouteBuilder);
+/*
       metricsRouteBuilder = this.routeBuilderForNodeMetricsPost(agent, common.nodeMetricsEndpoint,
               Integer.parseInt(common.nodeMetricsPublishRate));
       camelContext.addRoutes(metricsRouteBuilder);
-      
+*/      
       
       
       logger.info("nodeAgent", null, "------- Agent Initialized - Identity Name:"
@@ -441,13 +448,30 @@ public class AgentConfiguration {
     return null;
   }
 
+  public void startNodeMetrics(NodeAgent agent) throws Exception {
+	  
+  	  nodeMetricsProcessor.setAgent(agent);
+	  metricsRouteBuilder = this.routeBuilderForNodeMetricsPost(agent, common.nodeMetricsEndpoint,
+              Integer.parseInt(common.nodeMetricsPublishRate));
+      camelContext.addRoutes(metricsRouteBuilder);
+  
+  }
+  
   @Bean
-  public NodeMetricsProcessor nodeMetricsProcessor(NodeAgent agent) throws Exception {
+  @PostConstruct
+//  public NodeMetricsProcessor nodeMetricsProcessor(NodeAgent agent) throws Exception {
+  public NodeMetricsProcessor nodeMetricsProcessor() throws Exception {
     if (Utils.isLinux()) {
-      return new LinuxNodeMetricsProcessor(agent, "/proc/meminfo", "/proc/loadavg");
+//      return new LinuxNodeMetricsProcessor(agent, "/proc/meminfo", "/proc/loadavg");
+   	  nodeMetricsProcessor = new LinuxNodeMetricsProcessor();
+	  ((LinuxNodeMetricsProcessor)nodeMetricsProcessor).initMemInfo("/proc/meminfo");
+	  ((LinuxNodeMetricsProcessor)nodeMetricsProcessor).initLoadAvg("/proc/loadavg");
+  	  //agent, "/proc/meminfo", "/proc/loadavg");
     } else {
-      return new DefaultNodeMetricsProcessor(agent);
+//        return new DefaultNodeMetricsProcessor(agent);
+    	nodeMetricsProcessor = new DefaultNodeMetricsProcessor();
     }
+    return nodeMetricsProcessor;
   }
 
   public ProcessMetricsProcessor processMetricsProcessor(NodeAgent agent, IDuccProcess process,

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultNodeMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultNodeMetricsProcessor.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultNodeMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/DefaultNodeMetricsProcessor.java Thu Jan  7 15:06:35 2016
@@ -42,15 +42,20 @@ import org.apache.uima.ducc.transport.ev
 
 public class DefaultNodeMetricsProcessor extends BaseProcessor implements
 		NodeMetricsProcessor {
-	private final NodeAgent agent;
+	private  NodeAgent agent;
 	
 	private ExecutorService pool = Executors.newFixedThreadPool(1);
 	
 	DuccLogger logger = DuccLogger.getLogger(this.getClass(), Agent.COMPONENT_NAME);
 	
+	/*
 	public DefaultNodeMetricsProcessor(final NodeAgent agent) throws Exception {
 		this.agent = agent;
 	}
+	*/
+	public void setAgent(NodeAgent agent ) {
+		this.agent = agent;
+	}
 	public void process(Exchange exchange) throws Exception {
 	  String methodName = "process";
 	  try {

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxNodeMetricsProcessor.java Thu Jan  7 15:06:35 2016
@@ -24,7 +24,6 @@ import java.util.TreeMap;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.Future;
-import java.util.concurrent.atomic.AtomicLong;
 
 import org.apache.camel.Exchange;
 import org.apache.uima.ducc.agent.Agent;
@@ -54,14 +53,15 @@ public class LinuxNodeMetricsProcessor e
 	private RandomAccessFile loadAvgFile;
 	//private Node node;
 	private int swapThreshold = 0;
-	public LinuxNodeMetricsProcessor(NodeAgent agent, String memInfoFilePath,
-			String loadAvgFilePath) throws FileNotFoundException {
+//	public LinuxNodeMetricsProcessor(NodeAgent agent, String memInfoFilePath,
+//			String loadAvgFilePath) throws FileNotFoundException {
+	public LinuxNodeMetricsProcessor() {
 		super();
-		this.agent = agent;
+//		this.agent = agent;
 		pool = Executors.newCachedThreadPool();
 		// open files and keep them open until stop() is called
-		memInfoFile = new RandomAccessFile(memInfoFilePath, "r");
-		loadAvgFile = new RandomAccessFile(loadAvgFilePath, "r");
+//		memInfoFile = new RandomAccessFile(memInfoFilePath, "r");
+//		loadAvgFile = new RandomAccessFile(loadAvgFilePath, "r");
 		//node = new DuccNode(agent.getIdentity(), null);
 		if ( System.getProperty("ducc.node.min.swap.threshold") != null ) {
 	    try {
@@ -71,6 +71,16 @@ public class LinuxNodeMetricsProcessor e
 	    }
 		}
 	}
+	public void setAgent(NodeAgent agent) {
+		this.agent = agent;
+	}
+	public void initMemInfo(String memInfoFilePath) throws Exception {
+		this.memInfoFile = new RandomAccessFile(memInfoFilePath, "r");
+		
+	}
+    public void initLoadAvg(String loadAvgFilePath) throws Exception {
+    	this.loadAvgFile = new RandomAccessFile(loadAvgFilePath, "r");
+    }
 
 	public void stop() {
 		try {

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/NodeMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/NodeMetricsProcessor.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/NodeMetricsProcessor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/NodeMetricsProcessor.java Thu Jan  7 15:06:35 2016
@@ -19,7 +19,8 @@
 package org.apache.uima.ducc.agent.processors;
 
 import org.apache.camel.Processor;
+import org.apache.uima.ducc.agent.NodeAgent;
 
 public interface NodeMetricsProcessor extends Processor {
-
+	public void setAgent(NodeAgent agent);
 }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/uima/DuccJobProcessFC.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/uima/DuccJobProcessFC.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/uima/DuccJobProcessFC.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/uima/DuccJobProcessFC.java Thu Jan  7 15:06:35 2016
@@ -28,6 +28,7 @@ import org.apache.uima.analysis_engine.A
 import org.apache.uima.analysis_engine.metadata.AnalysisEngineMetaData;
 import org.apache.uima.analysis_engine.metadata.FixedFlow;
 import org.apache.uima.analysis_engine.metadata.FlowConstraints;
+import org.apache.uima.cas.FeatureStructure;
 import org.apache.uima.ducc.Workitem;
 import org.apache.uima.flow.FinalStep;
 import org.apache.uima.flow.Flow;
@@ -37,7 +38,6 @@ import org.apache.uima.flow.JCasFlow_Imp
 import org.apache.uima.flow.SimpleStep;
 import org.apache.uima.flow.Step;
 import org.apache.uima.jcas.JCas;
-import org.apache.uima.jcas.cas.TOP;
 import org.apache.uima.resource.ResourceInitializationException;
 import org.apache.uima.resource.metadata.OperationalProperties;
 
@@ -135,7 +135,8 @@ public class DuccJobProcessFC extends JC
         // Parent CAS has been to the initial CM, so see if a special flow has been requested.
         // Get an iterator only if the Workitem type is in the CAS's typesystem 
         // (avoids JCAS_TYPE_NOT_IN_CAS error)
-        Iterator<TOP> fsIter = null;
+//        Iterator<TOP> fsIter = null;
+        Iterator<FeatureStructure> fsIter = null;
         if (this.getJCas().getTypeSystem().getType(Workitem.class.getName()) != null) {
           fsIter = this.getJCas().getJFSIndexRepository().getAllIndexedFS(Workitem.type);
         }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/pom.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/pom.xml?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/pom.xml (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/pom.xml Thu Jan  7 15:06:35 2016
@@ -71,6 +71,15 @@
             <artifactId>camel-jetty</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>org.apache.camel</groupId>
+            <artifactId>camel-jetty-common</artifactId>
+        </dependency>
+        
+        <dependency>
+			  <groupId>org.springframework</groupId>
+			  <artifactId>spring-core</artifactId>
+		</dependency>
   </dependencies>
   
 </project>

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/config/OrchestratorConfiguration.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/config/OrchestratorConfiguration.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/config/OrchestratorConfiguration.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/config/OrchestratorConfiguration.java Thu Jan  7 15:06:35 2016
@@ -24,7 +24,7 @@ import org.apache.camel.Exchange;
 import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.jetty.JettyHttpComponent;
+import org.apache.camel.component.jetty8.JettyHttpComponent8;
 import org.apache.uima.ducc.common.config.CommonConfiguration;
 import org.apache.uima.ducc.common.config.DuccBlastGuardPredicate;
 import org.apache.uima.ducc.common.exception.DuccRuntimeException;
@@ -123,7 +123,7 @@ public class OrchestratorConfiguration {
     return new RouteBuilder() {
           public void configure() {
             
-            JettyHttpComponent jettyComponent = new JettyHttpComponent();
+            JettyHttpComponent8 jettyComponent = new JettyHttpComponent8();
             
 			//ExchangeMonitor xmError = new ExchangeMonitor(LifeStatus.Error, ExchangeType.Receive);
 			

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-parent/pom.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-parent/pom.xml?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-parent/pom.xml (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-parent/pom.xml Thu Jan  7 15:06:35 2016
@@ -129,11 +129,12 @@
 		<jiraVersion>12328879</jiraVersion>
 		<maven.build.timestamp.format>MM-dd-yyyy HH:mm</maven.build.timestamp.format>
 		<ducc.version>${project.version}</ducc.version>
-		<org.springframework.version>3.0.7.RELEASE</org.springframework.version>
+		<org.springframework.version>3.2.11.RELEASE</org.springframework.version>
 		<org.apache.activemq.version>5.7.0</org.apache.activemq.version>
-		<org.apache.camel.version>2.10.1</org.apache.camel.version>
+		<org.apache.camel.version>2.15.3</org.apache.camel.version>
 		<!-- org.apache.uima.version>2.6.0</org.apache.uima.version Same as uima-as-->
-		<org.apache.uima.as.version>2.6.0</org.apache.uima.as.version>
+		<!-- org.apache.uima.as.version>2.6.0</org.apache.uima.as.version-->
+		<org.apache.uima.as.version>2.8.1-SNAPSHOT</org.apache.uima.as.version>
 		<com.google.guava.version>14.0.1</com.google.guava.version>        <!-- updated from r09 for cassandra -->
 		<commons.cli.version>1.2</commons.cli.version>
 		<joda.time.version>2.1</joda.time.version>
@@ -152,7 +153,9 @@
 		<servlet.api.version>2.5</servlet.api.version>
 		<commons.management.version>1.0</commons.management.version>
 		<commons.pool.version>1.5.4</commons.pool.version>
-		<geronimo.servlet-spec.version>1.2</geronimo.servlet-spec.version>
+		<geronimo.servlet-spec.version>1.0</geronimo.servlet-spec.version>
+
+		<!--geronimo.servlet-spec.version>1.2</geronimo.servlet-spec.version-->
 		<xpp3.version>1.1.4c</xpp3.version>
 		<xstream.version>1.3.1</xstream.version>   <!-- 1.4.3 requires xmlpull ?? -->
 		<mina.core.version>1.1.7</mina.core.version>
@@ -162,7 +165,8 @@
 		<libpam.version>1.7</libpam.version>
 		<jna.version>4.0.0</jna.version>
 		<datatables.version>1.9.1</datatables.version>
-		<jetty.version>7.4.4.v20110707</jetty.version>
+		<jetty.version>8.1.16.v20140903</jetty.version>
+		<!--jetty.version>7.4.4.v20110707</jetty.version-->
 		<orbit-org-apache-jasper.version>2.1.0.v201110031002</orbit-org-apache-jasper.version>
 		<servlet-api.version>2.5</servlet-api.version>
 
@@ -543,6 +547,12 @@ ${uimaDUCCNoticeText}
 
 			<dependency>
 				<groupId>org.apache.camel</groupId>
+				<artifactId>camel-jetty-common</artifactId>
+				<version>${org.apache.camel.version}</version>
+			</dependency>
+
+			<dependency>
+				<groupId>org.apache.camel</groupId>
 				<artifactId>camel-test</artifactId>
 				<version>${org.apache.camel.version}</version>
 			</dependency>
@@ -581,7 +591,8 @@ ${uimaDUCCNoticeText}
 
 			<dependency>
 				<groupId>org.apache.geronimo.specs</groupId>
-				<artifactId>geronimo-servlet_2.5_spec</artifactId>
+				<artifactId>geronimo-servlet_3.0_spec</artifactId>
+				<!--artifactId>geronimo-servlet_2.5_spec</artifactId-->
 				<version>${geronimo.servlet-spec.version}</version>
 			</dependency>
 
@@ -667,6 +678,12 @@ ${uimaDUCCNoticeText}
 			<artifactId>camel-http4</artifactId>
 			<scope>runtime</scope>
 		</dependency>
+			<dependency>
+				<groupId>org.apache.camel</groupId>
+			<artifactId>camel-jetty-common</artifactId>
+			<scope>runtime</scope>
+		</dependency>
+
 
 		<dependency>
 			<groupId>org.apache.camel</groupId>
@@ -755,6 +772,7 @@ ${uimaDUCCNoticeText}
 			</configuration>
 		  </plugin -->
 
+
 			<plugin>
 				<artifactId>maven-compiler-plugin</artifactId>
 				<configuration>
@@ -818,6 +836,28 @@ ${uimaDUCCNoticeText}
 			<build>
 				<plugins>
 
+
+
+		  <!-- Get SVN revision number and include in the manifest.
+		       Disable the check for local changes and the svn update -->
+		  <!--plugin>
+			<groupId>org.codehaus.mojo</groupId>
+			<artifactId>buildnumber-maven-plugin</artifactId>
+			<version>1.3</version>
+			<executions>
+			  <execution>
+				<phase>validate</phase>
+				<goals>
+				  <goal>create</goal>
+				</goals>
+			  </execution>
+			</executions>
+			<configuration>
+			  <doCheck>false</doCheck>
+			  <doUpdate>false</doUpdate>
+			</configuration>
+		  </plugin-->
+
 					<!-- run Release Audit Tool (RAT) on src and bin distrs -->
 					<plugin>
 						<groupId>org.apache.rat</groupId>

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-sm/pom.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-sm/pom.xml?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-sm/pom.xml (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-sm/pom.xml Thu Jan  7 15:06:35 2016
@@ -66,5 +66,9 @@
             <artifactId>camel-jetty</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>org.apache.camel</groupId>
+            <artifactId>camel-jetty-common</artifactId>
+        </dependency>
   </dependencies>  
 </project>

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/config/ServiceManagerConfiguration.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/config/ServiceManagerConfiguration.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/config/ServiceManagerConfiguration.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/config/ServiceManagerConfiguration.java Thu Jan  7 15:06:35 2016
@@ -22,7 +22,7 @@ import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.jetty.JettyHttpComponent;
+import org.apache.camel.component.jetty8.JettyHttpComponent8;
 import org.apache.uima.ducc.common.config.CommonConfiguration;
 import org.apache.uima.ducc.common.exception.DuccRuntimeException;
 import org.apache.uima.ducc.common.utils.DuccLogger;
@@ -116,7 +116,7 @@ public class ServiceManagerConfiguration
         return new RouteBuilder() {
             public void configure() {
             
-                JettyHttpComponent jettyComponent = new JettyHttpComponent();
+                JettyHttpComponent8 jettyComponent = new JettyHttpComponent8();
                 String port = System.getProperty("ducc.sm.http.port");
                 //ExchangeMonitor xmError = new ExchangeMonitor(LifeStatus.Error, ExchangeType.Receive);
 			

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/CasHelper.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/CasHelper.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/CasHelper.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/CasHelper.java Thu Jan  7 15:06:35 2016
@@ -21,7 +21,7 @@ package org.apache.uima.ducc;
 import java.util.Iterator;
 
 import org.apache.uima.cas.CAS;
-import org.apache.uima.jcas.cas.TOP;
+import org.apache.uima.cas.FeatureStructure;
 
 public class CasHelper {
 
@@ -31,7 +31,8 @@ public class CasHelper {
 			retVal = cas.getDocumentText();
 		}
 		try {
-			Iterator<TOP> fsIter = null;
+//			Iterator<TOP> fsIter = null;
+			Iterator<FeatureStructure> fsIter = null;
 			Workitem wi = null;
 			if (cas.getJCas().getTypeSystem().getType(Workitem.class.getName()) != null) {
 				fsIter = cas.getJCas().getJFSIndexRepository().getAllIndexedFS(Workitem.type);

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/FlowController.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/FlowController.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/FlowController.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-user/src/main/java/org/apache/uima/ducc/FlowController.java Thu Jan  7 15:06:35 2016
@@ -28,6 +28,7 @@ import org.apache.uima.analysis_engine.A
 import org.apache.uima.analysis_engine.metadata.AnalysisEngineMetaData;
 import org.apache.uima.analysis_engine.metadata.FixedFlow;
 import org.apache.uima.analysis_engine.metadata.FlowConstraints;
+import org.apache.uima.cas.FeatureStructure;
 import org.apache.uima.ducc.Workitem;
 import org.apache.uima.flow.FinalStep;
 import org.apache.uima.flow.Flow;
@@ -37,7 +38,6 @@ import org.apache.uima.flow.JCasFlow_Imp
 import org.apache.uima.flow.SimpleStep;
 import org.apache.uima.flow.Step;
 import org.apache.uima.jcas.JCas;
-import org.apache.uima.jcas.cas.TOP;
 import org.apache.uima.resource.ResourceInitializationException;
 import org.apache.uima.resource.metadata.OperationalProperties;
 
@@ -134,7 +134,8 @@ public class FlowController extends JCas
         // Parent CAS has been to the initial CM, so see if a special flow has been requested.
         // Get an iterator only if the Workitem type is in the CAS's typesystem 
         // (avoids JCAS_TYPE_NOT_IN_CAS error)
-        Iterator<TOP> fsIter = null;
+//        Iterator<TOP> fsIter = null;
+        Iterator<FeatureStructure> fsIter = null;
         if (this.getJCas().getTypeSystem().getType(Workitem.class.getName()) != null) {
           fsIter = this.getJCas().getJFSIndexRepository().getAllIndexedFS(Workitem.type);
         }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/helper/BrokerHelper.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/helper/BrokerHelper.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/helper/BrokerHelper.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/helper/BrokerHelper.java Thu Jan  7 15:06:35 2016
@@ -26,6 +26,9 @@ import java.util.Set;
 import java.util.TreeMap;
 import java.util.TreeSet;
 
+import javax.jms.Connection;
+import javax.jms.ConnectionFactory;
+import javax.jms.ConnectionMetaData;
 import javax.management.Attribute;
 import javax.management.AttributeList;
 import javax.management.MBeanServerConnection;
@@ -35,6 +38,7 @@ import javax.management.remote.JMXConnec
 import javax.management.remote.JMXConnectorFactory;
 import javax.management.remote.JMXServiceURL;
 
+import org.apache.activemq.ActiveMQConnectionFactory;
 import org.apache.uima.ducc.common.utils.DuccLogger;
 import org.apache.uima.ducc.common.utils.DuccLoggerComponents;
 import org.apache.uima.ducc.common.utils.DuccPropertiesResolver;
@@ -65,7 +69,8 @@ public class BrokerHelper {
 
 	private OperatingSystemMXBean remoteOperatingSystem;
 	private ThreadMXBean remoteThread;
-	
+	// 
+	private boolean useNewJmxQueryString = false;
 	private BrokerHelper() {
 		init();
 	}
@@ -87,6 +92,26 @@ public class BrokerHelper {
 			url = new JMXServiceURL(getJmxUrl());
 			jmxc = JMXConnectorFactory.connect(url, null);
 			mbsc = jmxc.getMBeanServerConnection();
+			key = "ducc.broker.protocol";
+			value = duccPropertiesResolver.getCachedProperty(key);
+			String brokerUrl = value.trim();
+			key = "ducc.broker.hostname";
+			value = duccPropertiesResolver.getCachedProperty(key);
+			brokerUrl += "://"+value;
+			key = "ducc.broker.port";
+			value = duccPropertiesResolver.getCachedProperty(key);
+			brokerUrl += ":"+value;
+			
+			ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(brokerUrl);
+			Connection connection = connectionFactory.createConnection(); 
+	        connection.start(); 
+	        ConnectionMetaData connectionMetaData = connection.getMetaData();
+	        int majorVersion = connectionMetaData.getProviderMajorVersion();
+	        int minorVersion = connectionMetaData.getProviderMinorVersion();
+	        duccLogger.info(location, jobid, "Broker Version:"+majorVersion+"."+minorVersion);
+	        if ( majorVersion > 5 || ( majorVersion == 5 && minorVersion >= 8 )) {
+	        	useNewJmxQueryString = true;
+	        }
 			remoteOperatingSystem = 
 	                ManagementFactory.newPlatformMXBeanProxy(
 	                    mbsc,
@@ -273,7 +298,7 @@ public class BrokerHelper {
 	
 	private boolean isBrokerInfo(ObjectName objectName) {
 		boolean retVal = false;
-		String key = "Type";
+		String key = "type";
 	    String value = objectName.getKeyProperty(key);
 	    if(value != null) {
 	    	if(value.startsWith("Broker")) {

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebServer.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebServer.java?rev=1723568&r1=1723567&r2=1723568&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebServer.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebServer.java Thu Jan  7 15:06:35 2016
@@ -160,10 +160,12 @@ public class DuccWebServer {
         	if(ipaddress != null) {
             	ssl_connector.setHost(ipaddress);
             }
-        	SslContextFactory cf = ssl_connector.getSslContextFactory();
+        	org.eclipse.jetty.util.ssl.SslContextFactory cf = ssl_connector.getSslContextFactory();
+        	//SslContextFactory cf = ssl_connector.getSslContextFactory();
         	String keystore = DuccWebServerHelper.getDuccWebKeyStore();
         	logger.info(methodName, null, "keystore:"+keystore);
-        	cf.setKeyStore(keystore);
+        	cf.setKeyStorePath(keystore);
+        //	cf.setKeyStore(keystore);
         	cf.setKeyStorePassword(portSslPw);
         	server.setConnectors(new Connector[]{ connector0, ssl_connector });
         }