दिलचस्प पोस्ट
डबल घुंघराले ब्रेसिज़ के साथ AngularJS-Twig संघर्ष स्ट्रिंग में nth घटना कैसे प्राप्त करें? एंड्रॉइड में यूआरएल के जरिये इमेजिव्यू लोड करना है? मैं जावास्क्रिप्ट बीप कैसे कर सकता हूं? जिथूब के साथ सिंकिंग एमएस ऑफ़िस के बिना एक मशीन पर माइक्रोसॉफ्ट ऑफिस का प्रयोग कैसे करें.इंटरॉप.एक्ससेल? ASP.NET MVC स्वचालित कैशिंग विकल्प को कैसे अक्षम करें? एएससीआईआई कोड (0-255) को संबंधित वर्ण के स्ट्रिंग में कैसे परिवर्तित किया जाए? AFNetworking और पृष्ठभूमि स्थानान्तरण Admob कार्यान्वयन त्रुटि jQuery 1.9 .live () फ़ंक्शन नहीं है App.Config परिवर्तन मान जावास्क्रिप्ट में पूर्णांक की श्रेणी पर स्विच करें जावास्क्रिप्ट फ़ाइलें कैशिंग GetLastError () द्वारा दिए गए त्रुटि कोड से त्रुटि संदेश कैसे प्राप्त करें?

कैसे जैक्सन Wildfly को कॉन्फ़िगर करें?

मुझे निम्नलिखित विधि के साथ एक सत्र बीन मिल गया है:

@POST @Consumes("application/x-www-form-urlencoded") @Path("/calculate") @Produces("application/json") public CalculationResult calculate(@FormParam("childProfile") String childProfile, @FormParam("parentProfile") String parentProfile) { ... } 

लौटा CalculationResult JSON के लिए मैप नहीं किया जा सकता है और निम्न अपवाद होता है:

 Caused by: com.fasterxml.jackson.databind.JsonMappingException: No serializer found for class com.test.UniqueName and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS)... 

मैं जंगलीफ़ील्ड में जैक्सन और उसके SerializationFeature फीचर को कैसे कॉन्फ़िगर कर सकता हूं?

वेब के समाधान से एकत्रित समाधान "कैसे जैक्सन Wildfly को कॉन्फ़िगर करें?"

"मैं जैक्सन और इसके सीरियलाइजेशनफ़ेचर को वाइंडफ़ीली में कैसे कॉन्फ़िगर कर सकता हूं?"

आपको इसे Wildfly में कॉन्फ़िगर करने की आवश्यकता नहीं है, आप इसे जेएक्स-आरएस एप्रीसिआ में कॉन्फ़िगर कर सकते हैं। ContextResolver को कॉन्फ़िगर करने के लिए बस एक ContextResolver का उपयोग करें ( यहां और देखें)। कुछ इस तरह

 @Provider public class ObjectMapperContextResolver implements ContextResolver<ObjectMapper> { private final ObjectMapper mapper; public ObjectMapperContextResolver() { mapper = new ObjectMapper(); mapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS); } @Override public ObjectMapper getContext(Class<?> type) { return mapper; } } 

यदि आपके पास पहले से ही जैक्सन निर्भरता नहीं है, तो आपको इसकी आवश्यकता है, जैसे कि संकलन-समय पर निर्भरता

 <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-jackson-provider</artifactId> <version>3.0.8.Final</version> <scope>provided</scope> </dependency> 

यदि आप अपनी संसाधन वर्गों और प्रदाता वर्गों की खोज के लिए स्कैनिंग का उपयोग कर रहे हैं, तो ContextResolver स्वचालित रूप से ContextResolver चाहिए। यदि आप अपने सभी संसाधनों और प्रदाताओं को स्पष्ट रूप से पंजीकृत कर रहे हैं, तो आपको यह भी एक पंजीकृत करना होगा। इसे सिंगलटन के रूप में पंजीकृत किया जाना चाहिए


अद्यतन करें

@ कोज़प्रोव के रूप में एक टिप्पणी में उल्लेख किया गया है, यह वास्तव में resteasy-jackson2-provider निर्भरता के लिए artifactId के रूप में resteasy-jackson2-provider होना चाहिए। -jackson- पुराना org.codehaus (जैक्सन 1.x) का उपयोग करता है, com.fasterxml नए com.fasterxml (जैक्सन 2.x) का उपयोग करता है। Wildfly डिफ़ॉल्ट रूप से जैक्सन 2 संस्करण का उपयोग करता है।

जंगली 9

pom.xml

 <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-jackson2-provider</artifactId> <version>3.0.8.Final</version> <scope>provided</scope> </dependency> 

जावा वर्ग

 @com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true) public class SomePojo implements Serializable { }