espace de noms de la question sur le service web avec Apache CXF

Je suis en utilisant Apache CXF 2.7.3, et en cours d'exécution dans un espace de noms problème que je ne comprends vraiment pas. J'ai essayé largement à la recherche sur ce sujet, mais la plupart des résultats que je trouve sont pour des comportements différents. Le problème est lors de l'invocation du service web, il échouera si le paramètre élément de l'espace de noms qualifiés. Tout le reste des éléments du message sont qualifiés, et il accepte que, tout simplement pas le paramètre de l'élément. Ici est le comportement précis:

demande SANS paramètre élément qualifié:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ord="http://www.example.org/order">
<soapenv:Header/>
   <soapenv:Body>
      <ord:getOrder>
         <id>a</id>
      </ord:getOrder>
   </soapenv:Body>
</soapenv:Envelope>

résultats en cas de succès:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns2:getOrderResponse xmlns:ns2="http://www.example.org/order">
         <return>
            <ns2:errorCode/>
            <ns2:errorMessage/>
            <ns2:order>
               <ns2:orderNumber>ABC123</ns2:orderNumber>
               <ns2:lastName>Smith</ns2:lastName>
            </ns2:order>
         </return>
      </ns2:getOrderResponse>
   </soap:Body>
</soap:Envelope>

demande AVEC paramètre qualifiés:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ord="http://www.example.org/order">
   <soapenv:Header/>
   <soapenv:Body>
      <ord:getOrder>
         <ord:id>a</ord:id>
      </ord:getOrder>
   </soapenv:Body>
</soapenv:Envelope>

résultats exception de JAXB:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <soap:Fault>
         <faultcode>soap:Client</faultcode>
         <faultstring>Unmarshalling Error: unexpected element (uri:"http://www.example.org/order", local:"id"). Expected elements are &lt;{}id></faultstring>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

Dans toutes les recherches que j'ai fait, cela signifie généralement que d'un espace de noms ne correspondent pas quelque part. Mais j'ai vérifié à fond, et l'espace de noms est identique partout, y compris la ObjectFactory.class, package-info.class et la cxf-servlet.xml fichier de configuration ainsi que l' @WebService annotation. Quelqu'un peut me pointer dans la bonne direction, car à ce que je suis en manque ici?

J'ai enfin trouvé la solution. Bien sûr que c'est arrivé juste après que j'ai posté ici, pouah... Depuis que je suis nouvelle et ma réputation est trop faible, je ne peux pas répondre à la question jusqu'à ses 8 heures. Je vais poster ma solution alors. Désolé les gars.
pourquoi quelqu'un downvote avec aucune explication ou un commentaire?

OriginalL'auteur Aaron T | 2013-05-13