axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From davidills...@apache.org
Subject svn commit: r501978 [11/24] - in /webservices/axis2/branches/java/maven2: ./ etc/ modules/adb-codegen/ modules/adb-codegen/src/org/apache/axis2/schema/ modules/adb-codegen/src/org/apache/axis2/schema/template/ modules/adb-codegen/src/org/apache/axis2/s...
Date Wed, 31 Jan 2007 20:35:35 GMT
Modified: webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONMessageFormatter.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONMessageFormatter.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONMessageFormatter.java (original)
+++ webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONMessageFormatter.java Wed Jan 31 12:35:21 2007
@@ -23,40 +23,41 @@
 
 import javax.xml.stream.FactoryConfigurationError;
 import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamWriter;
 
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMOutputFormat;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.Constants;
-import org.apache.axis2.JScriptConstants;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.transport.MessageFormatter;
-import org.apache.axis2.transport.http.HTTPConstants;
-import org.codehaus.jettison.badgerfish.BadgerFishXMLStreamWriter;
+import org.codehaus.jettison.mapped.MappedNamespaceConvention;
+import org.codehaus.jettison.mapped.MappedXMLStreamWriter;
 
 
 public class JSONMessageFormatter implements MessageFormatter {
 
     public String getContentType(MessageContext msgCtxt, OMOutputFormat format, String soapActionString) {
-            String contentType;
-            String encoding = format.getCharSetEncoding();
-            if (msgCtxt.getProperty(Constants.Configuration.CONTENT_TYPE) != null) {
-                contentType = (String) msgCtxt.getProperty(Constants.Configuration.CONTENT_TYPE);
-            } else {
-                contentType = JScriptConstants.MEDIA_TYPE_APPLICATION_JSON;
-            }
-
-            if (encoding != null) {
-                contentType += "; charset=" + encoding;
-            }
-            return contentType;
+        String contentType;
+        String encoding = format.getCharSetEncoding();
+        if (msgCtxt.getProperty(Constants.Configuration.CONTENT_TYPE) != null) {
+            contentType = (String) msgCtxt.getProperty(Constants.Configuration.CONTENT_TYPE);
+        } else {
+            contentType = (String) msgCtxt.getProperty(Constants.Configuration.MESSAGE_TYPE);
+
+        }
+
+        if (encoding != null) {
+            contentType += "; charset=" + encoding;
+        }
+        return contentType;
     }
 
     public byte[] getBytes(MessageContext msgCtxt, OMOutputFormat format) throws AxisFault {
-    	OMElement element = msgCtxt.getEnvelope().getBody().getFirstElement();
+        OMElement element = msgCtxt.getEnvelope().getBody().getFirstElement();
         try {
             ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
-            BadgerFishXMLStreamWriter jsonWriter = new BadgerFishXMLStreamWriter(new OutputStreamWriter(bytesOut));
+            XMLStreamWriter jsonWriter = getJSONWriter(bytesOut);
             element.serializeAndConsume(jsonWriter);
             jsonWriter.writeEndDocument();
 
@@ -73,10 +74,16 @@
         return null;
     }
 
+    protected XMLStreamWriter getJSONWriter(OutputStream outStream) {
+        MappedNamespaceConvention mnc = new MappedNamespaceConvention();
+        return new MappedXMLStreamWriter(mnc, new OutputStreamWriter(outStream));
+    }
+
     public void writeTo(MessageContext msgCtxt, OMOutputFormat format,
-			OutputStream out, boolean preserve) throws AxisFault {
-    	OMElement element = msgCtxt.getEnvelope().getBody().getFirstElement();
-    	BadgerFishXMLStreamWriter jsonWriter = new BadgerFishXMLStreamWriter(new OutputStreamWriter(out));
+                        OutputStream out, boolean preserve) throws AxisFault {
+        OMElement element = msgCtxt.getEnvelope().getBody().getFirstElement();
+        XMLStreamWriter jsonWriter = getJSONWriter(out);
+
         try {
             element.serializeAndConsume(jsonWriter);
             jsonWriter.writeEndDocument();

Modified: webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONOMBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONOMBuilder.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONOMBuilder.java (original)
+++ webservices/axis2/branches/java/maven2/modules/json/src/org/apache/axis2/json/JSONOMBuilder.java Wed Jan 31 12:35:21 2007
@@ -25,7 +25,6 @@
 import org.apache.axiom.om.impl.builder.OMBuilder;
 import org.apache.axiom.om.impl.llom.OMSourcedElementImpl;
 import org.apache.axiom.om.impl.llom.factory.OMLinkedListImplFactory;
-import org.apache.axis2.JScriptConstants;
 
 public class JSONOMBuilder implements OMBuilder {
     InputStream jsonInputStream = null;
@@ -46,10 +45,14 @@
         if (localName == null) {
             localName = getLocalName();
         }
-        JSONDataSource jsonDataSource = new JSONDataSource(this.jsonInputStream, localName);
+        JSONDataSource jsonDataSource = getDataSource();
         return new OMSourcedElementImpl(localName.substring(1, localName.length() - 1), ns, factory, jsonDataSource);
     }
 
+    protected JSONDataSource getDataSource(){
+        return new JSONDataSource(this.jsonInputStream, localName);
+    }
+
     private String getLocalName() {
         String localName = "";
         try {
@@ -71,7 +74,7 @@
 	}
 
 	public String getMessageType() {
-		return JScriptConstants.MEDIA_TYPE_APPLICATION_JSON;
+		return null;
 	}
 
 }

Modified: webservices/axis2/branches/java/maven2/modules/json/test-resources/axis2.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/json/test-resources/axis2.xml?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/json/test-resources/axis2.xml (original)
+++ webservices/axis2/branches/java/maven2/modules/json/test-resources/axis2.xml Wed Jan 31 12:35:21 2007
@@ -1,107 +1,107 @@
-<!--
-/*
- * Copyright 2001-2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- -->
- 
-<axisconfig name="AxisJava2.0">
-    <!-- ================================================= -->
-    <!-- Parameters -->
-    <!-- ================================================= -->
-    <parameter name="hotdeployment" locked="false">true</parameter>
-    <parameter name="hotupdate" locked="false">false</parameter>
-    <parameter name="enableMTOM" locked="false">false</parameter>
-    <parameter name="enableSwA" locked="false">false</parameter>
-
-    <!--Uncomment if you want to enable file caching for attachments -->
-    <!--parameter name="cacheAttachments" locked="false">true</parameter>
-    <parameter name="attachmentDIR" locked="false"></parameter>
-    <parameter name="sizeThreshold" locked="false">4000</parameter-->
-
-    <!--This will give out the timout of the configuration contexts, in seconds-->
-    <parameter name="ConfigContextTimeoutInterval" locked="false">30</parameter>
-
-    <!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
-    <!--that behaviour.-->
-    <parameter name="sendStacktraceDetailsWithFaults" locked="false">false</parameter>
-
-    <!--If there aren't any information available to find out the fault reason, we set the message of the expcetion-->
-    <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
-    <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
-    <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
-    <parameter name="DrillDownToRootCauseForFaultReason" locked="false">false</parameter>
-
-    <parameter name="userName" locked="false">admin</parameter>
-    <parameter name="password" locked="false">axis2</parameter>
-
-    <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.-->
-    <!--<parameter name="ServicesDirectory" locked="false">service</parameter>-->
-    <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path-->
-    <!--<parameter name="ModulesDirectory" locked="false">modules</parameter>-->
-
-
-
-    <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context-->
-    <!--root which can configured using the following contextRoot parameter-->
-    <!--<parameter name="contextRoot" locked="false">axis2</parameter>-->
-
-    <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distingiush those endpoints-->
-    <!--In case of a servlet, if you change this you have to manually change the settings of your servlet container to map this -->
-    <!--context path to proper Axis2 servlets-->
-    <!--<parameter name="servicePath" locked="false">services</parameter>-->
-    <!--<parameter name="restPath" locked="false">rest</parameter>-->
-
-
-    <!--Set the flag to true if you want to enable transport level session mangment-->
-    <parameter name="manageTransportSession" locked="false">false</parameter>
-
-    <!--Following two parameters will be used to handle REST in Axis2. The default settings will make Axis2 to have two-->
-    <!--different endpoints, one for REST (AxisRESTServlet) one for SOAP message handling (AxisServlet). But following-->
-    <!--parameters help to tweak the message handling of two main servlets. -->
-
-    <!-- If the enableRESTInAxis2MainServlet is true, then Axis2MainServlet will handle both SOAP and REST messages -->
-    <parameter name="enableRESTInAxis2MainServlet" locked="true">false</parameter>
-
-    <!-- Following parameter will completely disable REST handling in both the servlets-->
-    <parameter name="disableREST" locked="true">false</parameter>
-
-    <!-- This will disable the separate servlet we have for REST handling. -->
-    <parameter name="disableSeparateEndpointForREST" locked="true">false</parameter>
-
-    <!-- If you have a frontend host which exposes this webservice using a different public URL  -->
-    <!-- use this parameter to override autodetected url -->
-    <!--<parameter name="httpFrontendHostUrl" locked="false">https://someotherhost/context</parameter>-->
-
-
-    <!--    The way of adding listener to the system-->
-    <!--    <listener class="org.apache.axis2.ObserverIMPL">-->
-    <!--        <parameter name="RSS_URL" locked="false">http://127.0.0.1/rss</parameter>-->
-    <!--    </listener>-->
-
-    <!-- ================================================= -->
-    <!-- Message Receivers -->
-    <!-- ================================================= -->
-    <!--This is the Deafult Message Receiver for the system , if you want to have MessageReceivers for -->
-    <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
-    <!--any operation -->
-    <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
-    <messageReceivers>
-        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
-                         class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
-        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
-                         class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+<!--
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ -->
+ 
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment" locked="false">true</parameter>
+    <parameter name="hotupdate" locked="false">false</parameter>
+    <parameter name="enableMTOM" locked="false">false</parameter>
+    <parameter name="enableSwA" locked="false">false</parameter>
+
+    <!--Uncomment if you want to enable file caching for attachments -->
+    <!--parameter name="cacheAttachments" locked="false">true</parameter>
+    <parameter name="attachmentDIR" locked="false"></parameter>
+    <parameter name="sizeThreshold" locked="false">4000</parameter-->
+
+    <!--This will give out the timout of the configuration contexts, in seconds-->
+    <parameter name="ConfigContextTimeoutInterval" locked="false">30</parameter>
+
+    <!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
+    <!--that behaviour.-->
+    <parameter name="sendStacktraceDetailsWithFaults" locked="false">false</parameter>
+
+    <!--If there aren't any information available to find out the fault reason, we set the message of the expcetion-->
+    <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
+    <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
+    <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
+    <parameter name="DrillDownToRootCauseForFaultReason" locked="false">false</parameter>
+
+    <parameter name="userName" locked="false">admin</parameter>
+    <parameter name="password" locked="false">axis2</parameter>
+
+    <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.-->
+    <!--<parameter name="ServicesDirectory" locked="false">service</parameter>-->
+    <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path-->
+    <!--<parameter name="ModulesDirectory" locked="false">modules</parameter>-->
+
+
+
+    <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context-->
+    <!--root which can configured using the following contextRoot parameter-->
+    <!--<parameter name="contextRoot" locked="false">axis2</parameter>-->
+
+    <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distingiush those endpoints-->
+    <!--In case of a servlet, if you change this you have to manually change the settings of your servlet container to map this -->
+    <!--context path to proper Axis2 servlets-->
+    <!--<parameter name="servicePath" locked="false">services</parameter>-->
+    <!--<parameter name="restPath" locked="false">rest</parameter>-->
+
+
+    <!--Set the flag to true if you want to enable transport level session mangment-->
+    <parameter name="manageTransportSession" locked="false">false</parameter>
+
+    <!--Following two parameters will be used to handle REST in Axis2. The default settings will make Axis2 to have two-->
+    <!--different endpoints, one for REST (AxisRESTServlet) one for SOAP message handling (AxisServlet). But following-->
+    <!--parameters help to tweak the message handling of two main servlets. -->
+
+    <!-- If the enableRESTInAxis2MainServlet is true, then Axis2MainServlet will handle both SOAP and REST messages -->
+    <parameter name="enableRESTInAxis2MainServlet" locked="true">false</parameter>
+
+    <!-- Following parameter will completely disable REST handling in both the servlets-->
+    <parameter name="disableREST" locked="true">false</parameter>
+
+    <!-- This will disable the separate servlet we have for REST handling. -->
+    <parameter name="disableSeparateEndpointForREST" locked="true">false</parameter>
+
+    <!-- If you have a frontend host which exposes this webservice using a different public URL  -->
+    <!-- use this parameter to override autodetected url -->
+    <!--<parameter name="httpFrontendHostUrl" locked="false">https://someotherhost/context</parameter>-->
+
+
+    <!--    The way of adding listener to the system-->
+    <!--    <listener class="org.apache.axis2.ObserverIMPL">-->
+    <!--        <parameter name="RSS_URL" locked="false">http://127.0.0.1/rss</parameter>-->
+    <!--    </listener>-->
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!--This is the Deafult Message Receiver for the system , if you want to have MessageReceivers for -->
+    <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
+    <!--any operation -->
+    <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
+    <messageReceivers>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
+                         class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
+                         class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
     </messageReceivers>
     
     <!-- ================================================= -->
@@ -114,6 +114,10 @@
                          class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
         <messageFormatter contentType="application/json"
                          class="org.apache.axis2.json.JSONMessageFormatter"/>
+        <messageFormatter contentType="application/json/badgerfish"
+                         class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
+        <messageFormatter contentType="text/javascript"
+                         class="org.apache.axis2.json.JSONMessageFormatter"/>
     </messageFormatters>
     
     <!-- ================================================= -->
@@ -124,214 +128,218 @@
     <messageBuilders>
         <messageBuilder contentType="application/json"
                          class="org.apache.axis2.json.JSONOMBuilder"/>
+        <messageBuilder contentType="application/json/badgerfish"
+                         class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
+        <messageBuilder contentType="text/javascript"
+                         class="org.apache.axis2.json.JSONOMBuilder"/>
         <messageBuilder contentType="application/soap+xml"
                          class="org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder"/>
     </messageBuilders>
-    
-    <!-- ================================================= -->
-    <!-- Transport Ins -->
-    <!-- ================================================= -->
-    <transportReceiver name="http"
-                       class="org.apache.axis2.transport.http.SimpleHTTPServer">
-        <parameter name="port" locked="false">8080</parameter>
-        <!-- Here is the complete list of supported parameters (see example settings further below):
-            port: the port to listen on (default 6060)
-            hostname:  if non-null, url prefix used in reply-to endpoint references                                 (default null)
-            originServer:  value of http Server header in outgoing messages                                         (default "Simple-Server/1.1")
-            requestTimeout:  value in millis of time that requests can wait for data                                (default 20000)
-            requestTcpNoDelay:  true to maximize performance and minimize latency                                   (default true)
-                                false to minimize bandwidth consumption by combining segments
-            requestCoreThreadPoolSize:  number of threads available for request processing (unless queue fills up)  (default 25)
-            requestMaxThreadPoolSize:  number of threads available for request processing if queue fills us         (default 150)
-                                       note that default queue never fills up:  see HttpFactory
-            threadKeepAliveTime:  time to keep threads in excess of core size alive while inactive                  (default 180)
-                                  note that no such threads can exist with default unbounded request queue
-            threadKeepAliveTimeUnit:  TimeUnit of value in threadKeepAliveTime (default SECONDS)                    (default SECONDS)
-        -->
-        <!-- <parameter name="hostname"                  locked="false">http://www.myApp.com/ws</parameter> -->
-        <!-- <parameter name="originServer"              locked="false">My-Server/1.1</parameter>           -->
-        <!-- <parameter name="requestTimeout"            locked="false">10000</parameter>                   -->
-        <!-- <parameter name="requestTcpNoDelay"         locked="false">false</parameter>                   -->
-        <!-- <parameter name="requestCoreThreadPoolSize" locked="false">50</parameter>                      -->
-        <!-- <parameter name="RequestMaxThreadPoolSize"  locked="false">100</parameter>                     -->
-        <!-- <parameter name="threadKeepAliveTime"       locked="false">240000</parameter>                  -->
-        <!-- <parameter name="threadKeepAliveTimeUnit"   locked="false">MILLISECONDS</parameter>            -->
-    </transportReceiver>
-    
-    <!--Uncomment this and configure as appropriate for JMS transport support, after setting up your JMS environment (e.g. ActiveMQ)
-    <transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
-        <parameter name="myTopicConnectionFactory" locked="false">        	        	
-        	<parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
-        	<parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>        	
-        	<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
-        </parameter>
-
-        <parameter name="myQueueConnectionFactory" locked="false">        	        	
-        	<parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
-        	<parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>        	
-        	<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
-        </parameter>
-
-        <parameter name="default" locked="false">        	        	
-        	<parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
-        	<parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>        	
-        	<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
-        </parameter>
-    </transportReceiver>-->
-
-    <!--Uncomment if you want to have SMTP transport support-->
-    <!--<transportReceiver name="mail" class="org.apache.axis2.transport.mail.SimpleMailListener">-->
-    <!--<parameter name="transport.mail.pop3.host" locked="false">127.0.0.1</parameter>-->
-    <!--<parameter name="transport.mail.pop3.user" locked="false">axis2</parameter>-->
-    <!--<parameter name="transport.mail.pop3.password" locked="false">axis2</parameter>-->
-    <!--<parameter name="transport.mail.pop3.port" locked="false">110</parameter>-->
-    <!--<parameter name="transport.mail.replyToAddress" locked="false">axis2@127.0.0.1</parameter>-->
-    <!--</transportReceiver>-->
-
-	<!--Uncomment if you want to have TCP transport support-->
-    <!--transportReceiver name="tcp"
-                       class="org.apache.axis2.transport.tcp.TCPServer">
-        <parameter name="port" locked="false">6060</parameter-->>
-        <!--If you want to give your own host address for EPR generation-->
-        <!--uncommet following paramter , and set as you required.-->
-        <!--<parameter name="hostname" locked="false">tcp://myApp.com/ws</parameter>-->
-    <!-- /transportReceiver -->
-
-    <!-- ================================================= -->
-    <!-- Transport Outs -->
-    <!-- ================================================= -->
-
-    <transportSender name="tcp"
-                     class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
-    <transportSender name="local"
-                     class="org.apache.axis2.transport.local.LocalTransportSender"/>
-    <transportSender name="http"
-                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
-        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
-        <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
-    </transportSender>
-    <transportSender name="https"
-                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
-        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
-        <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
-    </transportSender>
-    <!--Uncomment this and configure as appropriate for JMS transport support, after setting up your JMS environment (e.g. ActiveMQ)
-    <transportSender name="jms"
-                     class="org.apache.axis2.transport.jms.JMSSender"/>
-    -->
-
-    <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver
-   <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
-       <parameter name="transport.mail.smtp.host" locked="false">127.0.0.1</parameter>
-       <parameter name="transport.mail.smtp.user" locked="false">axis2</parameter>
-       <parameter name="transport.mail.smtp.password" locked="false">axis2</parameter>
-       <parameter name="transport.mail.smtp.port" locked="false">25</parameter>
-   </transportSender>
-   -->
-
-    <!-- ================================================= -->
-    <!-- Global Modules  -->
-    <!-- ================================================= -->
-    <!-- Comment this to disable Addressing -->
-    <!--module ref="addressing"/-->
-
-    <!--Configuring module , providing parameters for modules whether they refer or not-->
-    <!--<moduleConfig name="addressing">-->
-    <!--<parameter name="addressingPara" locked="false">N/A</parameter>-->
-    <!--</moduleConfig>-->
-
-    <!-- ================================================= -->
-    <!-- Phases  -->
-    <!-- ================================================= -->
-    <phaseOrder type="InFlow">
-        <!--  System pre defined phases       -->
-        <phase name="Transport">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-        </phase>
-        <phase name="Security"/>
-        <phase name="PreDispatch"/>
-        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
-            <handler name="AddressingBasedDispatcher"
-                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-            <handler name="RequestURIOperationDispatcher"
-                     class="org.apache.axis2.engine.RequestURIOperationDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-
-            <handler name="SOAPMessageBodyBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-            <handler name="InstanceDispatcher"
-                     class="org.apache.axis2.engine.InstanceDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-        </phase>
-        <!--  System pre defined phases       -->
-        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
-        <phase name="OperationInPhase"/>
-	<phase name="soapmonitorPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFlow">
-        <!--      user can add his own phases to this area  -->
-	<phase name="soapmonitorPhase"/>
-        <phase name="OperationOutPhase"/>
-        <!--system predefined phase-->
-        <!--these phase will run irrespective of the service-->
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-        <phase name="Security"/>
-    </phaseOrder>
-    <phaseOrder type="InFaultFlow">
-        <phase name="PreDispatch"/>
-        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-
-            <handler name="AddressingBasedDispatcher"
-                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-            <handler name="RequestURIOperationDispatcher"
-                     class="org.apache.axis2.engine.RequestURIOperationDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-
-            <handler name="SOAPMessageBodyBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-            <handler name="InstanceDispatcher"
-                     class="org.apache.axis2.engine.InstanceDispatcher">
-                <order phase="PostDispatch"/>
-            </handler>
-        </phase>
-        <!--      user can add his own phases to this area  -->
-        <phase name="OperationInFaultPhase"/>
-	<phase name="soapmonitorPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFaultFlow">
-        <!--      user can add his own phases to this area  -->
-	<phase name="soapmonitorPhase"/>
-        <phase name="OperationOutFaultPhase"/>
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-    </phaseOrder>
-</axisconfig>
-
+    
+    <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.apache.axis2.transport.http.SimpleHTTPServer">
+        <parameter name="port" locked="false">8080</parameter>
+        <!-- Here is the complete list of supported parameters (see example settings further below):
+            port: the port to listen on (default 6060)
+            hostname:  if non-null, url prefix used in reply-to endpoint references                                 (default null)
+            originServer:  value of http Server header in outgoing messages                                         (default "Simple-Server/1.1")
+            requestTimeout:  value in millis of time that requests can wait for data                                (default 20000)
+            requestTcpNoDelay:  true to maximize performance and minimize latency                                   (default true)
+                                false to minimize bandwidth consumption by combining segments
+            requestCoreThreadPoolSize:  number of threads available for request processing (unless queue fills up)  (default 25)
+            requestMaxThreadPoolSize:  number of threads available for request processing if queue fills us         (default 150)
+                                       note that default queue never fills up:  see HttpFactory
+            threadKeepAliveTime:  time to keep threads in excess of core size alive while inactive                  (default 180)
+                                  note that no such threads can exist with default unbounded request queue
+            threadKeepAliveTimeUnit:  TimeUnit of value in threadKeepAliveTime (default SECONDS)                    (default SECONDS)
+        -->
+        <!-- <parameter name="hostname"                  locked="false">http://www.myApp.com/ws</parameter> -->
+        <!-- <parameter name="originServer"              locked="false">My-Server/1.1</parameter>           -->
+        <!-- <parameter name="requestTimeout"            locked="false">10000</parameter>                   -->
+        <!-- <parameter name="requestTcpNoDelay"         locked="false">false</parameter>                   -->
+        <!-- <parameter name="requestCoreThreadPoolSize" locked="false">50</parameter>                      -->
+        <!-- <parameter name="RequestMaxThreadPoolSize"  locked="false">100</parameter>                     -->
+        <!-- <parameter name="threadKeepAliveTime"       locked="false">240000</parameter>                  -->
+        <!-- <parameter name="threadKeepAliveTimeUnit"   locked="false">MILLISECONDS</parameter>            -->
+    </transportReceiver>
+    
+    <!--Uncomment this and configure as appropriate for JMS transport support, after setting up your JMS environment (e.g. ActiveMQ)
+    <transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
+        <parameter name="myTopicConnectionFactory" locked="false">        	        	
+        	<parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+        	<parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>        	
+        	<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
+        </parameter>
+
+        <parameter name="myQueueConnectionFactory" locked="false">        	        	
+        	<parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+        	<parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>        	
+        	<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
+        </parameter>
+
+        <parameter name="default" locked="false">        	        	
+        	<parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+        	<parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>        	
+        	<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
+        </parameter>
+    </transportReceiver>-->
+
+    <!--Uncomment if you want to have SMTP transport support-->
+    <!--<transportReceiver name="mail" class="org.apache.axis2.transport.mail.SimpleMailListener">-->
+    <!--<parameter name="transport.mail.pop3.host" locked="false">127.0.0.1</parameter>-->
+    <!--<parameter name="transport.mail.pop3.user" locked="false">axis2</parameter>-->
+    <!--<parameter name="transport.mail.pop3.password" locked="false">axis2</parameter>-->
+    <!--<parameter name="transport.mail.pop3.port" locked="false">110</parameter>-->
+    <!--<parameter name="transport.mail.replyToAddress" locked="false">axis2@127.0.0.1</parameter>-->
+    <!--</transportReceiver>-->
+
+	<!--Uncomment if you want to have TCP transport support-->
+    <!--transportReceiver name="tcp"
+                       class="org.apache.axis2.transport.tcp.TCPServer">
+        <parameter name="port" locked="false">6060</parameter-->>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncommet following paramter , and set as you required.-->
+        <!--<parameter name="hostname" locked="false">tcp://myApp.com/ws</parameter>-->
+    <!-- /transportReceiver -->
+
+    <!-- ================================================= -->
+    <!-- Transport Outs -->
+    <!-- ================================================= -->
+
+    <transportSender name="tcp"
+                     class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
+    <transportSender name="local"
+                     class="org.apache.axis2.transport.local.LocalTransportSender"/>
+    <transportSender name="http"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
+    </transportSender>
+    <transportSender name="https"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
+    </transportSender>
+    <!--Uncomment this and configure as appropriate for JMS transport support, after setting up your JMS environment (e.g. ActiveMQ)
+    <transportSender name="jms"
+                     class="org.apache.axis2.transport.jms.JMSSender"/>
+    -->
+
+    <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver
+   <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
+       <parameter name="transport.mail.smtp.host" locked="false">127.0.0.1</parameter>
+       <parameter name="transport.mail.smtp.user" locked="false">axis2</parameter>
+       <parameter name="transport.mail.smtp.password" locked="false">axis2</parameter>
+       <parameter name="transport.mail.smtp.port" locked="false">25</parameter>
+   </transportSender>
+   -->
+
+    <!-- ================================================= -->
+    <!-- Global Modules  -->
+    <!-- ================================================= -->
+    <!-- Comment this to disable Addressing -->
+    <!--module ref="addressing"/-->
+
+    <!--Configuring module , providing parameters for modules whether they refer or not-->
+    <!--<moduleConfig name="addressing">-->
+    <!--<parameter name="addressingPara" locked="false">N/A</parameter>-->
+    <!--</moduleConfig>-->
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+        <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="RequestURIOperationDispatcher"
+                     class="org.apache.axis2.engine.RequestURIOperationDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="InstanceDispatcher"
+                     class="org.apache.axis2.engine.InstanceDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+        </phase>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+	<phase name="soapmonitorPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      user can add his own phases to this area  -->
+	<phase name="soapmonitorPhase"/>
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+        <phase name="Security"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="RequestURIOperationDispatcher"
+                     class="org.apache.axis2.engine.RequestURIOperationDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="InstanceDispatcher"
+                     class="org.apache.axis2.engine.InstanceDispatcher">
+                <order phase="PostDispatch"/>
+            </handler>
+        </phase>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+	<phase name="soapmonitorPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+	<phase name="soapmonitorPhase"/>
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+

Modified: webservices/axis2/branches/java/maven2/modules/json/test/org/apache/axis2/json/JSONIntegrationTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/json/test/org/apache/axis2/json/JSONIntegrationTest.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/json/test/org/apache/axis2/json/JSONIntegrationTest.java (original)
+++ webservices/axis2/branches/java/maven2/modules/json/test/org/apache/axis2/json/JSONIntegrationTest.java Wed Jan 31 12:35:21 2007
@@ -35,71 +35,76 @@
 
 public class JSONIntegrationTest extends TestCase implements JSONTestConstants {
 
-	private AxisService service;
+    private AxisService service;
 
-	private String expectedString;
+    private String expectedString;
 
-	private SimpleHTTPServer server;
-	
-	private ConfigurationContext configurationContext;
-
-	public JSONIntegrationTest() {
-	}
-
-	protected void setUp() throws Exception {
-
-//		File configFile = new File("test-resources/axis2.xml");
-//		configurationContext = ConfigurationContextFactory
-//				.createConfigurationContextFromFileSystem(null, configFile
-//						.getAbsolutePath());
-//		server = new SimpleHTTPServer(configurationContext, TESTING_PORT);
-//		try {
-//			server.start();
-//		} finally {
-//
-//		}
-//		service = Utils.createSimpleService(serviceName, org.apache.axis2.json.Echo.class.getName(),
-//				operationName);
-//		server.getConfigurationContext().getAxisConfiguration().addService(
-//				service);
-	}
-
-	protected void tearDown() throws Exception {
-//		server.stop();
-	}
-
-	protected OMElement createEnvelope() throws Exception {
-		OMFactory fac = OMAbstractFactory.getOMFactory();
-		OMNamespace omNs = fac.createOMNamespace("", "");
-		OMElement rpcWrapEle = fac.createOMElement("echoOM", omNs);
-		OMElement data = fac.createOMElement("data", omNs);
-		expectedString = "my json string";
-		data.setText(expectedString);
-		rpcWrapEle.addChild(data);
-		return rpcWrapEle;
-	}
-
-	public void testEchoOMWithJSON() throws Exception {
-//		OMElement payload = createEnvelope();
-//		Options options = new Options();
-//		options.setTo(targetEPR);
-//
-//		options.setProperty(Constants.Configuration.MESSAGE_TYPE,
-//				"application/json");
-//		options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
-////		options.setTimeOutInMilliSeconds(1000);
-//		
-//		ServiceClient sender = new ServiceClient(configurationContext, null);
-//		options.setAction(null);
-//		sender.setOptions(options);
-//		options.setTo(targetEPR);
-//		OMElement result = sender.sendReceive(payload);
-//		OMElement ele = (OMElement) result.getFirstOMChild();
-//		compareWithCreatedOMText(ele.getText());
-	}
-
-	protected void compareWithCreatedOMText(String response) {
-		TestCase.assertEquals(response, expectedString);
-	}
+    private SimpleHTTPServer server;
+
+    private ConfigurationContext configurationContext;
+
+    public JSONIntegrationTest() {
+    }
+
+    protected void setUp() throws Exception {
+
+        File configFile = new File("test-resources/axis2.xml");
+        configurationContext = ConfigurationContextFactory
+                .createConfigurationContextFromFileSystem(null, configFile
+                        .getAbsolutePath());
+        server = new SimpleHTTPServer(configurationContext, TESTING_PORT);
+        try {
+            server.start();
+        } finally {
+
+        }
+        service = Utils.createSimpleService(serviceName, org.apache.axis2.json.Echo.class.getName(),
+                operationName);
+        server.getConfigurationContext().getAxisConfiguration().addService(
+                service);
+    }
+
+    protected void tearDown() throws Exception {
+        server.stop();
+    }
+
+    protected OMElement createEnvelope() throws Exception {
+        OMFactory fac = OMAbstractFactory.getOMFactory();
+        OMNamespace omNs = fac.createOMNamespace("", "");
+        OMElement rpcWrapEle = fac.createOMElement("echoOM", omNs);
+        OMElement data = fac.createOMElement("data", omNs);
+        OMElement data1 = fac.createOMElement("data", omNs);
+        expectedString = "my json string";
+        String expectedString1 = "my second json string";
+        data.setText(expectedString);
+        data1.setText(expectedString1);
+        rpcWrapEle.addChild(data);
+        rpcWrapEle.addChild(data1);
+        return rpcWrapEle;
+    }
+
+    public void testEchoOMWithJSON() throws Exception {
+        OMElement payload = createEnvelope();
+        Options options = new Options();
+        options.setTo(targetEPR);
+        options.setProperty(Constants.Configuration.MESSAGE_TYPE, getMessageType());
+        options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
+
+        ServiceClient sender = new ServiceClient(configurationContext, null);
+        options.setAction(null);
+        sender.setOptions(options);
+        options.setTo(targetEPR);
+        OMElement result = sender.sendReceive(payload);
+        OMElement ele = (OMElement) result.getFirstOMChild();
+        compareWithCreatedOMText(ele.getText());
+    }
+
+    protected String getMessageType() {
+        return "application/json";
+    }
+
+    protected void compareWithCreatedOMText(String response) {
+        TestCase.assertEquals(response, expectedString);
+    }
 
 }

Modified: webservices/axis2/branches/java/maven2/modules/kernel/conf/axis2.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/conf/axis2.xml?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/conf/axis2.xml (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/conf/axis2.xml Wed Jan 31 12:35:21 2007
@@ -67,18 +67,8 @@
     <!--Set the flag to true if you want to enable transport level session mangment-->
     <parameter name="manageTransportSession" locked="false">false</parameter>
 
-    <!--Following two parameters will be used to handle REST in Axis2. The default settings will make Axis2 to have two-->
-    <!--different endpoints, one for REST (AxisRESTServlet) one for SOAP message handling (AxisServlet). But following-->
-    <!--parameters help to tweak the message handling of two main servlets. -->
-
-    <!-- If the enableRESTInAxis2MainServlet is true, then Axis2MainServlet will handle both SOAP and REST messages -->
-    <parameter name="enableRESTInAxis2MainServlet" locked="true">false</parameter>
-
-    <!-- Following parameter will completely disable REST handling in both the servlets-->
+    <!-- Following parameter will completely disable REST handling in Axis2-->
     <parameter name="disableREST" locked="true">false</parameter>
-
-    <!-- This will disable the separate servlet we have for REST handling. -->
-    <parameter name="disableSeparateEndpointForREST" locked="true">false</parameter>
 
     <!-- If you have a frontend host which exposes this webservice using a different public URL  -->
     <!-- use this parameter to override autodetected url -->

Modified: webservices/axis2/branches/java/maven2/modules/kernel/project.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/project.xml?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/project.xml (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/project.xml Wed Jan 31 12:35:21 2007
@@ -186,7 +186,7 @@
             </properties>
         </dependency>
         <dependency>
-            <groupId>incubator-woden</groupId>
+            <groupId>org.apache.woden</groupId>
             <artifactId>woden</artifactId>
             <version>${woden.version}</version>
             <properties>
@@ -210,6 +210,14 @@
 					<include>**/*.xsl</include>
 				</includes>
 			</resource>
+			<resource>
+      <directory>../../</directory>
+      <targetPath>META-INF</targetPath>
+      <includes>
+        <include>NOTICE.txt</include>
+        <include>LICENSE.txt</include>
+      </includes>
+   </resource>
 		</resources>
 	<unitTest>
 	  <resources>

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/AxisFault.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/AxisFault.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/AxisFault.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/AxisFault.java Wed Jan 31 12:35:21 2007
@@ -26,6 +26,7 @@
 import org.apache.axiom.soap.SOAPFaultReason;
 import org.apache.axiom.soap.SOAPFaultRole;
 import org.apache.axiom.soap.SOAPHeader;
+import org.apache.axis2.context.MessageContext;
 
 import javax.xml.namespace.QName;
 import java.lang.reflect.InvocationTargetException;
@@ -86,6 +87,14 @@
     private Throwable cause;
 
     /**
+     * If not null, the messageContext represents the fault as it
+     * should be returned.  This is used by higher-level layers
+     * that want to generate the message themselves so that
+     * processing may take place before they return control (e.g. JAX-WS.)
+     */
+    private MessageContext faultMessageContext;
+    
+    /**
      * SOAP1.2: URI of faulting node. Null for unknown.
      * <p/>
      * The value of the Node element information item is the URI that
@@ -238,6 +247,19 @@
     }
 
     /**
+     * Create an AxisFault by providing a textual message and a MessageContext
+     * that contains the actual fault representation.
+     * 
+     * @param message A string that's really only useful for logging.
+     * @param faultMessageContext
+     */
+    public AxisFault(String message, MessageContext faultMessageContext)
+    {
+      super(message);
+      this.faultMessageContext = faultMessageContext;
+    }
+    
+    /**
      * Add a header to the list of fault headers
      *
      * @param header to add.
@@ -429,6 +451,18 @@
         return cause != null ? cause : super.getCause();
     }
 
+    /**
+     * Returns the MessageContext representation of the fault if the fault
+     * was created by providing that.  
+     * 
+     * @return The MessageContext representing the fault message or null if the
+     * fault was not created with MessageContext representation.
+     */
+    public MessageContext getFaultMessageContext()
+    {
+      return faultMessageContext;
+    }
+    
     class FaultReason {
 
         /**

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/Constants.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/Constants.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/Constants.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/Constants.java Wed Jan 31 12:35:21 2007
@@ -224,13 +224,20 @@
     public static final String ADDRESSING_ACTION = "WS-Addressing:Action";
     public static final String HTTP_FRONTEND_HOST_URL = "httpFrontendHostUrl";
     public static final String DEFAULT_REST_PATH = "rest";
-    
+    public static final String DEFAULT_SERVICES_PATH = "services";
+
     /**
      * Field Builder Selector
      */
     public static final String BUILDER_SELECTOR = "builderselector";
 
-
+    /**
+     * Property name for inbound fault processor to set a fault on the message
+     * context to be thrown by the client code in favour of a simple translation
+     * from SOAPFault to AxisFault 
+     */
+    public static final String INBOUND_FAULT_OVERRIDE = "inboundFaultOverride";
+    
     public static interface Configuration {
         public static final String ENABLE_REST = "enableREST";
         public static final String ENABLE_REST_THROUGH_GET = "restThroughGet";
@@ -264,11 +271,7 @@
 
         public static final String DRILL_DOWN_TO_ROOT_CAUSE_FOR_FAULT_REASON = "drillDownToRootCauseForFaultReason";
 
-        public static final String ENABLE_REST_IN_AXIS2_MAIN_SERVLET = "enableRESTInAxis2MainServlet";
-
         public static final String DISABLE_REST = "disableREST";
-
-        public static final String DISABLE_SEPARATE_ENDPOINT_FOR_REST = "disableSeparateEndpointForREST";
 
         // this will contain the keys of all the properties that will be in the message context
         public static final String TRANSPORT_URL = "TransportURL";

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingConstants.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingConstants.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingConstants.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingConstants.java Wed Jan 31 12:35:21 2007
@@ -81,6 +81,12 @@
     public static final String MESSAGEID_ATTRIBUTES = "messageidAttributes";
     
     /**
+     * When set to Boolean.TRUE this will cause the addressing out handler to output all
+     * populated addressing headers in a message, including any optional ones.
+     */
+    public static final String INCLUDE_OPTIONAL_HEADERS = "includeOptionalHeaders";
+    
+    /**
      * This property, if set to Boolean.TRUE, will mean that the addressing handler allows partially
      * ws-addressed messages to be sent even if they are then invalid rather than throwing a fault.
      * 

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingHelper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingHelper.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingHelper.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/AddressingHelper.java Wed Jan 31 12:35:21 2007
@@ -44,7 +44,7 @@
         EndpointReference replyTo = messageContext.getReplyTo();
         if (replyTo == null) {
             if (isDebugEnabled) {
-                log.debug("isReplyRedirected: ReplyTo is null. Returning false");
+                log.debug(messageContext.getLogIDString()+" isReplyRedirected: ReplyTo is null. Returning false");
             }
             return false;
         } else {
@@ -64,7 +64,7 @@
         EndpointReference faultTo = messageContext.getFaultTo();
         if (faultTo == null) {
             if (isDebugEnabled) {
-                log.debug("isReplyRedirected: FaultTo is null. Returning isReplyRedirected");
+                log.debug(messageContext.getLogIDString()+" isReplyRedirected: FaultTo is null. Returning isReplyRedirected");
             }
             return isReplyRedirected(messageContext);
         } else {

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/EndpointReferenceHelper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/EndpointReferenceHelper.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/EndpointReferenceHelper.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/EndpointReferenceHelper.java Wed Jan 31 12:35:21 2007
@@ -20,14 +20,17 @@
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import java.io.ByteArrayInputStream;
 
 import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
 
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
+import org.apache.axiom.om.impl.builder.StAXOMBuilder;
 import org.apache.axiom.om.util.AttributeHelper;
 import org.apache.axiom.om.util.ElementHelper;
 import org.apache.axiom.soap.SOAPFactory;
@@ -99,7 +102,24 @@
         //Second pass, identify the properties.
         fromOM(epr, eprOMElement, map, isFinalAddressingNamespace);
     }
-    
+
+    /**
+     * Populates an endpoint reference based on the <code>String</code> that is
+     * passed in. If the http://schemas.xmlsoap.org/ws/2004/08/addressing namespace
+     * is in effect then any reference properties will be saved as reference parameters.
+     * Regardless of the addressing namespace in effect, any elements present in the
+     * <code>String</code> that are not recognised are saved as extensibility elements.
+     *
+     * @param eprString string from the element of endpoint reference type
+     * @throws AxisFault if unable to locate an address element
+     */
+    public static EndpointReference fromOM(String eprString) throws AxisFault {
+        try {
+            return fromOM(new StAXOMBuilder(new ByteArrayInputStream(eprString.getBytes())).getDocumentElement());
+        } catch (XMLStreamException e) {
+            throw new AxisFault(e);
+        }
+    }
     /**
      * Populates an endpoint reference based on the <code>OMElement</code> that is
      * passed in. If the http://schemas.xmlsoap.org/ws/2004/08/addressing namespace
@@ -270,7 +290,6 @@
                 while (allAddrAttributes.hasNext()) {
                     OMAttribute attribute = (OMAttribute) allAddrAttributes.next();
                     addressAttributes.add(attribute);
-                    System.out.println("fromOM attr: "+attribute);
                 }
                 epr.setAddressAttributes(addressAttributes);
             }

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/RelatesTo.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/RelatesTo.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/RelatesTo.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/RelatesTo.java Wed Jan 31 12:35:21 2007
@@ -17,15 +17,52 @@
 
 package org.apache.axis2.addressing;
 
-import java.io.Serializable;
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
 import java.util.ArrayList;
 
+import org.apache.axis2.util.ObjectStateUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
 /**
  * Class RelatesTo
  */
-public class RelatesTo implements Serializable {
+public class RelatesTo implements Externalizable {
+
+    /*
+     * setup for logging
+     */
+    private static final Log log = LogFactory.getLog(RelatesTo.class);
 
-	private static final long serialVersionUID = 978799688901329012L;
+    private static final String myClassName = "RelatesTo";
+
+    /**
+     * @serial The serialization version ID tracks the version of the class.
+     * If a class definition changes, then the serialization/externalization
+     * of the class is affected. If a change to the class is made which is
+     * not compatible with the serialization/externalization of the class,
+     * then the serialization version ID should be updated.
+     * Refer to the "serialVer" utility to compute a serialization
+     * version ID.
+     */
+	private static final long serialVersionUID = -1120384315333414960L;
+
+    /**
+     * @serial Tracks the revision level of a class to identify changes to the 
+     * class definition that are compatible to serialization/externalization.
+     * If a class definition changes, then the serialization/externalization
+     * of the class is affected. 
+     * Refer to the writeExternal() and readExternal() methods.
+     */
+    // supported revision levels, add a new level to manage compatible changes
+    private static final int REVISION_1 = 1;
+    // current revision level of this object
+    private static final int revisionID = REVISION_1;
+
+    
 
 	/**
      * Field relationshipType
@@ -42,6 +79,13 @@
     /**
      * Constructor RelatesTo
      *
+     */
+    public RelatesTo() {
+    }
+
+    /**
+     * Constructor RelatesTo
+     *
      * @param value
      */
     public RelatesTo(String value) {
@@ -110,4 +154,122 @@
         return "Identifier: " + value
              + ", Relationship type: " + relationshipType;
     }
+
+
+    /* ===============================================================
+     * Externalizable support 
+     * ===============================================================
+     */
+    
+    /**
+     * Save the contents of this object.
+     * <p>
+     * NOTE: Transient fields and static fields are not saved.
+     *
+     * @param out    The stream to write the object contents to
+     * 
+     * @exception IOException
+     */
+    public void writeExternal(ObjectOutput out) throws IOException
+    {
+        // write out contents of this object
+
+        // NOTES: For each item, where appropriate,
+        //        write out the following information, IN ORDER:
+        //           the class name
+        //           the active or empty flag
+        //           the data length, if appropriate
+        //           the data   
+
+        //---------------------------------------------------------
+        // in order to handle future changes to the object 
+        // definition, be sure to maintain the 
+        // object level identifiers
+        //---------------------------------------------------------
+        // serialization version ID
+        out.writeLong(serialVersionUID);
+
+        // revision ID
+        out.writeInt(revisionID);
+
+        //---------------------------------------------------------
+        // various strings
+        //---------------------------------------------------------
+
+        // String relationshipType
+        ObjectStateUtils.writeString(out, relationshipType, "RelatesTo.relationshipType");
+
+        // String value
+        ObjectStateUtils.writeString(out, value, "RelatesTo.value");
+
+        //---------------------------------------------------------
+        // collections and lists
+        //---------------------------------------------------------
+
+        ObjectStateUtils.writeArrayList(out, extensibilityAttributes, "RelatesTo.extensibilityAttributes");
+
+    }
+
+
+    /**
+     * Restore the contents of the object that was 
+     * previously saved. 
+     * <p> 
+     * NOTE: The field data must read back in the same order and type
+     * as it was written.  Some data will need to be validated when 
+     * resurrected.
+     *
+     * @param in    The stream to read the object contents from 
+     * 
+     * @exception IOException
+     * @exception ClassNotFoundException
+     */
+    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
+    {
+        // serialization version ID
+        long suid = in.readLong();
+
+        // revision ID
+        int  revID = in.readInt();
+
+        // make sure the object data is in a version we can handle
+        if (suid != serialVersionUID)
+        {
+            throw new ClassNotFoundException(ObjectStateUtils.UNSUPPORTED_SUID);
+        }
+
+        // make sure the object data is in a revision level we can handle
+        if (revID != REVISION_1)
+        {
+            throw new ClassNotFoundException(ObjectStateUtils.UNSUPPORTED_REVID);
+        }
+
+
+        //---------------------------------------------------------
+        // various strings
+        //---------------------------------------------------------
+
+        // String relationshipType
+        relationshipType = ObjectStateUtils.readString(in,"RelatesTo.relationshipType");
+
+        // String value
+        value = ObjectStateUtils.readString(in, "RelatesTo.value");
+
+        //---------------------------------------------------------
+        // collections and lists
+        //---------------------------------------------------------
+
+        // ArrayList extensibilityAttributes
+        ArrayList tmpAL2 = ObjectStateUtils.readArrayList(in, "RelatesTo.extensibilityAttributes");
+        if (tmpAL2 != null)
+        {
+            extensibilityAttributes = new ArrayList(tmpAL2);
+        }
+        else
+        {
+            extensibilityAttributes = null;
+        }
+
+    }
+
 }

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/ServiceName.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/ServiceName.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/ServiceName.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/ServiceName.java Wed Jan 31 12:35:21 2007
@@ -20,6 +20,7 @@
 import javax.xml.namespace.QName;
 
 /**
+ * @deprecated I don't think this class is used anywhere. Shout if this is not the case.
  * Class ServiceName
  */
 public class ServiceName {

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11ActionHelper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11ActionHelper.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11ActionHelper.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11ActionHelper.java Wed Jan 31 12:35:21 2007
@@ -93,7 +93,7 @@
     	log.trace(result);
     	return result;
     }
-
+    
     private static String getWSAWActionExtensionAttribute(AttributeExtensible ae){
     	// Search first for a wsaw:Action using the submission namespace
     	Object attribute = ae.getExtensionAttribute(submissionWSAWNS);
@@ -136,4 +136,15 @@
     		return null;
     	}
     }
+    
+    public static String getInputActionFromStringInformation(String messageExchangePattern, String targetNamespace, String portTypeName, String operationName, String inputName){
+        return WSDL11DefaultActionPatternHelper.getInputActionFromStringInformation(messageExchangePattern, targetNamespace, portTypeName, operationName, inputName);
+    }
+    public static String getOutputActionFromStringInformation(String messageExchangePattern, String targetNamespace, String portTypeName, String operationName, String outputName){
+        return WSDL11DefaultActionPatternHelper.getOutputActionFromStringInformation(messageExchangePattern, targetNamespace, portTypeName, operationName, outputName);
+    }
+    public static String getFaultActionFromStringInformation(String targetNamespace, String portTypeName, String operationName, String faultName){
+        return WSDL11DefaultActionPatternHelper.getFaultActionFromStringInformation(targetNamespace, portTypeName, operationName, faultName);
+    }
+                
 }

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11DefaultActionPatternHelper.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11DefaultActionPatternHelper.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11DefaultActionPatternHelper.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/addressing/wsdl/WSDL11DefaultActionPatternHelper.java Wed Jan 31 12:35:21 2007
@@ -92,7 +92,7 @@
     	
     	return result;
     }
-    
+            
 	/**
 	 * Get the name of the specified Input element using the rules defined in WSDL 1.1
 	 * Section 2.4.5 http://www.w3.org/TR/wsdl#_names
@@ -121,6 +121,48 @@
 		return result;
 	}
     
+    protected static String getInputActionFromStringInformation(String messageExchangePattern, String targetNamespace, String portTypeName, String operationName, String inputName){
+        if(messageExchangePattern == null && inputName == null){
+            throw new IllegalArgumentException("One of messageExchangePattern or inputName must the non-null to generate an action.");
+        }
+               
+        // Determine the delimiter. Per the spec: 'is ":" when the [target namespace] is a URN, otherwise "/". 
+        // Note that for IRI schemes other than URNs which aren't path-based (i.e. those that outlaw the "/" 
+        // character), the default action value may not conform to the rules of the IRI scheme. Authors
+        // are advised to specify explicit values in the WSDL in this case.'
+        String delimiter = SLASH;
+        if(targetNamespace.toLowerCase().startsWith(URN)){
+            delimiter = COLON;
+        }
+        
+        if(inputName == null){
+            inputName = operationName;
+            if(messageExchangePattern.indexOf("in-out")>=0){
+                inputName+=REQUEST;
+            }
+        }
+        
+        // Append the bits together
+        StringBuffer sb = new StringBuffer();
+        sb.append(targetNamespace);
+        // Deal with the problem that the targetNamespace may or may not have a trailing delimiter
+        if(!targetNamespace.endsWith(delimiter)){
+            sb.append(delimiter);
+        }
+        sb.append(portTypeName);
+        sb.append(delimiter);
+        sb.append(inputName);
+        
+        // Resolve the action from the StringBuffer
+        String result = sb.toString();
+        
+        if(log.isTraceEnabled()){
+            log.trace("getInputActionFromStringInformation result: "+result);
+        }
+        
+        return result;
+    }
+    
 	/**
 	 * Generate the Action for an Output using the Default Action Pattern
 	 * 
@@ -199,6 +241,48 @@
 		return result;
 	}
     
+    protected static String getOutputActionFromStringInformation(String messageExchangePattern, String targetNamespace, String portTypeName, String operationName, String outputName){
+        if(messageExchangePattern == null && outputName == null){
+            throw new IllegalArgumentException("One of messageExchangePattern or outputName must the non-null to generate an action.");
+        }
+               
+        // Determine the delimiter. Per the spec: 'is ":" when the [target namespace] is a URN, otherwise "/". 
+        // Note that for IRI schemes other than URNs which aren't path-based (i.e. those that outlaw the "/" 
+        // character), the default action value may not conform to the rules of the IRI scheme. Authors
+        // are advised to specify explicit values in the WSDL in this case.'
+        String delimiter = SLASH;
+        if(targetNamespace.toLowerCase().startsWith(URN)){
+            delimiter = COLON;
+        }
+        
+        if(outputName == null){
+            outputName = operationName;
+            if(messageExchangePattern.indexOf("in-out")>=0){
+                outputName+=RESPONSE;
+            }
+        }
+        
+        // Append the bits together
+        StringBuffer sb = new StringBuffer();
+        sb.append(targetNamespace);
+        // Deal with the problem that the targetNamespace may or may not have a trailing delimiter
+        if(!targetNamespace.endsWith(delimiter)){
+            sb.append(delimiter);
+        }
+        sb.append(portTypeName);
+        sb.append(delimiter);
+        sb.append(outputName);
+        
+        // Resolve the action from the StringBuffer
+        String result = sb.toString();
+        
+        if(log.isTraceEnabled()){
+            log.trace("getOutputActionFromStringInformation result: "+result);
+        }
+        
+        return result;
+    }
+    
     /**
 	 * Generate the Action for a Fault using the Default Action Pattern
 	 * 
@@ -253,6 +337,41 @@
             log.trace("generateActionFromFaultElement result: "+result);
         }
     	
+        return result;
+    }
+    
+    protected static String getFaultActionFromStringInformation(String targetNamespace, String portTypeName, String operationName, String faultName){
+        // Determine the delimiter. Per the spec: 'is ":" when the [target namespace] is a URN, otherwise "/". 
+        // Note that for IRI schemes other than URNs which aren't path-based (i.e. those that outlaw the "/" 
+        // character), the default action value may not conform to the rules of the IRI scheme. Authors
+        // are advised to specify explicit values in the WSDL in this case.'
+        String delimiter = SLASH;
+        if(targetNamespace.toLowerCase().startsWith(URN)){
+            delimiter = COLON;
+        }
+        
+//      Append the bits together
+        StringBuffer sb = new StringBuffer();
+        sb.append(targetNamespace);
+        // Deal with the problem that the targetNamespace may or may not have a trailing delimiter
+        if(!targetNamespace.endsWith(delimiter)){
+            sb.append(delimiter);
+        }
+        sb.append(portTypeName);
+        sb.append(delimiter);
+        sb.append(operationName);
+        sb.append(delimiter);
+        sb.append(FAULT);
+        sb.append(delimiter);
+        sb.append(faultName);
+        
+        // Resolve the action from the StringBuffer
+        String result = sb.toString();
+        
+        if(log.isTraceEnabled()){
+            log.trace("getFaultActionFromStringInformation result: "+result);
+        }
+        
         return result;
     }
 }

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/OperationClient.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/OperationClient.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/OperationClient.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/OperationClient.java Wed Jan 31 12:35:21 2007
@@ -25,11 +25,11 @@
 import org.apache.axis2.context.OperationContext;
 import org.apache.axis2.context.ServiceContext;
 import org.apache.axis2.description.AxisOperation;
-import org.apache.axis2.description.TransportOutDescription;
 import org.apache.axis2.description.ClientUtils;
+import org.apache.axis2.description.TransportOutDescription;
 import org.apache.axis2.i18n.Messages;
-import org.apache.axis2.util.UUIDGenerator;
 import org.apache.axis2.util.TargetResolver;
+import org.apache.axis2.util.UUIDGenerator;
 import org.apache.axis2.wsdl.WSDLConstants;
 
 import java.util.Iterator;
@@ -47,31 +47,31 @@
  */
 public abstract class OperationClient {
 
-     protected AxisOperation axisOp;
- 
-     protected ServiceContext sc;
- 
-     protected Options options;
- 
-     protected OperationContext oc;
- 
-     protected Callback callback;
- 
-     /*
-      * indicates whether the MEP execution has completed (and hence ready for
-      * resetting)
-      */
-     protected boolean completed;
- 
-     protected OperationClient(AxisOperation axisOp, ServiceContext sc,
-                               Options options) {
-         this.axisOp = axisOp;
-         this.sc = sc;
-         this.options = options;
-         this.completed = false;
-         this.oc = new OperationContext(axisOp);
-         this.oc.setParent(this.sc);
-     }
+    protected AxisOperation axisOp;
+
+    protected ServiceContext sc;
+
+    protected Options options;
+
+    protected OperationContext oc;
+
+    protected Callback callback;
+
+    /*
+    * indicates whether the MEP execution has completed (and hence ready for
+    * resetting)
+    */
+    protected boolean completed;
+
+    protected OperationClient(AxisOperation axisOp, ServiceContext sc,
+                              Options options) {
+        this.axisOp = axisOp;
+        this.sc = sc;
+        this.options = new Options(options);
+        this.completed = false;
+        this.oc = new OperationContext(axisOp);
+        this.oc.setParent(this.sc);
+    }
 
     /**
      * Sets the options that should be used for this particular client. This
@@ -162,11 +162,11 @@
 
 
     /**
-     * To close the transport if necessary , can call this method. The main 
-     * usage of this method is when client uses two tarnsports for sending and 
-     * receiving , and we need to remove entries for waiting calls in the 
+     * To close the transport if necessary , can call this method. The main
+     * usage of this method is when client uses two tarnsports for sending and
+     * receiving , and we need to remove entries for waiting calls in the
      * transport listener queue.
-     * Note : DO NOT call this method if you are not using two transports to 
+     * Note : DO NOT call this method if you are not using two transports to
      * send and receive
      *
      * @param msgCtxt : MessageContext# which has all the transport information
@@ -215,7 +215,8 @@
 
     protected void addReferenceParameters(MessageContext msgctx) {
         EndpointReference to = msgctx.getTo();
-        if (options.isManageSession()) {
+        if (options.isManageSession() || (options.getParent() != null &&
+                options.getParent().isManageSession())) {
             EndpointReference tepr = sc.getTargetEPR();
             if (tepr != null) {
                 Map map = tepr.getAllReferenceParameters();
@@ -232,7 +233,7 @@
         }
     }
 
-    protected void prepareMessageContext(ConfigurationContext cc, MessageContext mc)  throws AxisFault{
+    protected void prepareMessageContext(ConfigurationContext cc, MessageContext mc) throws AxisFault {
         // set options on the message context
         if (mc.getSoapAction() == null || "".equals(mc.getSoapAction())) {
             mc.setSoapAction(options.getAction());

Modified: webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/Options.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/Options.java?view=diff&rev=501978&r1=501977&r2=501978
==============================================================================
--- webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/Options.java (original)
+++ webservices/axis2/branches/java/maven2/modules/kernel/src/org/apache/axis2/client/Options.java Wed Jan 31 12:35:21 2007
@@ -729,10 +729,6 @@
      * <p>The value should always be an instance of:</p>
      * <pre>org.apache.axis2.transport.http.HttpTransportProperties.ProxyProperties</pre>
      * </li>
-     * <p><a name="BASIC_AUTHENTICATION"></a></p>
-     * <li><b>org.apache.axis2.transport.http.HTTPConstants.BASIC_AUTHENTICATION</b>
-     * <p>This enables the user to pass in basic authentication information, such as host, port, realm, username, password to be used with HTTP transport sender. </p>
-     * <p/>
      * <p>The value should always be an instance of: </p>
      * <pre>org.apache.axis2.transport.http.HttpTransportProperties.BasicAuthentication</pre>
      * </li>



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org


Mime
View raw message