axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From az...@apache.org
Subject svn commit: r437698 - in /webservices/axis2/trunk/java/modules: integration/test/org/apache/axis2/swa/ kernel/src/org/apache/axis2/context/ kernel/src/org/apache/axis2/description/ kernel/src/org/apache/axis2/engine/ kernel/src/org/apache/axis2/transpo...
Date Mon, 28 Aug 2006 13:17:17 GMT
Author: azeez
Date: Mon Aug 28 06:17:16 2006
New Revision: 437698

URL: http://svn.apache.org/viewvc?rev=437698&view=rev
Log:
Use proper context root for Axis2 WAR, and compute the service context path based on this context root


Modified:
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/EchoRawSwATest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/swainput.bin
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/AxisService.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AddressingBasedDispatcher.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/RequestURIBasedDispatcher.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/SOAPMessageBodyBasedDispatcher.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AxisServlet.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPWorker.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/ListingAgent.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/SimpleHTTPServer.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/server/DefaultHttpServiceProcessor.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/SimpleMailListener.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPServer.java
    webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/engine/EnginePausingTest.java

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/EchoRawSwATest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/EchoRawSwATest.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/EchoRawSwATest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/EchoRawSwATest.java Mon Aug 28 06:17:16 2006
@@ -63,7 +63,8 @@
     }
 
     public static Test suite() {
-        return getTestSetup2(new TestSuite(EchoRawSwATest.class),Constants.TESTING_PATH + "MTOM-enabledRepository");
+        return getTestSetup2(new TestSuite(EchoRawSwATest.class),
+                             Constants.TESTING_PATH + "MTOM-enabledRepository");
     }
 
     protected void setUp() throws Exception {

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/swainput.bin
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/swainput.bin?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/swainput.bin (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/swa/swainput.bin Mon Aug 28 06:17:16 2006
@@ -1,4 +1,4 @@
-POST /axis/services/EchoSwAService/echoAttachment HTTP/1.0
+POST /axis2/services/EchoSwAService/echoAttachment HTTP/1.0
 Content-Type: multipart/related; type="text/xml"; start="<9D645C8EBB837CE54ABD027A3659535D>"; 	boundary="----=_Part_0_1977511.1123163571138"
 Accept: application/soap+xml, application/dime, multipart/related, text/*
 User-Agent: Axis/1.2.1
@@ -20,6 +20,6 @@
 Content-Transfer-Encoding: binary
 Content-Id: <3936AE19FBED55AE4620B81C73BDD76E>
 
-Apache Axis2 - The NExt Generation Web Services Engine
+Apache Axis2 - The NExt Generation Web Services Engine
 
 ------=_Part_0_1977511.1123163571138--

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java Mon Aug 28 06:17:16 2006
@@ -60,9 +60,9 @@
     private long serviceGroupContextTimoutInterval = 30 * 1000;
 
     //To specify url mapping for services
-    private String servicePath = "services";
+    private String contextRoot = "/axis2";
+    private String serviceContextPath = contextRoot + "/services";
     //To have your own context path
-    private String contextPath = "axis2";
 
     public ConfigurationContext(AxisConfiguration axisConfiguration) {
         super(null);
@@ -121,13 +121,13 @@
                         axisServiceGroup = (AxisServiceGroup) messageContext.getAxisService().getParent();
                     }
                     serviceGroupContext = new ServiceGroupContext(messageContext.getConfigurationContext(),
-                            axisServiceGroup);
+                                                                  axisServiceGroup);
                     applicationSessionServiceGroupContextTable.put(serviceGroupName, serviceGroupContext);
                 }
                 serviceContext = serviceGroupContext.getServiceContext(axisService);
 
             } else if (!isNull(serviceGroupContextId)
-                    && (getServiceGroupContext(serviceGroupContextId, messageContext) != null)) {
+                       && (getServiceGroupContext(serviceGroupContextId, messageContext) != null)) {
 
                 // SGC is already there
                 serviceGroupContext =
@@ -256,8 +256,8 @@
             }
         }
         if (serviceGroupContext == null
-                && msgContext != null
-                && msgContext.getSessionContext() != null) {
+            && msgContext != null
+            && msgContext.getSessionContext() != null) {
             serviceGroupContext = msgContext.getSessionContext().getServiceGroupContext(
                     serviceGroupContextId);
         }
@@ -331,7 +331,7 @@
                 ServiceGroupContext serviceGroupContext =
                         (ServiceGroupContext) serviceGroupContextMap.get(sgCtxtId);
                 if ((currentTime - serviceGroupContext.getLastTouchedTime()) >
-                        getServiceGroupContextTimoutInterval()) {
+                    getServiceGroupContextTimoutInterval()) {
                     sgCtxtMapKeyIter.remove();
                     cleanupServiceContexts(serviceGroupContext);
                 }
@@ -361,7 +361,8 @@
 
     public void cleanupContexts() {
         if (applicationSessionServiceGroupContextTable.size() > 0) {
-            Iterator applicationScopeSgs = applicationSessionServiceGroupContextTable.values().iterator();
+            Iterator applicationScopeSgs =
+                    applicationSessionServiceGroupContextTable.values().iterator();
             while (applicationScopeSgs.hasNext()) {
                 ServiceGroupContext serviceGroupContext =
                         (ServiceGroupContext) applicationScopeSgs.next();
@@ -371,40 +372,42 @@
         if (serviceGroupContextMap.size() > 0) {
             Iterator sopaSessionSgs = serviceGroupContextMap.values().iterator();
             while (sopaSessionSgs.hasNext()) {
-                ServiceGroupContext serviceGroupContext = (ServiceGroupContext) sopaSessionSgs.next();
+                ServiceGroupContext serviceGroupContext =
+                        (ServiceGroupContext) sopaSessionSgs.next();
                 cleanupServiceContexts(serviceGroupContext);
             }
         }
     }
 
-    public String getServicePath() {
-        return servicePath;
+    public String getServiceContextPath() {
+        return serviceContextPath;
     }
 
-    public void setServicePath(String servicePath) throws AxisFault {
-        if (servicePath == null || "".equals(servicePath)) {
-            throw new AxisFault("service path can not be null");
+    public void setServiceContextPath(String serviceContextPath) {
+        if (serviceContextPath == null || "".equals(serviceContextPath)) {
+            throw new IllegalArgumentException("service path cannot be null or empty");
         }
-        this.servicePath = servicePath;
-    }
-
-    public String getContextPath() {
-        if (contextPath != null && !"".equals(contextPath)) {
-            return "/" + contextPath + "/" + servicePath;
+        if (contextRoot != null && contextRoot.trim().length() != 0 && !contextRoot.equals("/")) {
+            this.serviceContextPath = contextRoot + "/" + serviceContextPath;
         } else {
-            return "/" + servicePath;
+            this.serviceContextPath = "/" + serviceContextPath;
         }
     }
 
-    public void setContextPath(String contextPath) {
-        this.contextPath = contextPath;
+    public String getContextRoot() {
+        return this.contextRoot;
+    }
+
+    public void setContextRoot(String contextRoot) {
+        this.contextRoot = contextRoot;
     }
 
     /**
      * This will be used to fetch the serviceGroupContextTimoutInterval from any place available.
      */
     public long getServiceGroupContextTimoutInterval() {
-        Integer serviceGroupContextTimoutIntervalParam = (Integer) getProperty(Constants.Configuration.CONFIG_CONTEXT_TIMOUT_INTERVAL);
+        Integer serviceGroupContextTimoutIntervalParam =
+                (Integer) getProperty(Constants.Configuration.CONFIG_CONTEXT_TIMOUT_INTERVAL);
         if (serviceGroupContextTimoutIntervalParam != null) {
             serviceGroupContextTimoutInterval = serviceGroupContextTimoutIntervalParam.intValue();
         }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java Mon Aug 28 06:17:16 2006
@@ -64,7 +64,7 @@
             ((DeploymentEngine) axisConfigurator).setConfigContext(configContext);
         }
         //To override context path
-        setContextPath(axisConfig, configContext);
+        setContextPaths(axisConfig, configContext);
         //To check whether transport level session managment is require or not
         configureTransportSessionManagement(axisConfig);
         init(configContext);
@@ -108,20 +108,21 @@
         }
     }
 
