JAXB'yi kullanırken bir sorunum var. Java Sınıflarımı xjc (xsd-şema kullanarak) oluşturdum ve XML-Datatypes xs için global bir bağlamaya sahip oldum: date xs: dateTime ve xs: java.util.Calendar ile ayrıştırma ve yazdırma yöntemi.Java: JAXB: JAXBElement <Calendar>'un xs'ye eklenmesi: tarih bilinmiyor
Bazı x'ler işaretlenene kadar her şey iyi çalışıyor: tarih alanları sıfırlanabilir olarak. Xjc, bu özellikler için JAXBElement sarıcıları oluşturur. Bu alanlar gölgelendirilmezse, doğrulama hatalarına yol açan zaman bilgisi de dahil olmak üzere tarih yazdırılır.
Marshaller'ı xs'ye dönüştürmeye zorlamak için bir olasılık var mı: xs yerine date: dateTime?
Bu alanları dönüştüren özel bir XMLAdapater alan alanlar için bir ciltleme belirtebilir miyim?
@XmlElementRef(name = "dateField", namespace = "namespace", type = JAXBElement.class)
protected JAXBElement<Calendar> dateField;
ve
<xs:element name="dateField" minOccurs="0" nillable="true" type="xs:date" />
gibi karşılık gelen xsd-görünüyor biri bana lütfen yardımcı olabilir: Java Class içindeki
mülkiyet benziyor?
Teşekkür ve saygılarımla,
Arne
İlk başta 'nillable =" true "' istediğinize emin misiniz? Öğeyi isteğe bağlı yapamaz mısın? Asla gerçek bir ihtiyaç görmedim ya da onu özlediğimi hissettim. –