Ho una classe JAXB come questo:Come annotare una proprietà JAXB per utilizzare xsd: time anziché xsd: datetime?
public class Game {
private Date startTime;
@XmlElement
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
}
che si traduce in un .xsd
dove startTime è di tipo xsd:datetime
. Voglio che sia xsd:time
. xsd:time
mappe a XmlGregorianCalendar
, ma la mappatura inversa viene mappata a xsd:anySimpleType
che non è molto utile.
Ho provato vari argomenti a @XmlElement(type=...)
inutilmente. Qualsiasi suggerimento sarebbe molto apprezzato.
Se fa la differenza, questo è un tipo usato da JAX-WS.
Io non sono chiare se si sta cercando di generare Java da XSD, o generare XSD da Java? – skaffman
@skaffman: xsd da java – Draemon
Se si desidera mantenere 'startTime' come tipo' Date', dare un'occhiata a questo [post] (http://stackoverflow.com/questions/2519432/jaxb-unmarshal-timestamp). Definisce una mappatura tra 'Date' e' String', che è usata per serializzare il tipo di 'Date'. – kon