-    private static void setContextPath(AxisConfiguration axisConfig, ConfigurationContext configContext) throws AxisFault {
+    private static void setContextPaths(AxisConfiguration axisConfig,
+                                        ConfigurationContext configContext) {
         // Checking for context path
-        Parameter servicePath = axisConfig.getParameter(Constants.SERVICE_PATH);
-        if (servicePath != null) {
-            String spath = ((String) servicePath.getValue()).trim();
-            if (spath.length() > 0) {
-                configContext.setServicePath(spath);
-            }
-        }
         Parameter contextPath = axisConfig.getParameter(Constants.CONTEXT_PATH);
         if (contextPath != null) {
             String cpath = ((String) contextPath.getValue()).trim();
             if (cpath.length() > 0) {
-                configContext.setContextPath(cpath);
+                configContext.setContextRoot(cpath);
+            }
+        }
+        Parameter servicePath = axisConfig.getParameter(Constants.SERVICE_PATH);
+        if (servicePath != null) {
+            String spath = ((String) servicePath.getValue()).trim();
+            if (spath.length() > 0) {
+                configContext.setServiceContextPath(spath);
             }
         }
     }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/AxisService.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/AxisService.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/AxisService.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/AxisService.java Mon Aug 28 06:17:16 2006
@@ -31,6 +31,7 @@
 import org.apache.axis2.modules.Module;
 import org.apache.axis2.phaseresolver.PhaseResolver;
 import org.apache.axis2.transport.TransportListener;
+import org.apache.axis2.transport.http.server.HttpUtils;
 import org.apache.axis2.util.PolicyUtil;
 import org.apache.axis2.util.XMLUtils;
 import org.apache.axis2.wsdl.WSDLConstants;
@@ -58,6 +59,7 @@
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.net.URL;
+import java.net.SocketException;
 import java.util.*;
 
 /**
@@ -526,7 +528,7 @@
         AxisOperation axisOperation = getOperation(new QName(operationName));
         if (axisOperation == null) {
             throw new AxisFault(Messages.getMessage("invalidoperation",
-                    operationName));
+                                                    operationName));
         }
         PolicyUtil.writePolicy(axisOperation.getPolicyInclude(), out);
     }
@@ -553,14 +555,21 @@
                 printWSDLError(out);
             }
         } else {
-            ArrayList eprList = new ArrayList();
-            String[] eprArray = getServiceEprs(requestIP, eprList);
+            String[] eprArray = getEPRs();
             getWSDL(out, eprArray, servicePath);
         }
     }
 
-    private String[] getServiceEprs(String requestIP, ArrayList eprList) throws AxisFault {
+    public String[] getEPRs() throws AxisFault {
+        //TODO: Chinthaka Handle the REST EPRs
+        String requestIP;
+        try {
+            requestIP = HttpUtils.getIpAddress();
+        } catch (SocketException e) {
+            throw new AxisFault("Cannot get local IP address", e);
+        }
         AxisConfiguration axisConfig = getAxisConfiguration();
+        ArrayList eprList = new ArrayList();
         if (enableAllTransports) {
             Iterator transports = axisConfig.getTransportsIn().values().iterator();
             while (transports.hasNext()) {
@@ -569,13 +578,14 @@
                 if (listener != null) {
                     try {
                         if (listener.getEPRForService(getName(), requestIP) != null) {
-                            String address = listener.getEPRForService(getName(), requestIP).getAddress();
+                            String address =
+                                    listener.getEPRForService(getName(), requestIP).getAddress();
                             if (address != null) {
                                 eprList.add(address);
                             }
                         }
                     } catch (AxisFault axisFault) {
-                        log.info(axisFault.getMessage());
+                        log.warn(axisFault.getMessage());
                     }
                 }
             }
@@ -590,15 +600,16 @@
                     if (listener != null) {
                         try {
                             if (listener.getEPRForService(getName(), requestIP)
-                                    != null) {
-                                String address = listener.getEPRForService(
-                                        getName(), requestIP).getAddress();
+                                != null) {
+                                String address =
+                                        listener.getEPRForService(getName(),
+                                                                  requestIP).getAddress();
                                 if (address != null) {
                                     eprList.add(address);
                                 }
                             }
                         } catch (AxisFault axisFault) {
-                            log.info(axisFault.getMessage());
+                            log.warn(axisFault.getMessage());
                         }
                     }
                 }
@@ -632,7 +643,7 @@
     private void getWSDL(OutputStream out, String [] serviceURL, String servicePath) throws AxisFault {
         if (isWsdlfound()) {
             AxisService2OM axisService2WOM = new AxisService2OM(this,
-                    serviceURL, "document", "literal", servicePath);
+                                                                serviceURL, "document", "literal", servicePath);
             try {
                 OMElement wsdlElement = axisService2WOM.generateOM();
                 wsdlElement.serialize(out);
@@ -650,10 +661,10 @@
     private void printWSDLError(OutputStream out) throws AxisFault {
         try {
             String wsdlntfound = "<error>" +
-                    "<description>Unable to generate WSDL for this service</description>" +
-                    "<reason>Either user has not dropped the wsdl into META-INF or" +
-                    " operations use message receivers other than RPC.</reason>" +
-                    "</error>";
+                                 "<description>Unable to generate WSDL for this service</description>" +
+                                 "<reason>Either user has not dropped the wsdl into META-INF or" +
+                                 " operations use message receivers other than RPC.</reason>" +
+                                 "</error>";
             out.write(wsdlntfound.getBytes());
             out.flush();
             out.close();
@@ -666,16 +677,16 @@
     public void printWSDL2(OutputStream out) throws AxisFault {
         setWsdlfound(true);
         //pick the endpoint and take it as the epr for the WSDL
-        getWSDL2(out, new String[]{getEndpoint()}, "services");
+        getWSDL2(out, new String[]{getEndpoint()});
     }
 
-    public void printWSDL2(OutputStream out, String requestIP, String servicePath) throws AxisFault {
-        ArrayList eprList = new ArrayList();
-        String[] eprArray = getServiceEprs(requestIP, eprList);
-        getWSDL2(out, eprArray, servicePath);
+    public void printWSDL2(OutputStream out,
+                           String requestIP,
+                           String servicePath) throws AxisFault {
+        getWSDL2(out, getEPRs());
     }
 
-    private void getWSDL2(OutputStream out, String [] serviceURL, String servicePath) throws AxisFault {
+    private void getWSDL2(OutputStream out, String [] serviceURL) throws AxisFault {
         if (isWsdlfound()) {
             AxisService2WSDL2 axisService2WSDL2 = new AxisService2WSDL2(this, serviceURL);
             try {
@@ -935,9 +946,9 @@
      */
     public void setScope(String scope) {
         if (Constants.SCOPE_APPLICATION.equals(scope) ||
-                Constants.SCOPE_TRANSPORT_SESSION.equals(scope) ||
-                Constants.SCOPE_SOAP_SESSION.equals(scope) ||
-                Constants.SCOPE_REQUEST.equals(scope)) {
+            Constants.SCOPE_TRANSPORT_SESSION.equals(scope) ||
+            Constants.SCOPE_SOAP_SESSION.equals(scope) ||
+            Constants.SCOPE_REQUEST.equals(scope)) {
             this.scope = scope;
         }
     }
@@ -1209,8 +1220,8 @@
         SchemaGenerator schemaGenerator;
         try {
             schemaGenerator = new SchemaGenerator(serviceClassLoader,
-                    implClass, schemaNameSpace,
-                    axisService.getSchematargetNamespacePrefix());
+                                                  implClass, schemaNameSpace,
+                                                  axisService.getSchematargetNamespacePrefix());
             schemaGenerator.setElementFormDefault(Java2WSDLConstants.FORM_DEFAULT_UNQUALIFIED);
             axisService.setElementFormDefault(false);
             ArrayList excludeOpeartion = new ArrayList();
@@ -1248,10 +1259,10 @@
                 operation.setMessageReceiver(messageReceiver);
             } catch (IllegalAccessException e) {
                 throw new AxisFault("IllegalAccessException occured during message receiver loading"
-                        + e.getMessage());
+                                    + e.getMessage());
             } catch (InstantiationException e) {
                 throw new AxisFault("InstantiationException occured during message receiver loading"
-                        + e.getMessage());
+                                    + e.getMessage());
             }
             pinfo.setOperationPhases(operation);
             axisService.addOperation(operation);
