मैं एक JAXBElement <स्ट्रिंग> ऑब्जेक्ट को कैसे त्वरित करूं?


120

मुझे इनमें से किसी एक को बनाने की आवश्यकता है क्योंकि इंटरफ़ेस को इसकी आवश्यकता है ... क्या कोई कृपया मुझे बता सकता है कि एक कैसे बना सकता है, क्योंकि वहाँ एक c'tor परिभाषित नहीं लगता है?

जवाबों:


179

जब आप WSDL को आयात करते हैं, तो आपके पास एक ObjectFactoryवर्ग होना चाहिए जिसमें विभिन्न इनपुट पैरामीटर बनाने के लिए तरीकों का गुच्छा होना चाहिए।

ObjectFactory factory = new ObjectFactory();
JAXBElement<String> createMessageDescription = factory.createMessageDescription("description");
message.setDescription(createMessageDescription);

7
ObjectFactory fact = new ObjectFactory();   
JAXBElement<String> str = fact.createCompositeTypeStringValue("vik");    
comp.setStringValue(str);
CompositeType retcomp = service.getDataUsingDataContract(comp);
System.out.println(retcomp.getStringValue().getValue());

7

यहाँ है कि मैं यह कैसे करते हैं। आपको अपने जनरेट किए गए कोड से नाम स्थान URL और तत्व नाम प्राप्त करने की आवश्यकता होगी।

new JAXBElement(new QName("http://www.novell.com/role/service","userDN"),
                new String("").getClass(),testDN);

6
JAXBElement कंस्ट्रक्टर का उपयोग करने के बजाए नीचे दिए गए ऑब्जेक्टफैक्टरी क्लास का उपयोग करना बेहतर है
हरीश

3

अन्य विकल्प:

JAXBElement<String> element = new JAXBElement<>(new QName("Your localPart"),
                                                String.class, "Your message");

फिर:

System.out.println(element.getValue()); // Result: Your message

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.