diff -rc axis-1_4/src/org/apache/axis/transport/http/HTTPSender.java axis-1_4_local/src/org/apache/axis/transport/http/HTTPSender.java
*** axis-1_4/src/org/apache/axis/transport/http/HTTPSender.java	2006-04-22 21:57:26.000000000 -0400
--- axis-1_4_local/src/org/apache/axis/transport/http/HTTPSender.java	2006-07-18 10:34:09.000000000 -0400
***************
*** 107,117 ****
          HTTPConstants.HEADER_TRANSFER_ENCODING.toLowerCase();
  
      /**
-      * the url; used for error reporting
-      */
-     URL targetURL;
-     
-     /**
       * invoke creates a socket connection, sends the request SOAP message and then
       * reads the response SOAP message back from the SOAP server
       *
--- 107,112 ----
***************
*** 130,142 ****
          try {
              BooleanHolder useFullURL = new BooleanHolder(false);
              StringBuffer otherHeaders = new StringBuffer();
!             targetURL = new URL(msgContext.getStrProp(MessageContext.TRANS_URL));
!             String host = targetURL.getHost();
!             int port = targetURL.getPort();
!             
              // Send the SOAP request to the server
              InputStream inp = writeToSocket(socketHolder, msgContext, targetURL,
!                         otherHeaders, host, port, msgContext.getTimeout(), useFullURL);
  
              // Read the response back from the server
              Hashtable headers = new Hashtable();
--- 125,134 ----
          try {
              BooleanHolder useFullURL = new BooleanHolder(false);
              StringBuffer otherHeaders = new StringBuffer();
!             URL targetURL = new URL(msgContext.getStrProp(MessageContext.TRANS_URL));
              // Send the SOAP request to the server
              InputStream inp = writeToSocket(socketHolder, msgContext, targetURL,
!                         otherHeaders, msgContext.getTimeout(), useFullURL);
  
              // Read the response back from the server
              Hashtable headers = new Hashtable();
***************
*** 209,215 ****
       */
      private InputStream writeToSocket(SocketHolder sockHolder,
              MessageContext msgContext, URL tmpURL,
!             StringBuffer otherHeaders, String host, int port, int timeout,
              BooleanHolder useFullURL)
              throws Exception {
  
--- 201,207 ----
       */
      private InputStream writeToSocket(SocketHolder sockHolder,
              MessageContext msgContext, URL tmpURL,
!             StringBuffer otherHeaders, int timeout,
              BooleanHolder useFullURL)
              throws Exception {
  
***************
*** 353,358 ****
--- 345,353 ----
                      .append("\r\n");
          }
  
+ 		String host = tmpURL.getHost();
+ 		int port = tmpURL.getPort();
+ 
          header2.append(ACCEPT_HEADERS)
                  .append(HTTPConstants.HEADER_HOST)  //used for virtual connections
                  .append(": ")
***************
*** 401,407 ****
              header2.append("\r\n");
          }
  
!         getSocket(sockHolder, msgContext, targetURL.getProtocol(),
                    host, port, timeout, otherHeaders, useFullURL);
          
          if (null != otherHeaders) {
--- 396,402 ----
              header2.append("\r\n");
          }
  
!         getSocket(sockHolder, msgContext, tmpURL.getProtocol(),
                    host, port, timeout, otherHeaders, useFullURL);
          
          if (null != otherHeaders) {
