मुझे लगता है कि आप अनुरोध के साथ भेजे गए एक JSON संदेश निकाय के बारे में बात कर रहे हैं।
यदि ऐसा है, तो कृपया ध्यान दें कि जब तक पूरी तरह से मना नहीं किया जाता है, तो आम सहमति है कि अनुरोध प्राप्त करें अनुरोध निकायों के पास होना चाहिए। क्यों स्पष्टीकरण के लिए "HTTP GET with request body" प्रश्न देखें।
मैं इसका केवल इसलिए उल्लेख करता हूं क्योंकि आपका उदाहरण एक GET अनुरोध दिखाता है। यदि आप पोस्ट या पुट कर रहे हैं, तो पढ़ना जारी रखें, लेकिन अगर आप वास्तव में अपने प्रोजेक्ट में जीईटी अनुरोध कर रहे हैं, तो मैं अनुशंसा करता हूं कि आप kondu's solution का पालन करें।
ने कहा कि साथ
, एक JSON या XML संदेश के मुख्य भाग का उपभोग करने के लिए, एक (unannotated) विधि पैरामीटर अपने आप में एक JAXB सेम संदेश का प्रतिनिधित्व करता है कि शामिल हैं।
तो, अपने संदेश के मुख्य भाग इस तरह दिखता है:
{"hello":"world","foo":"bar","count":123}
तो फिर तुम एक इसी वर्ग कि इस तरह दिखता है पैदा करेगा:
@XmlRootElement
public class RequestBody {
@XmlElement String hello;
@XmlElement String foo;
@XmlElement Integer count;
}
और आपकी सेवा विधि इस प्रकार दिखाई देगा:
@POST
@Path("/GetHrMsg/json_data")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public void gethrmessage(RequestBody requestBody) {
System.out.println(requestBody.hello);
System.out.println(requestBody.foo);
System.out.println(requestBody.count);
}
जो आउटपुट होगा:
world
bar
123
JAXB का उपयोग कर HTTP डेटा के विभिन्न प्रकार के उपयोग के बारे में अधिक जानकारी के लिए, मैं तुम्हें सवाल "How to access parameters in a RESTful POST method" है, जो कुछ शानदार जानकारी है की जाँच की सलाह देते हैं।
धन्यवाद यह मुझे त्रुटि को हल करने में मदद मिली लिए :) –