मैं कुछ वेब-आधारित अनुप्रयोगों पर काम कर रहा हूं और मुझे अपाचे सीएक्सएफ unmarshalling के बारे में एक सवाल है। हमारी परियोजना में हम सीएक्सएफ 2.4.1 संस्करण का उपयोग करते हैं।सीएक्सएफ त्रुटि हैंडलिंग ओवरराइड
जब कुछ सोप अनुरोध गलत है CXF मानक SOAPFaultException और सोप प्रतिक्रिया फेंकता है जैसे मानक क्षेत्रों के साथ बनाया गया है (उदाहरण के लिए कुछ फ़ील्ड संख्यात्मक के बजाय पाठ है):
<soap:Fault>
<faultcode>soap:Client</faultcode>
<faultstring>Unmarshalling Error: some field missing</faultstring>
</soap:Fault>
परियोजना आवश्यकताओं कहते हैं कि किसी भी स्थिति के मामले में गलती सिस्टम की तरह, अन्य प्रारूप में जवाब की जरूरत है:
<soap:body>
<ResponseState>
<ErrorCode>2732</ErrorCode>
<ErrorMessage>Unmarshalling Error: some field missing</ErrorMessage>
<ErrorDetails> some details </ErrorDetails>
<some other fields>
...
</ResponseState>
</soap:body>
तो सवाल यह है: मैं कैसे किसी भी तरह इस त्रुटि हैंडलिंग ओवरराइड और मेरे प्रारूप में प्रतिक्रिया कर सकते हैं, नहीं डिफ़ॉल्ट?
अग्रिम धन्यवाद।
पीएस मैंने कुछ ValidationEventHandler प्रिंसिपल को देखने की कोशिश की, लेकिन यह सीएक्सएफ 2.0 और उच्चतर में किसी अन्य तरीके से काम करता है।
इस मुद्दे पर किए गए शोध को सारांशित करने के लिए धन्यवाद। अब मुझे एक समान चुनौती का सामना करना पड़ रहा है। – Withheld