You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by he...@apache.org on 2005/06/30 11:48:29 UTC
svn commit: r202513 - in /webservices/axis/trunk/java/modules:
core/src/org/apache/axis/clientapi/ core/src/org/apache/axis/transport/
core/src/org/apache/axis/transport/http/ samples/test/org/apache/axis/engine/
Author: hemapani
Date: Thu Jun 30 02:48:27 2005
New Revision: 202513
URL: http://svn.apache.org/viewcvs?rev=202513&view=rev
Log:
fixed the build, and imporment for mtom
Modified:
webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/InOutMEPClient.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/TransportUtils.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPConstants.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPTransportSender.java
webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/CommonsHTTPEchoRawXMLTest.java
webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/commons-http-enabled-axis2.xml
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/InOutMEPClient.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/InOutMEPClient.java?rev=202513&r1=202512&r2=202513&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/InOutMEPClient.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/InOutMEPClient.java Thu Jun 30 02:48:27 2005
@@ -239,7 +239,9 @@
boolean isATwoWaytransport = Constants.TRANSPORT_HTTP.equals(senderTransport)
|| Constants.TRANSPORT_TCP.equals(senderTransport)
|| Constants.TRANSPORT_COMMONS_HTTP.equals(senderTransport);
- if(!isTransportsEqual || !isATwoWaytransport){
+ boolean isCommonsAndHTTP = Constants.TRANSPORT_COMMONS_HTTP.equals(senderTransport)
+ && Constants.TRANSPORT_HTTP.equals(listenerTransport);
+ if(!isCommonsAndHTTP && (!isTransportsEqual || !isATwoWaytransport)){
throw new AxisFault("useSeparateListener = false is only supports by the htpp/tcp and tcp commons transport set as the sender and receiver");
}
}else{
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/TransportUtils.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/TransportUtils.java?rev=202513&r1=202512&r2=202513&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/TransportUtils.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/TransportUtils.java Thu Jun 30 02:48:27 2005
@@ -22,7 +22,9 @@
import javax.xml.stream.XMLInputFactory;
import javax.xml.stream.XMLStreamReader;
+import org.apache.axis.Constants;
import org.apache.axis.context.MessageContext;
+import org.apache.axis.context.OperationContext;
import org.apache.axis.engine.AxisFault;
import org.apache.axis.om.impl.llom.builder.StAXBuilder;
import org.apache.axis.om.impl.llom.builder.StAXOMBuilder;
@@ -30,42 +32,48 @@
import org.apache.axis.soap.SOAPFactory;
import org.apache.axis.soap.impl.llom.builder.StAXSOAPModelBuilder;
import org.apache.axis.soap.impl.llom.soap11.SOAP11Factory;
-
+import org.apache.axis.transport.http.HTTPConstants;
+import org.apache.axis.transport.http.HTTPTransportUtils;
public class TransportUtils {
- public static SOAPEnvelope createSOAPMessage(MessageContext msgContext)
- throws AxisFault {
+ public static SOAPEnvelope createSOAPMessage(MessageContext msgContext) throws AxisFault {
- InputStream inStream =
- (InputStream) msgContext.getProperty(MessageContext.TRANSPORT_IN);
+ InputStream inStream = (InputStream) msgContext.getProperty(MessageContext.TRANSPORT_IN);
msgContext.setProperty(MessageContext.TRANSPORT_IN, null);
- if(inStream == null){
+ if (inStream == null) {
throw new AxisFault("Input stram is Null");
}
return createSOAPMessage(msgContext, inStream);
}
-
-
- public static SOAPEnvelope createSOAPMessage(
- MessageContext msgContext,
- InputStream inStream )
+ public static SOAPEnvelope createSOAPMessage(MessageContext msgContext, InputStream inStream)
throws AxisFault {
try {
- Reader reader = new InputStreamReader(inStream);
-
- XMLStreamReader xmlreader =
- XMLInputFactory.newInstance().createXMLStreamReader(reader);
-
+ Object contentType = null;
+ OperationContext opContext = msgContext.getOperationContext();
+ if (opContext != null) {
+ contentType = opContext.getProperty(HTTPConstants.MTOM_RECIVED_CONTENT_TYPE);
+ }
+
StAXBuilder builder = null;
SOAPEnvelope envelope = null;
- if (msgContext.isDoingREST()) {
+
+ if (contentType != null) {
+ builder = HTTPTransportUtils.selectBuilderForMIME(msgContext, inStream, (String)contentType);
+ envelope = (SOAPEnvelope) builder.getDocumentElement();
+ }else if (msgContext.isDoingREST()) {
+ Reader reader = new InputStreamReader(inStream);
+ XMLStreamReader xmlreader =
+ XMLInputFactory.newInstance().createXMLStreamReader(reader);
SOAPFactory soapFactory = new SOAP11Factory();
builder = new StAXOMBuilder(xmlreader);
builder.setOmbuilderFactory(soapFactory);
envelope = soapFactory.getDefaultEnvelope();
envelope.getBody().addChild(builder.getDocumentElement());
} else {
+ Reader reader = new InputStreamReader(inStream);
+ XMLStreamReader xmlreader =
+ XMLInputFactory.newInstance().createXMLStreamReader(reader);
builder = new StAXSOAPModelBuilder(xmlreader);
envelope = (SOAPEnvelope) builder.getDocumentElement();
}
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPConstants.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPConstants.java?rev=202513&r1=202512&r2=202513&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPConstants.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPConstants.java Thu Jun 30 02:48:27 2005
@@ -386,7 +386,7 @@
public static final String HTTP_REQ_TYPE = "HTTP_REQ_TYPE";
public static final String HTTPOutTransportInfo = "HTTPOutTransportInfo";
- public static final String MTOM_RECIVED = "MTOM_RECEIVED";
+ public static final String MTOM_RECIVED_CONTENT_TYPE = "MTOM_RECEIVED";
/**
* Default content encoding chatset
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPTransportSender.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPTransportSender.java?rev=202513&r1=202512&r2=202513&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPTransportSender.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/transport/http/HTTPTransportSender.java Thu Jun 30 02:48:27 2005
@@ -26,9 +26,11 @@
import java.net.URL;
import java.util.Map;
+import org.apache.axis.Constants;
import org.apache.axis.addressing.EndpointReference;
import org.apache.axis.context.ConfigurationContext;
import org.apache.axis.context.MessageContext;
+import org.apache.axis.context.OperationContext;
import org.apache.axis.description.Parameter;
import org.apache.axis.description.TransportOutDescription;
import org.apache.axis.engine.AxisFault;
@@ -180,6 +182,15 @@
in = new ChunkedInputStream(transportInfo.in);
}
msgContext.setProperty(MessageContext.TRANSPORT_IN, in);
+
+ String contentType = (String)map.get(HTTPConstants.HEADER_CONTENT_TYPE);
+ if (contentType != null && contentType.indexOf(HTTPConstants.HEADER_ACCEPT_MULTIPART_RELATED) >= 0){
+ OperationContext opContext = msgContext.getOperationContext();
+ if(opContext != null){
+ opContext.setProperty(HTTPConstants.MTOM_RECIVED_CONTENT_TYPE,contentType);
+ }
+
+ }
}
} catch (AxisFault e) {
// TODO Auto-generated catch block
Modified: webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/CommonsHTTPEchoRawXMLTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/CommonsHTTPEchoRawXMLTest.java?rev=202513&r1=202512&r2=202513&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/CommonsHTTPEchoRawXMLTest.java (original)
+++ webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/CommonsHTTPEchoRawXMLTest.java Thu Jun 30 02:48:27 2005
@@ -90,7 +90,7 @@
org.apache.axis.clientapi.Call call = new org.apache.axis.clientapi.Call(Constants.TESTING_PATH+"commons-http-enabledRepository");
call.setTo(targetEPR);
- call.setTransportInfo(Constants.TRANSPORT_COMMONS_HTTP, Constants.TRANSPORT_COMMONS_HTTP, false);
+ call.setTransportInfo(Constants.TRANSPORT_COMMONS_HTTP, Constants.TRANSPORT_HTTP, false);
Callback callback = new Callback() {
public void onComplete(AsyncResult result) {
@@ -127,7 +127,7 @@
org.apache.axis.clientapi.Call call = new org.apache.axis.clientapi.Call(Constants.TESTING_PATH+"commons-http-enabledRepository");
call.setTo(targetEPR);
- call.setTransportInfo(Constants.TRANSPORT_COMMONS_HTTP, Constants.TRANSPORT_COMMONS_HTTP, false);
+ call.setTransportInfo(Constants.TRANSPORT_COMMONS_HTTP, Constants.TRANSPORT_HTTP, false);
OMElement result =
(OMElement) call.invokeBlocking(operationName.getLocalPart(), payload);
Modified: webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/commons-http-enabled-axis2.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/commons-http-enabled-axis2.xml?rev=202513&r1=202512&r2=202513&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/commons-http-enabled-axis2.xml (original)
+++ webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/commons-http-enabled-axis2.xml Thu Jun 30 02:48:27 2005
@@ -25,6 +25,8 @@
<parameter name="port" locked="xsd:false">6060</parameter>
</transportReceiver>
+
+
<transportReceiver name="tcp" class="org.apache.axis.transport.tcp.TCPServer">