J'ai une classe JAXB comme ceci:Comment annoter une propriété JAXB pour utiliser xsd: time plutôt que xsd: datetime?
public class Game {
private Date startTime;
@XmlElement
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
}
qui se traduit par un .xsd
où startTime est de type xsd:datetime
. Je veux que ce soit xsd:time
. xsd:time
correspond à XmlGregorianCalendar
, mais la correspondance inverse correspond à xsd:anySimpleType
ce qui n'est pas très utile.
J'ai essayé divers arguments à @XmlElement(type=...)
en vain. Tout pointeur serait grandement apprécié.
Si cela fait une différence, c'est un type utilisé par JAX-WS.
Je ne suis pas clair si vous essayez de générer Java à partir XSD, ou de générer XSD de java? – skaffman
@skaffman: xsd from java – Draemon
Si vous voulez garder 'startTime' comme type' Date', jetez un oeil à ce [post] (http://stackoverflow.com/questions/2519432/jaxb-unmarshal-timestamp). Il définit un mappage entre 'Date' et' String', utilisé pour sérialiser le type 'Date' réel. – kon