2015-10-14 4 views
1

Je dois créer un service Web SOAP en utilisant Spring. J'ai suivi le tutoriel du site officiel de Spring: https://spring.io/guides/gs/producing-web-service/Spring Boot - SOAP WebService n'affiche pas le WSDL

J'ai déployé avec succès le service Web SOAP à partir de ce tutoriel sur mon ordinateur local et je peux accéder à la définition WSDL depuis mon navigateur. Après cela, j'ai essayé d'utiliser mon schéma XSD existant, mais cela ne fonctionne pas lorsque j'essaie d'accéder à la définition WSDL et la console ne montre aucune sorte d'erreur.

Ceci est mon schéma XSD:

<xs:schema version="1.0" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns="http://worldwide.com/p44" 
    targetNamespace="http://worldwide.com/p44" 
    elementFormDefault="qualified"> 

    <xs:element name="DispatchRequest" type="DispatchRequestType"/> 
    <xs:element name="DispatchResponse" type="DispatchResponseType"/> 
    <xs:element name="RateQuoteResponse" type="rateQuoteResponse"/> 
    <xs:element name="RateQuotes" type="rateQuoteResponseList"/> 
    <xs:element name="RateRequest" type="RateRequest"/> 
    <xs:element name="TrackingResponse" type="trackingResponseList"/> 
    <xs:element name="TrackingResult" type="TrackingResultType"/> 
    <xs:element name="change" type="mergeRecord"/> 
    <xs:element name="error" type="serviceError"/> 
    <xs:element name="rateDetail" type="rateDetail"/> 
    <xs:complexType name="trackingResponseList"> 
    <xs:sequence> 
     <xs:element name="errors" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element ref="error" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="shipmentInfo" type="TrackingResultType" minOccurs="0" maxOccurs="unbounded"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="serviceError"> 
    <xs:sequence> 
     <xs:element name="errorCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="errorMessage" type="xs:string" minOccurs="0"/> 
     <xs:element name="vendorErrorCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="vendorErrorMessage" type="xs:string" minOccurs="0"/> 
     <xs:element name="message" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="TrackingResultType"> 
    <xs:sequence> 
     <xs:element name="lastUpdated" type="xs:string" minOccurs="0"/> 
     <xs:element name="actualDeliveryDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="appointmentDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="appointmentDateEnd" type="xs:string" minOccurs="0"/> 
     <xs:element name="billTo" type="addressInfo" minOccurs="0"/> 
     <xs:element name="bolNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="carrierNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="carrierScac" type="xs:string" minOccurs="0"/> 
     <xs:element name="shipmentId" type="xs:string" minOccurs="0"/> 
     <xs:element name="shipper" type="addressInfo" minOccurs="0"/> 
     <xs:element name="consignee" type="addressInfo" minOccurs="0"/> 
     <xs:element name="consigneeAccount" type="xs:string" minOccurs="0"/> 
     <xs:element name="currentStatus" type="trackingStatus" minOccurs="0"/> 
     <xs:element name="originTerminal" type="terminalInfo" minOccurs="0"/> 
     <xs:element name="destinationTerminal" type="terminalInfo" minOccurs="0"/> 
     <xs:element name="disclaimer" type="xs:string" minOccurs="0"/> 
     <xs:element name="errors" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element ref="error" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="estimatedDeliveryDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="invoiceStatus" type="xs:string" minOccurs="0"/> 
     <xs:element name="items" type="trackingItem" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="nextTerminal" type="terminalInfo" minOccurs="0"/> 
     <xs:element name="notifyContact" type="xs:string" minOccurs="0"/> 
     <xs:element name="numPieces" type="xs:int" minOccurs="0"/> 
     <xs:element name="otherBOLNums" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="otherPONums" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="parentPro" type="xs:string" minOccurs="0"/> 
     <xs:element name="paymentTerms" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupDateTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="poNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="proNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="receivedBy" type="xs:string" minOccurs="0"/> 
     <xs:element name="receivedByDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="serviceType" type="xs:string" minOccurs="0"/> 
     <xs:element name="shipmentExceptions" type="exceptionStatus" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="shipperAccount" type="xs:string" minOccurs="0"/> 
     <xs:element name="statusHistory" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="status" type="trackingStatus" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="totalQuantity" type="xs:int" minOccurs="0"/> 
     <xs:element name="totalWeight" type="xs:int" minOccurs="0"/> 
     <xs:element name="trailerNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="vendor" type="xs:string" minOccurs="0"/> 
     <xs:element name="images" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="imageRecord" type="imageRecord" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="changeLog" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element ref="change" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="addressInfo"> 
    <xs:sequence> 
     <xs:element name="address1" type="xs:string" minOccurs="0"/> 
     <xs:element name="address2" type="xs:string" minOccurs="0"/> 
     <xs:element name="address3" type="xs:string" minOccurs="0"/> 
     <xs:element name="companyName" type="xs:string" minOccurs="0"/> 
     <xs:element name="contactName" type="xs:string" minOccurs="0"/> 
     <xs:element name="city" type="xs:string" minOccurs="0"/> 
     <xs:element name="stateName" type="xs:string" minOccurs="0"/> 
     <xs:element name="country" type="xs:string" minOccurs="0"/> 
     <xs:element name="postalCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="phoneNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="phoneNumber2" type="xs:string" minOccurs="0"/> 
     <xs:element name="email" type="xs:string" minOccurs="0"/> 
     <xs:element name="faxNumber" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="trackingStatus"> 
    <xs:sequence> 
     <xs:element name="code" type="xs:string" minOccurs="0"/> 
     <xs:element name="description" type="xs:string" minOccurs="0"/> 
     <xs:element name="city" type="xs:string" minOccurs="0"/> 
     <xs:element name="stateName" type="xs:string" minOccurs="0"/> 
     <xs:element name="interlineScac" type="xs:string" minOccurs="0"/> 
     <xs:element name="location" type="xs:string" minOccurs="0"/> 
     <xs:element name="notes" type="xs:string" minOccurs="0"/> 
     <xs:element name="serviceCenter" type="terminalInfo" minOccurs="0"/> 
     <xs:element name="timestamp" type="xs:string" minOccurs="0"/> 
     <xs:element name="updateTime" type="xs:dateTime" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="terminalInfo"> 
    <xs:complexContent> 
     <xs:extension base="addressInfo"> 
     <xs:sequence> 
      <xs:element name="terminalId" type="xs:string" minOccurs="0"/> 
      <xs:element name="terminalName" type="xs:string" minOccurs="0"/> 
      <xs:element name="terminalNumber" type="xs:string" minOccurs="0"/> 
      <xs:element name="terminalCarrier" type="xs:string" minOccurs="0"/> 
     </xs:sequence> 
     </xs:extension> 
    </xs:complexContent> 
    </xs:complexType> 

    <xs:complexType name="trackingItem"> 
    <xs:sequence> 
     <xs:element name="amount" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="description" type="xs:string" minOccurs="0"/> 
     <xs:element name="descriptionCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="freightClass" type="xs:string" minOccurs="0"/> 
     <xs:element name="pieces" type="xs:int" minOccurs="0"/> 
     <xs:element name="rate" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="weight" type="xs:int" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="exceptionStatus"> 
    <xs:complexContent> 
     <xs:extension base="trackingStatus"> 
     <xs:sequence/> 
     </xs:extension> 
    </xs:complexContent> 
    </xs:complexType> 

    <xs:complexType name="imageRecord"> 
    <xs:sequence> 
     <xs:element name="imageType" type="imageType" minOccurs="0"/> 
     <xs:element name="imageFormat" type="imageFormat" minOccurs="0"/> 
     <xs:element name="imageLink" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="mergeRecord"> 
    <xs:sequence> 
     <xs:element name="name" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="RateRequest"> 
    <xs:sequence> 
     <xs:element name="timeout" type="xs:int"/> 
     <xs:element name="shipDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="shipTimeStart" type="xs:string" minOccurs="0"/> 
     <xs:element name="shipTimeEnd" type="xs:string" minOccurs="0"/> 
     <xs:element name="returnMultiple" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="loginGroupKey" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="delTimeStart" type="xs:string" minOccurs="0"/> 
     <xs:element name="delTimeEnd" type="xs:string" minOccurs="0"/> 
     <xs:element name="destination" type="addressInfo" minOccurs="0"/> 
     <xs:element name="origin" type="addressInfo" minOccurs="0"/> 
     <xs:element name="billTo" type="addressInfo" minOccurs="0"/> 
     <xs:element name="accountNumbers"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="entry" minOccurs="0" maxOccurs="unbounded"> 
       <xs:complexType> 
       <xs:sequence> 
        <xs:element name="key" minOccurs="0" type="xs:string"/> 
        <xs:element name="value" minOccurs="0" type="xs:string"/> 
       </xs:sequence> 
       </xs:complexType> 
      </xs:element> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="accountConfigs" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="account" type="accountConfigType" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="lineItems" type="rateQuoteLineImpl" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="accessorials" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="code" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="cubicFeet" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="defaultLogins" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="mapChargeCodes" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="requestedScacs" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="limitByScacs" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="items" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="item" type="rateQuoteLineImpl" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="accountConfigType"> 
    <xs:sequence> 
     <xs:element name="vendorCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="siteLoginName" type="xs:string" minOccurs="0"/> 
     <xs:element name="defaultAccount" type="xs:string" minOccurs="0"/> 
     <xs:element name="accountNumber2" type="xs:string" minOccurs="0"/> 
     <xs:element name="credentials" type="xs:string" minOccurs="0"/> 
     <xs:element name="paymentTerms" type="xs:string" minOccurs="0"/> 
     <xs:element name="authKey" type="xs:string" minOccurs="0"/> 
     <xs:element name="authKey2" type="xs:string" minOccurs="0"/> 
     <xs:element name="shipmentTerms" type="xs:string" minOccurs="0"/> 
     <xs:element name="inboundPayTerms" type="xs:string" minOccurs="0"/> 
     <xs:element name="outboundPayTerms" type="xs:string" minOccurs="0"/> 
     <xs:element name="direction" type="xs:string" minOccurs="0"/> 
     <xs:element name="paymentType" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="rateQuoteLineImpl"> 
    <xs:sequence> 
     <xs:element name="nmfcItem" type="xs:string" minOccurs="0"/> 
     <xs:element name="nmfcSub" type="xs:string" minOccurs="0"/> 
     <xs:element name="weight" type="xs:string" minOccurs="0"/> 
     <xs:element name="weightUnit" type="xs:string" minOccurs="0"/> 
     <xs:element name="freightClass" type="xs:string" minOccurs="0"/> 
     <xs:element name="length" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="width" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="height" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="dimUnit" type="xs:string" minOccurs="0"/> 
     <xs:element name="palletCount" type="xs:int" minOccurs="0"/> 
     <xs:element name="numPieces" type="xs:int" minOccurs="0"/> 
     <xs:element name="pieceType" type="xs:string" minOccurs="0"/> 
     <xs:element name="packageType" type="xs:string" minOccurs="0"/> 
     <xs:element name="description" type="xs:string" minOccurs="0"/> 
     <xs:element name="stackable" type="xs:boolean"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="DispatchResponseType"> 
    <xs:sequence> 
     <xs:element name="errors" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element ref="error" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="bolLink" type="xs:string" minOccurs="0"/> 
     <xs:element name="carrierBolLink" type="xs:string" minOccurs="0"/> 
     <xs:element name="contactName" type="xs:string" minOccurs="0"/> 
     <xs:element name="debtor" type="xs:string" minOccurs="0"/> 
     <xs:element name="origin" type="addressInfo" minOccurs="0"/> 
     <xs:element name="destination" type="addressInfo" minOccurs="0"/> 
     <xs:element name="dockCloseTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="labelLink" type="xs:string" minOccurs="0"/> 
     <xs:element name="lineItems" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="item" type="lineItem" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="pickupDateTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="poNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="proNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="quoteDateTime" type="xs:dateTime" minOccurs="0"/> 
     <xs:element name="quoteNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="quoteTotal" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="quoteVersion" type="xs:string" minOccurs="0"/> 
     <xs:element name="referenceNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="scac" type="xs:string" minOccurs="0"/> 
     <xs:element name="vendor" type="xs:string" minOccurs="0"/> 
     <xs:element name="transitTime" type="xs:int" minOccurs="0"/> 
     <xs:element name="serviceTypeCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="serviceTypeDescription" type="xs:string" minOccurs="0"/> 
     <xs:element name="stopNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="terminalCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="terminalPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="trackingNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="requestId" type="xs:string" minOccurs="0"/> 
     <xs:element name="vendorNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="barcodeNumber" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="lineItem"> 
    <xs:sequence> 
     <xs:element name="code" type="xs:string" minOccurs="0"/> 
     <xs:element name="quantity" type="xs:int"/> 
     <xs:element name="weight" type="xs:int"/> 
     <xs:element name="hazmatId" type="xs:string" minOccurs="0"/> 
     <xs:element name="shippingName" type="xs:string" minOccurs="0"/> 
     <xs:element name="hazmatClass" type="xs:string" minOccurs="0"/> 
     <xs:element name="packagingGroup" type="xs:string" minOccurs="0"/> 
     <xs:element name="weightUnit" type="xs:string" minOccurs="0"/> 
     <xs:element name="freightClass" type="xs:string" minOccurs="0"/> 
     <xs:element name="description" type="xs:string" minOccurs="0"/> 
     <xs:element name="hazmat" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="pieces" type="xs:int"/> 
     <xs:element name="packageType" type="xs:string" minOccurs="0"/> 
     <xs:element name="length" type="xs:int" minOccurs="0"/> 
     <xs:element name="width" type="xs:int" minOccurs="0"/> 
     <xs:element name="height" type="xs:int" minOccurs="0"/> 
     <xs:element name="density" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="nmfcItem" type="xs:string" minOccurs="0"/> 
     <xs:element name="nmfcSub" type="xs:string" minOccurs="0"/> 
     <xs:element name="stackable" type="xs:boolean"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="DispatchRequestType"> 
    <xs:sequence> 
     <xs:element name="vendorCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="accountConfig" type="accountConfigType" minOccurs="0"/> 
     <xs:element name="accountNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="contractId" type="xs:string" minOccurs="0"/> 
     <xs:element name="loginGroupKey" type="xs:string" minOccurs="0"/> 
     <xs:element name="emergencyContact" type="xs:string" minOccurs="0"/> 
     <xs:element name="emergencyPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="referenceNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="proNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="scac" type="xs:string" minOccurs="0"/> 
     <xs:element name="quoteNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolPDFContent" type="xs:string" minOccurs="0"/> 
     <xs:element name="createBOL" type="xs:boolean"/> 
     <xs:element name="quoteTotal" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="requestBOL" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="origin" type="addressInfo" minOccurs="0"/> 
     <xs:element name="destination" type="addressInfo" minOccurs="0"/> 
     <xs:element name="lineItems" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="item" type="lineItem" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="pickupNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="dockCloseTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="billTo" type="addressInfo" minOccurs="0"/> 
     <xs:element name="requester" type="addressInfo" minOccurs="0"/> 
     <xs:element name="poNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolContactPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupDateTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryDateTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupContactName" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryContact" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryContactPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupEmail" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupContactCompany" type="xs:string" minOccurs="0"/> 
     <xs:element name="accessorials" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="code" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="emailBOLShip" type="xs:boolean"/> 
     <xs:element name="emailNotifyShip" type="xs:boolean"/> 
     <xs:element name="emailApptShip" type="xs:boolean"/> 
     <xs:element name="emailDelivShip" type="xs:boolean"/> 
     <xs:element name="emailBOLCons" type="xs:boolean"/> 
     <xs:element name="emailNotifyCons" type="xs:boolean"/> 
     <xs:element name="emailApptCons" type="xs:boolean"/> 
     <xs:element name="emailDelivCons" type="xs:boolean"/> 
     <xs:element name="emailConfirm" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="pickupStartTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupEndTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryStartTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryEndTime" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="rateQuoteResponseList"> 
    <xs:sequence> 
     <xs:element name="rateQuote" type="rateQuoteResponse" minOccurs="0" maxOccurs="unbounded"/> 
     <xs:element name="loginGroupKey" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="rateQuoteResponse"> 
    <xs:sequence> 
     <xs:element name="scac" type="xs:string" minOccurs="0"/> 
     <xs:element name="vendor" type="xs:string" minOccurs="0"/> 
     <xs:element name="contractId" type="xs:string" minOccurs="0"/> 
     <xs:element name="originTerminal" type="terminalInfo" minOccurs="0"/> 
     <xs:element name="destinationTerminal" type="terminalInfo" minOccurs="0"/> 
     <xs:element name="errors" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element ref="error" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="carrierNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="quoteNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="expirationDate" type="xs:string" minOccurs="0"/> 
     <xs:element name="quoteDate" type="xs:string" minOccurs="0"/> 
     <xs:element ref="rateDetail" minOccurs="0"/> 
     <xs:element name="serviceType" type="xs:string" minOccurs="0"/> 
     <xs:element name="totalPallets" type="xs:int" minOccurs="0"/> 
     <xs:element name="totalPieces" type="xs:int" minOccurs="0"/> 
     <xs:element name="totalWeight" type="xs:int" minOccurs="0"/> 
     <xs:element name="transitTime" type="xs:int" minOccurs="0"/> 
     <xs:element name="alternateRates" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="alternateRate" type="rateDetail" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="rateDetail"> 
    <xs:sequence> 
     <xs:element name="rateAdjustments" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="rateAdjustment" type="rateAdjustment" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="total" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="subtotal" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="deliveryDate" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="rateAdjustment"> 
    <xs:sequence> 
     <xs:element name="freightClass" type="xs:string" minOccurs="0"/> 
     <xs:element name="weight" type="xs:int" minOccurs="0"/> 
     <xs:element name="pieces" type="xs:int" minOccurs="0"/> 
     <xs:element name="description" type="xs:string" minOccurs="0"/> 
     <xs:element name="descriptionCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="amount" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="rate" type="xs:decimal" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:simpleType name="imageType"> 
    <xs:restriction base="xs:string"> 
     <xs:enumeration value="BOL"/> 
     <xs:enumeration value="INVOICE"/> 
     <xs:enumeration value="DR"/> 
     <xs:enumeration value="WCERT"/> 
    </xs:restriction> 
    </xs:simpleType> 

    <xs:simpleType name="imageFormat"> 
    <xs:restriction base="xs:string"> 
     <xs:enumeration value="PNG"/> 
     <xs:enumeration value="TIF"/> 
     <xs:enumeration value="PDF"/> 
     <xs:enumeration value="JPG"/> 
     <xs:enumeration value="GIF"/> 
    </xs:restriction> 
    </xs:simpleType> 