@@ -1267,7 +1278,7 @@
             clazz = Class.forName("org.apache.axis2.rpc.receivers.RPCMessageReceiver");
         } catch (ClassNotFoundException e) {
             throw new AxisFault("ClassNotFoundException occured during message receiver loading"
-                    + e.getMessage());
+                                + e.getMessage());
         }
 
         return createService(implClass, axisConfig, clazz);
@@ -1360,12 +1371,12 @@
                     if (s != null) {
                         calcualteSchemaNames(Arrays.asList(
                                 new XmlSchema[]{s}),
-                                nameTable);
+                                             nameTable);
                         nameTable.put(s,
-                                ("xsd" + count++)
-                                        + (customSchemaNameSuffix != null ?
-                                        customSchemaNameSuffix :
-                                        ""));
+                                      ("xsd" + count++)
+                                      + (customSchemaNameSuffix != null ?
+                                         customSchemaNameSuffix :
+                                         ""));
                     }
 
                 }
@@ -1395,13 +1406,13 @@
                                 new XmlSchema[]{s}), nameTable);
                         xmlSchemaExternal.setSchemaLocation(
                                 customSchemaNamePrefix == null ?
-                                        //use the default mode
-                                        (getName() +
-                                                "?xsd=" +
-                                                nameTable.get(s)) :
-                                        //custom prefix is present - add the custom prefix
-                                        (customSchemaNamePrefix +
-                                                nameTable.get(s)));
+                                //use the default mode
+                                (getName() +
+                                 "?xsd=" +
+                                 nameTable.get(s)) :
+                                                   //custom prefix is present - add the custom prefix
+                                                   (customSchemaNamePrefix +
+                                                    nameTable.get(s)));
                     }
                 }
             }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AddressingBasedDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AddressingBasedDispatcher.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AddressingBasedDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AddressingBasedDispatcher.java Mon Aug 28 06:17:16 2006
