Je le code suivant pour mon wsdl web applicaiton:erreur complexe WSDL cryptogramme
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns:tns="http://www.ebi.ac.uk/webservices/whatizit/ws"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns="http://schemas.xmlsoap.org/wsdl/"
targetNamespace="http://www.ebi.ac.uk/webservices/whatizit/ws" name="whatizit">
<types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.ebi.ac.uk/webservices/whatizit/ws"
version="1.0">
<xs:element xmlns:ns1="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns1:search" name="search" />
<xs:complexType name="search">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="pipelineName" />
<xs:element type="xs:string" minOccurs="0" name="query" />
<xs:element name="limit">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0" />
<xs:maxExclusive value="10000" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns2="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns2:searchResponse" name="searchResponse" />
<xs:complexType name="searchResponse">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="return" />
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns3="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns3:WhatizitException" name="WhatizitException" />
<xs:complexType name="WhatizitException">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="message" />
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns4="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns4:contact" name="contact" />
<xs:complexType name="contact">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="pipelineName" />
<xs:element type="xs:string" minOccurs="0" name="text" />
<xs:element type="xs:boolean" name="convertToHtml" />
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns5="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns5:contactResponse" name="contactResponse" />
<xs:complexType name="contactResponse">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="return" />
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns6="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns6:queryPmid" name="queryPmid" />
<xs:complexType name="queryPmid">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="pipelineName" />
<xs:element type="xs:string" minOccurs="0" name="pmid" />
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns7="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns7:queryPmidResponse" name="queryPmidResponse" />
<xs:complexType name="queryPmidResponse">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="return" />
</xs:sequence>
</xs:complexType>
<xs:element xmlns:ns8="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns8:getPipelinesStatus" name="getPipelinesStatus" />
<xs:complexType name="getPipelinesStatus" />
<xs:element xmlns:ns9="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns9:getPipelinesStatusResponse" name="getPipelinesStatusResponse" />
<xs:complexType name="getPipelinesStatusResponse">
<xs:sequence>
<xs:element xmlns:ns10="http://www.ebi.ac.uk/webservices/whatizit/ws"
type="ns10:selectItem" minOccurs="0" name="return" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="selectItem">
<xs:sequence>
<xs:element type="xs:string" minOccurs="0" name="description" />
<xs:element type="xs:boolean" name="disabled" />
<xs:element type="xs:string" minOccurs="0" name="label" />
<xs:element type="xs:anyType" minOccurs="0" name="value" />
</xs:sequence>
</xs:complexType>
</xs:schema>
</types>
<message name="contact">
<part element="tns:contact" name="parameters" />
</message>
<message name="contactResponse">
<part element="tns:contactResponse" name="parameters" />
</message>
<message name="WhatizitException">
<part element="tns:WhatizitException" name="fault" />
</message>
<message name="getPipelinesStatus">
<part element="tns:getPipelinesStatus" name="parameters" />
</message>
<message name="getPipelinesStatusResponse">
<part element="tns:getPipelinesStatusResponse" name="parameters" />
</message>
<message name="queryPmid">
<part element="tns:queryPmid" name="parameters" />
</message>
<message name="queryPmidResponse">
<part element="tns:queryPmidResponse" name="parameters" />
</message>
<message name="search">
<part element="tns:search" name="parameters" />
</message>
<message name="searchResponse">
<part element="tns:searchResponse" name="parameters" />
</message>
<portType name="whatizit">
<operation name="contact">
<input message="tns:contact" />
<output message="tns:contactResponse" />
<fault message="tns:WhatizitException" name="WhatizitException" />
</operation>
<operation name="getPipelinesStatus">
<input message="tns:getPipelinesStatus" />
<output message="tns:getPipelinesStatusResponse" />
<fault message="tns:WhatizitException" name="WhatizitException" />
</operation>
<operation name="queryPmid">
<input message="tns:queryPmid" />
<output message="tns:queryPmidResponse" />
<fault message="tns:WhatizitException" name="WhatizitException" />
</operation>
<operation name="search">
<input message="tns:search" />
<output message="tns:searchResponse" />
<fault message="tns:WhatizitException" name="WhatizitException" />
</operation>
</portType>
<binding type="tns:whatizit" name="pipelineBinding">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
<operation name="contact">
<soap:operation soapAction="" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
<fault name="WhatizitException">
<soap:fault use="literal" name="WhatizitException" />
</fault>
</operation>
<operation name="getPipelinesStatus">
<soap:operation soapAction="" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
<fault name="WhatizitException">
<soap:fault use="literal" name="WhatizitException" />
</fault>
</operation>
<operation name="queryPmid">
<soap:operation soapAction="" />
<input>
<soap:body use="literal" />
</input>
<output>
<soap:body use="literal" />
</output>
<fault name="WhatizitException">
<soap:fault use="literal" name="WhatizitException" />
</fault>
</operation>
<operation name="search">
<soap:operation soapAction="" />
<input>
<soap:body use="literal" />
</input>
<output>
<mime:multipartRelated>
<mime:part>
<soap:body parts="" use="literal" />
</mime:part>
<mime:part>
<mime:content part="parameters" type="text/xml" />
</mime:part>
</mime:multipartRelated>
</output>
<fault name="WhatizitException">
<soap:fault use="literal" name="WhatizitException" />
</fault>
</operation>
</binding>
<service name="whatizit">
<port binding="tns:pipelineBinding" name="pipeline">
<!--<soap:address location="http://www.ebi.ac.uk/webservices/whatizit/ws"/> -->
<soap:address location="http://localhost:8080/whatizit/ws" />
</port>
</service>
</definitions>
Maintenant, je suis très nouveau pour les services Web en utilisant WSDL. Je rencontre deux erreurs dans cette ligne que je ne peux pas fixer:
<output>
<mime:multipartRelated>
<mime:part>
<soap:body parts="" use="literal" />
</mime:part>
<mime:part>
<mime:content part="parameters" type="text/xml" />
</mime:part>
</mime:multipartRelated>
</output>
annotations multiples trouvées sur cette ligne:
- cvc-attribute.3: The value '' of attribute 'parts' on element 'soap:body' is not valid with respect to its type,
'NMTOKENS'.
- cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type
'NMTOKENS'.
Toute suggestion sera appréciée. Merci de votre aide.
Je jetterai un coup d'oeil un peu plus tard mais ce WSDL n'est pas conforme à WSI ce qui explique pourquoi il est si difficile à utiliser. Je l'ai importé dans l'interface utilisateur SOAP et j'essaierai d'y accéder sous peu, mais il viole BP2703 de la conformité WSI. – Namphibian
Merci. J'ai réussi à résoudre le problème comme suit: Fondamentalement, Eclipse demandait aux pièces déposées à être NMTOKENS type. – Martin
Martin l'ajoute comme réponse et accepte ta propre réponse. Cela pourrait aider quelqu'un d'autre. – Namphibian