Problème simple, mais je me suis cogné la tête toute la journée. Service Web JAX-WS, généré à partir d'un WSDL tiers. Le contenu est quelque chose comme ceci:Comment changer le contenu de package-info.java
@javax.xml.bind.annotation.XmlSchema(namespace = "http://foo.it/bar",
elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package it.foo.bar.webservice.generated;
webservice fonctionne, la sortie produit est comme suit:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<response xmlns="it.foo.bar.bean">
<result>
problème est le client qui est en utilisant le service Web, a besoin de la réponse comme ceci:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns:response xmlns:ns="it.foo.bar.bean">
<ns:result>
Si j'ajoute manuellement à l'emballage-info les xmlns annotation:
@javax.xml.bind.annotation.XmlSchema(namespace = "http://foo.it/bar", xmlns = {
@javax.xml.bind.annotation.XmlNs(namespaceURI = "it.foo.bar.bean", prefix = "sms")
}, elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package it.foo.bar.webservice.generated;
La réponse est générée comme prévu. Existe-t-il un moyen d'obtenir le même résultat en utilisant seulement wsimport, ou une liaison jaxb ou autre? Je suis sûr qu'il y a une meilleure façon d'écraser le package-info.java à chaque fois.
Merci, bon à savoir. Pensez-vous que ce plugin Maven pourrait être une solution de contournement décent? http://java.net/projects/jaxb2-commons/pages/Namespace-prefix – Carlo
Oui, ça ressemble à une bonne solution de contournement, mais je ne l'ai pas encore essayé. – Puce