@@ -77,7 +77,7 @@
 
             QName serviceName;
             String[] values = Utils.parseRequestURLForServiceAndOperation(address,
-                    messageContext.getConfigurationContext().getServicePath());
+                    messageContext.getConfigurationContext().getServiceContextPath());
             if (values == null) {
                 return null;
             }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/RequestURIBasedDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/RequestURIBasedDispatcher.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/RequestURIBasedDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/RequestURIBasedDispatcher.java Mon Aug 28 06:17:16 2006
@@ -51,7 +51,7 @@
         if (toEPR != null) {
             String filePart = toEPR.getAddress();
             String[] values = Utils.parseRequestURLForServiceAndOperation(filePart ,
-                    messageContext.getConfigurationContext().getServicePath());
+                    messageContext.getConfigurationContext().getServiceContextPath());
 
             if ((values.length >= 2) && (values[1] != null)) {
                 QName operationName = new QName(values[1]);
@@ -84,7 +84,7 @@
             String filePart = toEPR.getAddress();
             //REVIEW: (nagy) Parsing the RequestURI will also give us the operationName if present, so we could conceivably store it in the MessageContext, but doing so and retrieving it is probably no faster than simply reparsing the URI
             String[] values = Utils.parseRequestURLForServiceAndOperation(filePart ,
-                    messageContext.getConfigurationContext().getServicePath());
+                    messageContext.getConfigurationContext().getServiceContextPath());
 
             if ((values.length >= 1) && (values[0] != null)) {
                 AxisConfiguration registry =

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/SOAPMessageBodyBasedDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/SOAPMessageBodyBasedDispatcher.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/SOAPMessageBodyBasedDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/SOAPMessageBodyBasedDispatcher.java Mon Aug 28 06:17:16 2006
@@ -81,7 +81,7 @@
                                 + filePart);
 
                 String[] values = Utils.parseRequestURLForServiceAndOperation(filePart ,
-                        messageContext.getConfigurationContext().getServicePath());
+                        messageContext.getConfigurationContext().getServiceContextPath());
 
                 if (values[1] != null) {
                     operationName = new QName(values[1]);

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AxisServlet.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AxisServlet.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AxisServlet.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/AxisServlet.java Mon Aug 28 06:17:16 2006
@@ -286,7 +286,7 @@
             listenerManager.addListener(transportInDescription, true);
             ListenerManager.defaultConfigurationContext = configContext;
             agent = new ListingAgent(configContext);
-            SERVICE_PATH = configContext.getServicePath();
+            SERVICE_PATH = configContext.getServiceContextPath();
 
             initParams();
 
@@ -407,7 +407,7 @@
             try {
                 String[] array = servletConfig.getServletContext().getResource("/").toString().split("/");
                 contextPath = array[array.length - 1];
-                configContext.setContextPath(contextPath);
+                configContext.setContextRoot(contextPath);
             } catch (Exception e) {
             }
             if (contextPath == null) {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java Mon Aug 28 06:17:16 2006
@@ -23,10 +23,10 @@
 import org.apache.axiom.om.impl.builder.StAXBuilder;
 import org.apache.axiom.om.impl.builder.StAXOMBuilder;
 import org.apache.axiom.om.util.StAXUtils;
-import org.apache.axiom.soap.*;
 import org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder;
 import org.apache.axiom.soap.impl.llom.soap11.SOAP11Factory;
 import org.apache.axiom.soap.impl.llom.soap12.SOAP12Factory;
+import org.apache.axiom.soap.*;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.Constants;
 import org.apache.axis2.addressing.EndpointReference;
@@ -52,10 +52,14 @@
 public class HTTPTransportUtils {
 
 
-    public static SOAPEnvelope createEnvelopeFromGetRequest(String requestUrl, Map map,
-                                                            ConfigurationContext configurationContext) throws AxisFault {
-        String[] values = Utils.parseRequestURLForServiceAndOperation(requestUrl,
-                configurationContext.getServicePath());
+    public static SOAPEnvelope
+            createEnvelopeFromGetRequest(String requestUrl,
+                                         Map map,
+                                         ConfigurationContext configCtx) throws AxisFault {
+        String[] values =
+                Utils.parseRequestURLForServiceAndOperation(requestUrl,
+                                                            configCtx.
+                                                                    getServiceContextPath());
 
         if (values == null) {
             return new SOAP11Factory().getDefaultEnvelope();
@@ -63,7 +67,7 @@
 
         if ((values[1] != null) && (values[0] != null)) {
             String srvice = values[0];
-            AxisService service = configurationContext.getAxisConfiguration().getService(srvice);
+            AxisService service = configCtx.getAxisConfiguration().getService(srvice);
             if (service == null) {
                 throw new AxisFault("service not found: " + srvice);
             }
@@ -72,10 +76,10 @@
             SOAPEnvelope envelope = soapFactory.getDefaultEnvelope();
 //            OMNamespace omNs = soapFactory.createOMNamespace(values[0], "services");
             OMNamespace omNs = soapFactory.createOMNamespace(service.getSchematargetNamespace(),
-                    service.getSchematargetNamespacePrefix());
+                                                             service.getSchematargetNamespacePrefix());
             //OMNamespace defualtNs = new OMNamespaceImpl("", null, soapFactory);
             soapFactory.createOMNamespace(service.getSchematargetNamespace(),
-                    service.getSchematargetNamespacePrefix());
+                                          service.getSchematargetNamespacePrefix());
             OMElement opElement = soapFactory.createOMElement(operation, omNs);
             Iterator it = map.keySet().iterator();
 
@@ -125,7 +129,7 @@
         msgContext.setServerSide(true);
 
         SOAPEnvelope envelope = HTTPTransportUtils.createEnvelopeFromGetRequest(requestURI,
-                requestParameters, configurationContext);
+                                                                                requestParameters, configurationContext);
 
         if (envelope == null) {
             return false;
@@ -151,14 +155,15 @@
             Map headers = (Map) msgContext.getProperty(MessageContext.TRANSPORT_HEADERS);
             if (headers != null) {
                 if (HTTPConstants.COMPRESSION_GZIP.equals(headers.get(HTTPConstants.HEADER_CONTENT_ENCODING)) ||
-                        HTTPConstants.COMPRESSION_GZIP.equals(headers.get(HTTPConstants.HEADER_CONTENT_ENCODING.toLowerCase()))) {
+                    HTTPConstants.COMPRESSION_GZIP.equals(headers.get(HTTPConstants.HEADER_CONTENT_ENCODING.toLowerCase())))
+                {
                     in = new GZIPInputStream(in);
                 }
             }
 
             // remove the starting and trailing " from the SOAP Action
             if ((soapActionHeader != null) && soapActionHeader.startsWith("\"")
-                    && soapActionHeader.endsWith("\"")) {
+                && soapActionHeader.endsWith("\"")) {
                 soapActionHeader = soapActionHeader.substring(1, soapActionHeader.length() - 1);
             }
 
@@ -185,18 +190,18 @@
                     // If charset is not specified
                     if (TransportUtils.getCharSetEncoding(contentType) == null) {
                         xmlreader = StAXUtils.createXMLStreamReader(in,
-                                MessageContext.DEFAULT_CHAR_SET_ENCODING);
+                                                                    MessageContext.DEFAULT_CHAR_SET_ENCODING);
 
                         // Set the encoding scheme in the message context
                         msgContext.setProperty(Constants.Configuration.CHARACTER_SET_ENCODING,
-                                MessageContext.DEFAULT_CHAR_SET_ENCODING);
+                                               MessageContext.DEFAULT_CHAR_SET_ENCODING);
                     } else {
 
                         // get the type of char encoding
                         String charSetEnc = TransportUtils.getCharSetEncoding(contentType);
 
                         xmlreader = StAXUtils.createXMLStreamReader(in,
-                                charSetEnc);
+                                                                    charSetEnc);
 
                         // Setting the value in msgCtx
                         msgContext.setProperty(Constants.Configuration.CHARACTER_SET_ENCODING, charSetEnc);
@@ -208,7 +213,7 @@
                         // it is SOAP 1.2
                         builder =
                                 new StAXSOAPModelBuilder(xmlreader,
-                                        SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
+                                                         SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
                         envelope = (SOAPEnvelope) builder.getDocumentElement();
                     } else if (contentType.indexOf(SOAP11Constants.SOAP_11_CONTENT_TYPE) > -1) {
                         soap11 = true;
@@ -244,11 +249,11 @@
 
             if (builder == null) {
                 XMLStreamReader xmlreader = StAXUtils.createXMLStreamReader(in,
-                        MessageContext.DEFAULT_CHAR_SET_ENCODING);
+                                                                            MessageContext.DEFAULT_CHAR_SET_ENCODING);
 
                 // Set the encoding scheme in the message context
                 msgContext.setProperty(Constants.Configuration.CHARACTER_SET_ENCODING,
-                        MessageContext.DEFAULT_CHAR_SET_ENCODING);
+                                       MessageContext.DEFAULT_CHAR_SET_ENCODING);
                 builder = new StAXSOAPModelBuilder(
                         xmlreader, SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);
                 envelope = (SOAPEnvelope) builder.getDocumentElement();
@@ -257,7 +262,7 @@
             String charsetEncoding = builder.getDocument().getCharsetEncoding();
 
             if ((charsetEncoding != null) && !"".equals(charsetEncoding)
-                    && ! charsetEncoding.equalsIgnoreCase((String) msgContext.getProperty(
+                && ! charsetEncoding.equalsIgnoreCase((String) msgContext.getProperty(
                     Constants.Configuration.CHARACTER_SET_ENCODING))) {
                 String faultCode;
 
@@ -270,7 +275,7 @@
 
                 throw new AxisFault(
                         "Character Set Encoding from " + "transport information do not match with "
-                                + "character set encoding in the received SOAP message", faultCode);
+                        + "character set encoding in the received SOAP message", faultCode);
             }
 
             msgContext.setEnvelope(envelope);

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPWorker.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPWorker.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPWorker.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPWorker.java Mon Aug 28 06:17:16 2006
@@ -56,8 +56,8 @@
             final MessageContext msgContext) throws HttpException, IOException {    
 
         ConfigurationContext configurationContext = msgContext.getConfigurationContext();
-        final String contextPath = configurationContext.getContextPath() + "/";;
-        final String servicePath = configurationContext.getServicePath();;
+        final String contextPath = configurationContext.getContextRoot() + "/";
+        final String servicePath = configurationContext.getServiceContextPath();
 
         HttpVersion ver = request.getRequestLine().getHttpVersion();
         String uri = request.getRequestLine().getUri();

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/ListingAgent.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/ListingAgent.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/ListingAgent.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/ListingAgent.java Mon Aug 28 06:17:16 2006
@@ -49,7 +49,7 @@
 
     public ListingAgent(ConfigurationContext aConfigContext) {
         super(aConfigContext);
-        servicePath = aConfigContext.getServicePath();
+        servicePath = aConfigContext.getServiceContextPath();
     }
 
     private void addTransportListner(String schema, int port) {
@@ -256,7 +256,7 @@
 
         public void init(ConfigurationContext axisConf,
                          TransportInDescription transprtIn) throws AxisFault {
-            contextPath = axisConf.getContextPath();
+            contextPath = axisConf.getServiceContextPath();
         }
 
         public void start() throws AxisFault {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/SimpleHTTPServer.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/SimpleHTTPServer.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/SimpleHTTPServer.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/SimpleHTTPServer.java Mon Aug 28 06:17:16 2006
@@ -82,7 +82,7 @@
         TransportInDescription httpDescription = new TransportInDescription(new QName(Constants.TRANSPORT_HTTP));
         httpDescription.setReceiver(this);
         httpFactory.getListenerManager().addListener(httpDescription, true);
-        contextPath = configurationContext.getContextPath();
+        contextPath = configurationContext.getServiceContextPath();
     }
 
     /**
@@ -110,7 +110,7 @@
             else
                 hostAddress = httpFactory.getHostAddress();
 
-            contextPath = configurationContext.getContextPath();
+            contextPath = configurationContext.getServiceContextPath();
         } catch (Exception e1) {
             throw new AxisFault(e1);
         }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/server/DefaultHttpServiceProcessor.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/server/DefaultHttpServiceProcessor.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/server/DefaultHttpServiceProcessor.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/server/DefaultHttpServiceProcessor.java Mon Aug 28 06:17:16 2006
@@ -67,14 +67,14 @@
 
     private static final Log LOG = LogFactory.getLog(DefaultHttpServiceProcessor.class);
     private static final Log HEADERLOG = LogFactory.getLog("org.apache.axis2.transport.http.server.wire");
-    
+
     private final ConfigurationContext configurationContext;
     private final SessionManager sessionManager;
     private final Worker worker;
     private final IOProcessorCallback callback;
-    
+
     private HttpContext httpcontext = null;
-    
+
     public DefaultHttpServiceProcessor(
             final HttpServerConnection conn,
             final ConfigurationContext configurationContext,
@@ -95,17 +95,17 @@
         this.sessionManager = sessionManager;
         this.worker = worker;
         this.callback = callback;
-        
+
         // Add required protocol interceptors
         addInterceptor(new RequestSessionCookie());
         addInterceptor(new ResponseDate());
-        addInterceptor(new ResponseServer());                    
+        addInterceptor(new ResponseServer());
         addInterceptor(new ResponseContent());
         addInterceptor(new ResponseConnControl());
         addInterceptor(new ResponseSessionCookie());
     }
-    
-    protected void postprocessResponse(final HttpResponse response, final HttpContext context) 
+
+    protected void postprocessResponse(final HttpResponse response, final HttpContext context)
             throws IOException, HttpException {
         super.postprocessResponse(response, context);
         if (HEADERLOG.isDebugEnabled()) {
@@ -117,7 +117,7 @@
         }
     }
 
-    protected void preprocessRequest(final HttpRequest request, final HttpContext context) 
+    protected void preprocessRequest(final HttpRequest request, final HttpContext context)
             throws IOException, HttpException {
         // As of next version of HttpCore the HTTP execution context can be retrieved 
         // by calling #getContext()
@@ -132,27 +132,27 @@
         }
     }
 
-    protected void doService(final HttpRequest request, final HttpResponse response) 
+    protected void doService(final HttpRequest request, final HttpResponse response)
             throws HttpException, IOException {
         RequestLine reqline = request.getRequestLine();
         if (LOG.isDebugEnabled()) {
             LOG.debug("Request method: " + reqline.getMethod());
             LOG.debug("Target URI: " + reqline.getUri());
         }
-        
+
         HttpVersion ver = reqline.getHttpVersion();
         if (!ver.lessEquals(HttpVersion.HTTP_1_1)) {
-            throw new UnsupportedHttpVersionException("Unsupported HTTP version: " + ver); 
+            throw new UnsupportedHttpVersionException("Unsupported HTTP version: " + ver);
         }
-        
+
         MessageContext msgContext = new MessageContext();
         msgContext.setIncomingTransportName(Constants.TRANSPORT_HTTP);
         try {
             TransportOutDescription transportOut = this.configurationContext.getAxisConfiguration()
-                .getTransportOut(new QName(Constants.TRANSPORT_HTTP));
+                    .getTransportOut(new QName(Constants.TRANSPORT_HTTP));
             TransportInDescription transportIn = this.configurationContext.getAxisConfiguration()
-                .getTransportIn(new QName(Constants.TRANSPORT_HTTP));            
-        
+                    .getTransportIn(new QName(Constants.TRANSPORT_HTTP));
+
             msgContext.setConfigurationContext(this.configurationContext);
 
             String sessionKey = (String) this.httpcontext.getAttribute(HTTPConstants.COOKIE_STRING);
@@ -168,14 +168,14 @@
 
             // set the transport Headers
             HashMap headerMap = new HashMap();
-            for (Iterator it = request.headerIterator(); it.hasNext(); ) {
+            for (Iterator it = request.headerIterator(); it.hasNext();) {
                 Header header = (Header) it.next();
                 headerMap.put(header.getName(), header.getValue());
             }
             msgContext.setProperty(MessageContext.TRANSPORT_HEADERS, headerMap);
 
             this.httpcontext.setAttribute(AxisParams.MESSAGE_CONTEXT, msgContext);
-            
+
             this.worker.service(request, response, msgContext);
         } catch (SocketException ex) {
             // Socket is unreliable. 
@@ -186,32 +186,38 @@
         } catch (Throwable e) {
             try {
                 AxisEngine engine = new AxisEngine(this.configurationContext);
-                
-                OutputBuffer outbuffer = new OutputBuffer(); 
+
+                OutputBuffer outbuffer = new OutputBuffer();
                 msgContext.setProperty(MessageContext.TRANSPORT_OUT, outbuffer.getOutputStream());
                 msgContext.setProperty(Constants.OUT_TRANSPORT_INFO, outbuffer);
 
                 MessageContext faultContext = engine.createFaultMessageContext(msgContext, e);
                 // If the fault is not going along the back channel we should be 202ing
-                if(AddressingHelper.isFaultRedirected(msgContext)){
+                if (AddressingHelper.isFaultRedirected(msgContext)) {
                     response.setStatusLine(new StatusLine(ver, 202, "Accepted"));
-                }else{
+                } else {
                     response.setStatusLine(new StatusLine(ver, 500, "Internal server error"));
                 }
                 engine.sendFault(faultContext);
                 response.setEntity(outbuffer);
             } catch (Exception ex) {
-                if(AddressingHelper.isFaultRedirected(msgContext)){
+                if (AddressingHelper.isFaultRedirected(msgContext)) {
                     response.setStatusLine(new StatusLine(ver, 202, "Accepted"));
-                }else{
+                } else {
                     response.setStatusLine(new StatusLine(ver, 500, "Internal server error"));
-                    StringEntity entity = new StringEntity(ex.getMessage());
+                    String msg = ex.getMessage();
+                    StringEntity entity;
+                    if (msg != null && msg.trim().length() != 0) {
+                        entity = new StringEntity(msg);
+                    } else {
+                        entity = new StringEntity("Exception message unknown");
+                    }
                     entity.setContentType("text/plain");
                     response.setEntity(entity);
                 }
             }
         }
-        
+
     }
 
     protected void logIOException(final IOException ex) {
@@ -219,8 +225,7 @@
             LOG.debug(ex.getMessage());
         } else if (ex instanceof SocketException) {
             LOG.debug(ex.getMessage());
-        }
-        else {
+        } else {
             LOG.warn(ex.getMessage(), ex);
         }
     }
@@ -252,5 +257,5 @@
             }
         }
     }
-                   
+
 }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/SimpleMailListener.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/SimpleMailListener.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/SimpleMailListener.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/SimpleMailListener.java Mon Aug 28 06:17:16 2006
@@ -103,7 +103,7 @@
             listenerManager.init(configurationContext);
         }
         listenerManager.addListener(trsIn, true);
-        servicePath = configurationContext.getServicePath();
+        servicePath = configurationContext.getServiceContextPath();
     }
 
     /*
@@ -118,7 +118,7 @@
         password = Utils.getParameterValue(transportIn.getParameter(MailSrvConstants.POP3_PASSWORD));
         port = Utils.getParameterValue(transportIn.getParameter(MailSrvConstants.POP3_PORT));
         replyTo = Utils.getParameterValue(transportIn.getParameter(MailSrvConstants.RAPLY_TO));
-        servicePath = configurationContext.getServicePath();
+        servicePath = configurationContext.getServiceContextPath();
         if ((user == null) || (host == null) || (password == null) || (port == null)) {
             if (this.user == null) {
                 throw new AxisFault(Messages.getMessage("canNotBeNull", "User"));

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPServer.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPServer.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPServer.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPServer.java Mon Aug 28 06:17:16 2006
@@ -67,7 +67,7 @@
                 listenerManager.init(configContext);
             }
             listenerManager.addListener(trsIn, true);
-            conetxtPath = configContext.getContextPath();
+            conetxtPath = configContext.getServiceContextPath();
 
         } catch (IOException e1) {
             throw new AxisFault(e1);
@@ -91,7 +91,7 @@
         if (param != null) {
             hostAddress = ((String) param.getValue()).trim();
         }
-        conetxtPath = configContext.getContextPath();
+        conetxtPath = configContext.getServiceContextPath();
     }
 
     public static void main(String[] args) throws AxisFault, NumberFormatException {

Modified: webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/engine/EnginePausingTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/engine/EnginePausingTest.java?rev=437698&r1=437697&r2=437698&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/engine/EnginePausingTest.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/engine/EnginePausingTest.java Mon Aug 28 06:17:16 2006
@@ -163,7 +163,7 @@
 
     public void testReceive() throws Exception {
         mc.setTo(
-                new EndpointReference("axis2/services/NullService"));
+                new EndpointReference("/axis2/services/NullService"));
         mc.setWSAAction("DummyOp");
         AxisEngine engine = new AxisEngine(configConetxt);
         engine.receive(mc);



---------------------------------------------------------------------
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