के साथ LocalDateTime का उपयोग करके मैं LocalDateTime
प्रकार के फ़ील्ड के साथ JAXB का उपयोग करने का प्रयास कर रहा हूं।JAXB
public class LocalDateTimeXmlAdapter extends XmlAdapter<String, LocalDateTime> {
@Override
public String marshal(LocalDateTime arg0) throws Exception {
return arg0.toString();
}
@Override
public LocalDateTime unmarshal(String arg) throws Exception {
return LocalDateTime.parse(arg);
}
}
मैं बहुत तरह package-info.java
में अनुकूलक पंजीकृत:
@XmlJavaTypeAdapters({
@XmlJavaTypeAdapter(type=LocalDateTime.class, value=LocalDateTimeXmlAdapter.class)
})
package xml;
import java.time.LocalDateTime;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters;
यह this page के अनुसार पर्याप्त प्रतीत हो रहा है मैं रूपांतरण को संभालने के लिए एक एडाप्टर लिखा था। हालांकि, मैं निम्नलिखित त्रुटि प्राप्त हो रही:
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.time.LocalDateTime does not have a no-arg default constructor.
मैं समझता हूँ कि अपवाद के लिए कारण फेंके, लेकिन मैं शायद ही java.time.LocalDateTime
करने के लिए डिफ़ॉल्ट निर्माता जोड़ सकते हैं। यह वर्ग/एक अजीब डिजाइन निर्णय की कमी है। क्या कोई कामकाज है?