2010-05-05 2 views
1

Je suis relativement nouveau dans les services Web, mais j'ai besoin d'intégrer un appel à un service existant dans mon application. Idéalement, j'aimerais utiliser JAX-WS car je suis à la recherche de la solution la plus simple et la plus rapide à développer, et MyEclipse est capable de générer un client JAX-WS à partir d'un WSDL. Malheureusement, le WSDL dont j'ai hérité a été construit à partir de ce qui semble être Axis en utilisant RPC. Cela fonctionnera-t-il toujours? Lorsque vous essayez de générer le code, je reçois ces erreurs, et les recherches sur le Web que j'ai trouvé semble dire que c'est la fin de service qui doit améliorer:Client JAX-WS avec service Axis

<restriction base="soapenc:Array"> 
    <attribute ref="soapenc:arrayType" wsdl:arrayType="impl:MyTypeList[]" /> 
</restriction> 
  • WS-I: (BP2108) Une déclaration Array utilise - restreint ou étend - le type soapEnc: Array, ou l'attribut wsdl: arrayType est utilisé dans la déclaration de type

  • WS-I: (BP2122) Un élément wsdl: types contenait une définition de type de données n'est pas une définition de schéma XML

    < wsdlsoap: corps encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/" espace de noms = utilisation "http://ws.host.com" = "codé" />

  • WS-I: (BP2406) L'attribut use d'un soapbind: body, soapbind: fault, soapbind: header et soapbind: headerfault n'a pas la valeur "literal".

Répondre

1

Savez-vous quelle version d'Axis a été utilisée par le service?

Votre meilleur pari est de générer un client en utilisant la même version d'Axis que celle utilisée par le service. C'est certainement la solution la plus rapide à développer. L'utilisation de JAX-WS ne fonctionnera pas.

Questions connexes