Et enfin ma classe principale Printemps-Boot:

@SpringBootApplication 
public class Application { 
    public static void main(String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 
} 

Je sais que c'est un grand schéma XSD, mais je suis complètement perdu. Comme vous pouvez le voir, je suis le même processus que l'exemple de Spring que j'ai mentionné précédemment (en utilisant Maven mais en ignorant le Repository car je n'en ai pas besoin maintenant), mais je n'arrive toujours pas à le faire fonctionner avec l'information dont j'ai besoin.

Les classes de ce schéma sont générées correctement. Le problème est que quand j'exécute la commande mvn spring-boot:run de mon itinéraire de projet, il n'y a aucune erreur dans la console, mais lorsque je tente d'accéder à mon fichier WSDL pour ce projet à http://localhost:8080/ws/dispatch?wsdl, le navigateur dit simplement:

Whitelabel page d'erreur

Cette application n'a pas de mappage explicite pour/error, donc vous voyez cela comme une solution de repli.

Mer Oct 14 09:24:31 CDT 2015 Une erreur inattendue s'est produite (type = Not Found, status = 404). Aucun message disponible

Et la console ne montre rien. S'il vous plaît laissez-moi savoir ce que je fais mal. Peut-être que c'est le schéma XSD, ou peut-être l'Endpoint, ou peut-être le WebServiceConfig. Toute sorte d'aide serait très appréciée.

