JAXB

2010-12-16 14 views
5

के साथ पार्सिंग प्रतिक्रिया एक्सएमएल मैं जेएक्सबी का उपयोग कर एक गैर-wsdl वेब सेवा कॉल से प्रतिक्रिया पढ़ना चाहता हूं। मैं HttpURLConnection का उपयोग करके एक POST अनुरोध भेज रहा हूं, और एक प्रतिक्रिया प्राप्त कर रहा हूं। मेरा सवाल है कि मैं प्रतिक्रिया स्ट्रीम से एक एक्सएमएल दस्तावेज़ बना देता हूं, फिर जावा ऑब्जेक्ट्स बनाने के लिए जैक्सबी का उपयोग करता हूं? या, प्रतिक्रिया स्ट्रीम के साथ फ्लाई पर जैक्सब का उपयोग करना संभव है? यह एक वेब एप्लिकेशन होगा, और मैं कहीं भी जेनरेट किए गए एक्सएमएल दस्तावेज़ को स्टोर करने में सक्षम नहीं हूं, इसलिए यदि मुझे एक्सएमएल दस्तावेज़ बनाने की ज़रूरत है, तो मैं इसे जैक्सबी के लिए कैसे स्टोर कर सकता हूं, अगर मैं जैक्सबी नहीं कर सकता उड़ना?JAXB

उत्तर

3

Unmarshaller.unmarshal एक इनपुटस्ट्रीम ले सकता है, जो इसे एक्सएमएल दस्तावेज़ में पार्स करने की आवश्यकता को समाप्त कर देगा।

6

यहाँ एक उदाहरण है:

String uri = 
    "http://localhost:8080/CustomerService/rest/customers/1"; 
URL url = new URL(uri); 
HttpURLConnection connection = 
    (HttpURLConnection) url.openConnection(); 
connection.setRequestMethod("GET"); 
connection.setRequestProperty("Accept", "application/xml"); 

JAXBContext jc = JAXBContext.newInstance(Customer.class); 
InputStream xml = connection.getInputStream(); 
Customer customer = 
    (Customer) jc.createUnmarshaller().unmarshal(xml); 

connection.disconnect(); 

अधिक जानकारी के लिए देखें: