के साथ मैं जेएक्सबी और सीएक्सएफ के साथ एक डब्ल्यूएसडीएल पहला webservice बना रहा हूं। मेरे पास डब्लूएसडीएल का स्वामित्व नहीं है, इसलिए मैं इसमें बदलाव नहीं कर सकता। मैं अपने डब्लूएसडीएल के रूप में ftp://ftp.ihe.net/TF_Implementation_Material/ITI/wsdl/PIXManager.wsdl का उपयोग कर रहा हूं। मैंने जावा कक्षाएं उत्पन्न करने के लिए सीएक्सएफ 2.3.0 का उपयोग किया।जेएक्सबी, सीएक्सएफ: तत्व के लिए @XmlElementDecl के साथ कोई ऑब्जेक्ट फैक्ट्री नहीं है ...
जावा वर्ग पीढ़ी ठीक से चला गया, लेकिन जब मैं एक वेब अनुप्रयोग में इस चलाने के लिए कोशिश कर रहा हूँ, मैं कोई त्रुटि मिलती है
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 17 counts of IllegalAnnotationExceptions
17 मायने रखता है प्रारूप के हैं
There's no ObjectFactory with an @XmlElementDecl for the element {urn:hl7-org:v3}assignedDevice.
this problem is related to the following location:
at protected javax.xml.bind.JAXBElement org.hl7.v3.QUQIMT021001UV01AuthorOrPerformer.assignedDevice
जब मैं उल्लिखित कक्षा में जाता हूं, यानी QUQIMT021001UV01AuthorOrPerformer और असाइन किए गए फ़ील्ड को देखें, मुझे यह
@XmlElementRef(name = "assignedDevice", namespace = "urn:hl7-org:v3", type = JAXBElement.class)
protected JAXBElement<COCTMT090300UV01AssignedDevice> assignedDevice;
जब मैं पैकेज के ObjectFactory को देखो, मैं इस
private final static QName _COCTMT090303UV01AssignedDeviceAssignedDevice_QNAME = new QName("urn:hl7-org:v3", "assignedDevice");
मेरे सभी 17 त्रुटियों समान हैं। मेरी सेवा पाने के लिए मैं अपने कोडजन या रनटाइम के दौरान क्या कर सकता हूं?
मैं अपने codegen में कई WSDLs उपयोग कर रहा था, और कहा कि इन परिभाषाओं में एक संघर्ष पैदा कर रहा था। मैंने इसे एक डब्लूएसडीएल तक छीन लिया और यह ठीक काम करता है। हालांकि मैं देखना चाहता हूं कि कोडेजन में उपयोग किए जाने वाले एकाधिक डब्ल्यूएसएलडी का उपयोग कैसे करें। – rahul