Dra*_*mon 6 java xsd types jax-ws jaxb
我有一个像这样的JAXB类:
public class Game {
private Date startTime;
@XmlElement
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
}
Run Code Online (Sandbox Code Playgroud)
这导致.xsdstartTime具有类型xsd:datetime.我想要它xsd:time.xsd:time映射到XmlGregorianCalendar,但反向映射映射xsd:anySimpleType不是很有用.
我试过各种各样的论据@XmlElement(type=...)无济于事.任何指针都将非常感激.
如果它有所不同,这是JAX-WS使用的类型.
如果要从Java类生成模式,那么您应该更改:
public class Game {
private XMLGregorianCalendar startTime;
@XmlElement
@XmlSchemaType(name = "time")
public XMLGregorianCalendar getStartTimeForSchema() {
return startTime;
}
public void setStartTimeForSchema(XMLGregorianCalendar startTime) {
this.startTime = startTime;
}
@XmlTransient
public Date getStartTime() {
return startTime.toGregorianCalendar().getTime();
}
@XmlTransient
public void setStartTime(Date startTime) {
GregorianCalendar gc = (GregorianCalendar) GregorianCalendar.getInstance();
gc.setTime(startTime);
DatatypeFactory dataTypeFactory = null;
try {
dataTypeFactory = DatatypeFactory.newInstance();
} catch (DatatypeConfigurationException ex) {
// log
}
this.startTime = dataTypeFactory.newXMLGregorianCalendar(gc);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4813 次 |
| 最近记录: |