+0

avez-vous essayé d'accéder à: http://10.0.1.45:8080/ws/dispatch?wsdl, en utilisant? Wsdl au lieu de .wsdl –

+0

Bonjour Melli. Merci beaucoup d'avoir répondu. Je m'excuse pour ma faute de frappe, je voulais dire http: // localhost: 8080/ws/dispatch? Wsdl Je vais corriger mon poste en ce moment, merci. – Gabriel

+0

Vous utilisez donc? Wsdl ??? la génération du service se termine bien? Avez-vous essayé d'utiliser le savon ui pour regarder le service? –

Répondre

0

J'ai trouvé le problème. Il est lié au schéma XSD. Pour une raison quelconque, Spring n'aime pas que la requête ou les objets de réponse soient définis dans des éléments séparés. Je veux dire au lieu de <xs:element name="DispatchRequest" type="DispatchRequestType"/>, je devais utiliser

<xs:element name="DispatchRequest"> 
    <xs:complexType> 
    <xs:sequence> 
     <xs:element name="vendorCode" type="xs:string" minOccurs="0"/> 
     <xs:element name="accountConfig" type="tns:accountConfigType" minOccurs="0"/> 
     <xs:element name="accountNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="contractId" type="xs:string" minOccurs="0"/> 
     <xs:element name="loginGroupKey" type="xs:string" minOccurs="0"/> 
     <xs:element name="emergencyContact" type="xs:string" minOccurs="0"/> 
     <xs:element name="emergencyPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="referenceNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="proNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="scac" type="xs:string" minOccurs="0"/> 
     <xs:element name="quoteNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolPDFContent" type="xs:string" minOccurs="0"/> 
     <xs:element name="createBOL" type="xs:boolean"/> 
     <xs:element name="quoteTotal" type="xs:decimal" minOccurs="0"/> 
     <xs:element name="requestBOL" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="origin" type="tns:addressInfo" minOccurs="0"/> 
     <xs:element name="destination" type="tns:addressInfo" minOccurs="0"/> 
     <xs:element name="lineItems" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="item" type="tns:lineItem" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="pickupNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryNote" type="xs:string" minOccurs="0"/> 
     <xs:element name="dockCloseTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="billTo" type="tns:addressInfo" minOccurs="0"/> 
     <xs:element name="requester" type="tns:addressInfo" minOccurs="0"/> 
     <xs:element name="poNumber" type="xs:string" minOccurs="0"/> 
     <xs:element name="bolContactPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupDateTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryDateTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupContactName" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryContact" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryContactPhone" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupEmail" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupContactCompany" type="xs:string" minOccurs="0"/> 
     <xs:element name="accessorials" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
      <xs:element name="code" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> 
      </xs:sequence> 
     </xs:complexType> 
     </xs:element> 
     <xs:element name="emailBOLShip" type="xs:boolean"/> 
     <xs:element name="emailNotifyShip" type="xs:boolean"/> 
     <xs:element name="emailApptShip" type="xs:boolean"/> 
     <xs:element name="emailDelivShip" type="xs:boolean"/> 
     <xs:element name="emailBOLCons" type="xs:boolean"/> 
     <xs:element name="emailNotifyCons" type="xs:boolean"/> 
     <xs:element name="emailApptCons" type="xs:boolean"/> 
     <xs:element name="emailDelivCons" type="xs:boolean"/> 
     <xs:element name="emailConfirm" type="xs:boolean" minOccurs="0"/> 
     <xs:element name="pickupStartTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="pickupEndTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryStartTime" type="xs:string" minOccurs="0"/> 
     <xs:element name="deliveryEndTime" type="xs:string" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

Merci beaucoup à ceux qui essaient de me aider. J'apprécie vraiment votre volonté d'aider les gens.