Salut,
Je dois exposer des services ejb 3 existants a travers un web service en utilisant jax-ws et netbaens 7 .
Tout marche bien sauf pour les Dates qui sont mappés en XmlGregorianCalendar .
Pour régler ce probleme , j'ai éffectué un binding de type avec ce qui suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8"?>
 
<jaxws:bindings  node="wsdl:definitions/wsdl:types/xsd:schema"
                 xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
 
                                xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
 
                                xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
 
                                xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
    <jaxb:globalBindings>
 
        <jaxb:serializable/>
 
        <jaxb:javaType name="java.util.Date"
                                                      xmlType="xsd:dateTime"/>
 
 
    </jaxb:globalBindings>
 
</jaxws:bindings>
J'obtiens coté client des java.util.Date au lieu du XmlGregorianCalendar et un fichier Adapter1 est généré :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class Adapter1
    extends XmlAdapter<String, Date>
{
 
 
    public Date unmarshal(String value) {
System.out.prinln("unmarhal:"+value");
        return new Date(value);
    }
 
    public String marshal(Date value) {
System.out.prinln("marhal:"+value");
        if (value == null) {
            return null;
        }
        return value.toString();
    }
 
}
Le transfert est bien effectué et j'obtiens le bon affichage dans la classe Adapter1 mais les Dates passées en parametres ou retournés sont toujours nulles .
Que faire ?
Merci.
Que faire ?