मैं एक वेब सेवा के लिए एक इंटरसेप्टर लिखने की कोशिश कर रहा हूं जो एंडपॉइंट पर भेजे जाने से पहले साबुन संदेश की सामग्री को संशोधित करेगा। यदि किसी क्लाइंट ने एक संदेश भेजा है जहां कुछ तत्व का मान 1 है, तो मैं उस तत्व को 2 में बदलने में सक्षम होना चाहता हूं ताकि जब संदेश एंडपॉइंट पर आता है, ऐसा लगता है कि क्लाइंट ने 2 के बजाय 2 सबमिट किया है 1. मुझे यकीन नहीं है कि यह एक कठिन काम है जो मुझे परेशान कर रहा है, या एक आसान काम जिसे मैं कठिन बना रहा हूं, उससे होने की आवश्यकता है।स्प्रिंग साबुन इंटरसेप्टर एक संदेश की सामग्री को कैसे संशोधित कर सकता है?
मैंने स्प्रिंग इंटरसेप्टर के कुछ कदम उठाए हैं; लेकिन प्रमाणीकरण और लॉगिंग इंटरसेप्टर प्रत्येक संदेश को पारगमन में परिवर्तित नहीं करते हैं। Wss4jSecurityInterceptor MessageContext में कुछ गुण जोड़ता है; लेकिन मैं ऐसा कुछ भी नहीं कर पा रहा हूं जो यह कर रहा है। मेरे पास एक इंटरसेप्टर का खोल है; लेकिन कुछ भी नहीं जो किसी भी मूल्य के कुछ भी कर रहा है।
public boolean handleRequest(MessageContext messageContext, Object endpoint)
throws Exception {
SaajSoapMessage saajSoapMessage = (SaajSoapMessage) messageContext
.getRequest();
SOAPMessage soapMessage = saajSoapMessage.getSaajMessage();
SOAPBody soapBody = soapMessage.getSOAPBody();
return true;
}
मुझे आशा थी कि ऐसा मौका था कि अन्यथा इस विशेष समस्या को हल कर चुके हैं। किसी भी जानकारी की सराहना की जाएगी। धन्यवाद।
धन्यवाद। आप सही हैं - यह उम्मीद के रूप में सीधे आगे नहीं है। मैंने वास्तव में एक और फैशन में अपनी समस्या हल की। हालांकि यह मेरे मूल प्रश्न को सीधे संबोधित नहीं करता है - यह मेरी वर्तमान समस्या हल करता है। – Dave