Required code level changes from AXIS2-5374 and a test case fix.   
diff --git a/modules/base/src/main/java/org/apache/axis2/transport/base/BaseUtils.java b/modules/base/src/main/java/org/apache/axis2/transport/base/BaseUtils.java
index bcdefec..cdcaab0 100644
--- a/modules/base/src/main/java/org/apache/axis2/transport/base/BaseUtils.java
+++ b/modules/base/src/main/java/org/apache/axis2/transport/base/BaseUtils.java
@@ -34,6 +34,7 @@
 import org.apache.axis2.format.PlainTextFormatter;
 import org.apache.axis2.transport.MessageFormatter;
 import org.apache.axis2.transport.TransportUtils;
+import org.apache.axis2.util.MessageProcessorSelector;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
@@ -156,7 +157,7 @@
         
         // ... otherwise, let Axis choose the right message formatter:
         try {
-            return TransportUtils.getMessageFormatter(msgContext);
+            return MessageProcessorSelector.getMessageFormatter(msgContext);
         } catch (AxisFault axisFault) {
             throw new BaseTransportException("Unable to get the message formatter to use");
         }
diff --git a/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSSender.java b/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSSender.java
index 7e3cee7..8b69e65 100644
--- a/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSSender.java
+++ b/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSSender.java
@@ -19,12 +19,12 @@
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMText;
 import org.apache.axiom.om.OMNode;
+import org.apache.axis2.util.MessageProcessorSelector;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.Constants;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.TransportOutDescription;
-import org.apache.axis2.transport.TransportUtils;
 import org.apache.axis2.transport.MessageFormatter;
 import org.apache.axis2.transport.OutTransportInfo;
 import org.apache.axis2.transport.base.*;
@@ -343,7 +343,7 @@
             OMOutputFormat format = BaseUtils.getOMOutputFormat(msgContext);
             MessageFormatter messageFormatter = null;
             try {
-                messageFormatter = TransportUtils.getMessageFormatter(msgContext);
+                messageFormatter = MessageProcessorSelector.getMessageFormatter(msgContext);
             } catch (AxisFault axisFault) {
                 throw new JMSException("Unable to get the message formatter to use");
             }
diff --git a/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSUtils.java b/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSUtils.java
index 7228830..b3ee738 100644
--- a/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSUtils.java
+++ b/modules/jms/src/main/java/org/apache/axis2/transport/jms/JMSUtils.java
@@ -22,6 +22,7 @@
 import org.apache.axis2.builder.BuilderUtil;
 import org.apache.axis2.builder.SOAPBuilder;
 import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.util.MessageProcessorSelector;
 import org.apache.axis2.description.AxisService;
 import org.apache.axis2.format.DataSourceMessageBuilder;
 import org.apache.axis2.format.TextMessageBuilder;
@@ -130,7 +131,7 @@
         
         int index = contentType.indexOf(';');
         String type = index > 0 ? contentType.substring(0, index) : contentType;
-        Builder builder = BuilderUtil.getBuilderFromSelector(type, msgContext);
+        Builder builder = MessageProcessorSelector.getMessageBuilder(type, msgContext);
         if (builder == null) {
             if (log.isDebugEnabled()) {
                 log.debug("No message builder found for type '" + type + "'. Falling back to SOAP.");
diff --git a/modules/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java b/modules/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
index f42db82..ef868b3 100644
--- a/modules/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
+++ b/modules/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
@@ -31,6 +31,7 @@
 import org.apache.axis2.transport.base.BaseUtils;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.om.OMOutputFormat;
+import org.apache.axis2.util.MessageProcessorSelector;
 
 import java.io.IOException;
 import java.io.OutputStream;
@@ -84,7 +85,7 @@
 
     private void writeOut(MessageContext msgContext, Socket socket,
                           String contentType) throws IOException {
-        MessageFormatter messageFormatter = TransportUtils.getMessageFormatter(msgContext);
+        MessageFormatter messageFormatter = MessageProcessorSelector.getMessageFormatter(msgContext);
         OMOutputFormat format = BaseUtils.getOMOutputFormat(msgContext);
         format.setContentType(contentType);
         byte[] payload = messageFormatter.getBytes(msgContext, format);
diff --git a/modules/testkit/src/main/java/org/apache/axis2/transport/testkit/axis2/client/AxisTestClient.java b/modules/testkit/src/main/java/org/apache/axis2/transport/testkit/axis2/client/AxisTestClient.java
index 2490357..bd6ace1 100644
--- a/modules/testkit/src/main/java/org/apache/axis2/transport/testkit/axis2/client/AxisTestClient.java
+++ b/modules/testkit/src/main/java/org/apache/axis2/transport/testkit/axis2/client/AxisTestClient.java
@@ -118,6 +118,8 @@
             mc.setProperty(BaseConstants.METRICS_COLLECTOR, metrics);
         }
         mepClient.addMessageContext(mc);
+        mepClient.getOptions().setAction("");
+
         mepClient.execute(block);
 //        mepClient.complete(mc);
         return resultMessageLabel == null ? null : mepClient.getMessageContext(resultMessageLabel);
diff --git a/modules/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java b/modules/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java
index 90e0d22..16e84ea 100644
--- a/modules/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java
+++ b/modules/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java
@@ -37,6 +37,7 @@
 import org.apache.axis2.transport.TransportUtils;
 import org.apache.axis2.transport.base.AbstractTransportSender;
 import org.apache.axis2.transport.base.BaseUtils;
+import org.apache.axis2.util.MessageProcessorSelector;
 import org.apache.commons.logging.LogFactory;
 
 import javax.xml.stream.XMLStreamException;
@@ -67,7 +68,7 @@
         } else {
             udpOutInfo = new UDPOutTransportInfo(targetEPR);
         }
-        MessageFormatter messageFormatter = TransportUtils.getMessageFormatter(msgContext);
+        MessageFormatter messageFormatter = MessageProcessorSelector.getMessageFormatter(msgContext);
         OMOutputFormat format = BaseUtils.getOMOutputFormat(msgContext);
         format.setContentType(udpOutInfo.getContentType());
         byte[] payload = messageFormatter.getBytes(msgContext, format);