मैं एक वेब सेवा बनाने के लिए स्प्रिंग, सीएक्सएफ और हाइबरनेट का उपयोग कर रहा हूं जो एक विदेशी डेटाबेस पर खोज क्वेरी करता है जिसे मैंने केवल पढ़ने के लिए उपयोग किया है।सीएक्सएफ का उपयोग करते समय डब्ल्यूएस आउटपुट में अमान्य वर्णों से कैसे निपटें?
समस्या यह है कि डेटाबेस में कुछ प्रविष्टियों में टेक्स्ट फ़ील्ड में अजीब वर्ण (0x2) होते हैं, और ऐसा लगता है कि सीएक्सएफ या लाइब्रेरी (एगेस?) जो हाइबरनेट सत्र से लौटाई गई वस्तुओं को संसाधित/क्रमबद्ध करने के लिए उपयोग करती है इसके साथ सौदा नहीं:
org.apache.cxf.aegis.DatabindingException: Error writing document.. Nested exception is com.ctc.wstx.exc.WstxIOException: Invalid white space character (0x2) in text to output (in xml 1.1, could output as a character entity)
मैं इसके आसपास कैसे हो सकता हूं? आदर्श रूप में, मैं केवल उन पात्रों को हटा सकता हूं, क्योंकि वे मेरे आउटपुट के लिए कोई फर्क नहीं पड़ता ... धन्यवाद!
जो कि उस समय मैं जो कर रहा था उसके करीब है, इसलिए मैं इसे स्वीकार कर रहा हूं! – elias
क्या यह गलत नहीं है? मेरा मतलब है, regexp (जावा के लिए भाग गया) होना चाहिए: "[^ \\ x09 \\ x0A \\ x0D \\ x20 - \\ xD7FF \\ xE000 - \\ xFFFD \\ x10000 - \\ x10FFFF]" – greguren
यह मेरे लिए पूरी तरह से काम करता है –