public LTLRateShipmentResponse[] CalculateLTLRates(LTLRateShipmentRequest[] requests) { // LTLRateShipmentResponse[] response = null; RateWareXLPortTypeClient client = new RateWareXLPortTypeClient(); try { AuthenticationToken authToken = getAuthenticationToken(); if (client.isReady(authToken)) { //LTL rate shipment request response = client.LTLRateShipmentMultiple(authToken, requests); } client.Close(); } catch (TimeoutException te) { client.Abort(); throw new ApplicationException(te.Message); } catch (FaultException fe) { client.Abort(); throw new ApplicationException(fe.Message); } catch (CommunicationException ce) { client.Abort(); throw new ApplicationException(ce.Message); } return(response); }