Вот что у меня:
Document xmlDoc = XmlUtils.getXMLDocument(custData);
if (xmlDoc == null) {
obj.setErr_message("Invalid form data");
return obj;
}
if ((xmlDoc.getElementsByTagName("fullname")).getLength() == 0) {
obj.setErr_message("Empty fullname!");
return obj;
} else {
if (StringUtils.isNullOrEmpty((xmlDoc.getElementsByTagName("fullname")).item(0).getTextContent()) == true) {
obj.setErr_message("Empty fullname!");
return obj;
} else {
obj.setFullName((xmlDoc.getElementsByTagName("fullname")).item(0).getTextContent());
Util.log(CustomLogger.LogType.DEBUG, Boolean.TRUE, "Full Name: " + ((xmlDoc.getElementsByTagName("fullname")).item(0).getTextContent()));
}
}
Итак, если мой ввод в xml файл:
<custdata>
<fullname>Đà Nẵng Nai</fullname>
</custdata>
, я получаю: Full Name: Ä�à Nẵng Nai .
Это то, что было, когда я искал класс xmlUtils. Надеюсь, это поможет. Я унаследовал этот код от кого-то еще, поэтому я тоже работаю над этим впервые.
XmlUtils:
package com.ilts.sw.utils;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
public class XmlUtils {
public XmlUtils() {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: aload_0
* 1: invokespecial java/lang/Object."<init>":()V
* 4: return
* */
// </editor-fold>
}
public static Document getXMLDocument(String xmlData) {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: aconst_null
* 1: astore_1
* 2: invokestatic javax/xml/parsers/DocumentBuilderFactory.newInstance:()Ljavax/xml/parsers/DocumentBuilderFactory;
* 5: astore_2
* 6: aload_2
* 7: iconst_0
* 8: invokevirtual javax/xml/parsers/DocumentBuilderFactory.setValidating:(Z)V
* 11: aload_2
* 12: iconst_1
* 13: invokevirtual javax/xml/parsers/DocumentBuilderFactory.setNamespaceAware:(Z)V
* 16: aload_2
* 17: invokevirtual javax/xml/parsers/DocumentBuilderFactory.newDocumentBuilder:()Ljavax/xml/parsers/DocumentBuilder;
* 20: astore_3
* 21: new java/io/ByteArrayInputStream
* 24: dup
* 25: aload_0
* 26: getstatic java/nio/charset/StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
* 29: invokevirtual java/lang/String.getBytes:(Ljava/nio/charset/Charset;)[B
* 32: invokespecial java/io/ByteArrayInputStream."<init>":([B)V
* 35: astore 4
* 37: aload_3
* 38: aload 4
* 40: invokevirtual javax/xml/parsers/DocumentBuilder.parse:(Ljava/io/InputStream;)Lorg/w3c/dom/Document;
* 43: astore_1
* 44: aload_1
* 45: invokeinterface org/w3c/dom/Document.getDocumentElement:()Lorg/w3c/dom/Element;
* 50: invokeinterface org/w3c/dom/Element.normalize:()V
* 55: goto 71
* 58: astore_2
* 59: getstatic com/ilts/sw/log/CustomLogger$LogType.SEVERE:Lcom/ilts/sw/log/CustomLogger$LogType;
* 62: getstatic java/lang/Boolean.TRUE:Ljava/lang/Boolean;
* 65: ldc Exception due to
* 67: aload_2
* 68: invokestatic com/ilts/sw/utils/LogUtils.logException:(Lcom/ilts/sw/log/CustomLogger$LogType;Ljava/lang/Boolean;Ljava/lang/String;Ljava/lang/Exception;)V
* 71: aload_1
* 72: areturn
* Exception table:
* from to target type
* 2 55 58 Class java/lang/Exception
* */
// </editor-fold>
}
public static void prettyXMLPrint(Node node, String tab) {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: aload_0
* 1: invokeinterface org/w3c/dom/Node.getNodeType:()S
* 6: iconst_3
* 7: if_icmpne 42
* 10: aload_1
* 11: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 14: invokevirtual java/lang/Boolean.booleanValue:()Z
* 17: ifne 27
* 20: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 23: aload_1
* 24: invokevirtual java/io/PrintStream.print:(Ljava/lang/String;)V
* 27: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 30: aload_0
* 31: invokeinterface org/w3c/dom/Node.getNodeValue:()Ljava/lang/String;
* 36: invokevirtual java/io/PrintStream.println:(Ljava/lang/String;)V
* 39: goto 388
* 42: aload_0
* 43: invokeinterface org/w3c/dom/Node.getNodeType:()S
* 48: iconst_1
* 49: if_icmpne 388
* 52: aload_1
* 53: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 56: invokevirtual java/lang/Boolean.booleanValue:()Z
* 59: ifne 69
* 62: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 65: aload_1
* 66: invokevirtual java/io/PrintStream.print:(Ljava/lang/String;)V
* 69: aload_0
* 70: invokeinterface org/w3c/dom/Node.hasAttributes:()Z
* 75: iconst_1
* 76: if_icmpne 223
* 79: aload_0
* 80: invokeinterface org/w3c/dom/Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
* 85: astore_2
* 86: new java/lang/StringBuilder
* 89: dup
* 90: invokespecial java/lang/StringBuilder."<init>":()V
* 93: astore_3
* 94: aload_3
* 95: new java/lang/StringBuilder
* 98: dup
* 99: invokespecial java/lang/StringBuilder."<init>":()V
* 102: ldc <
* 104: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 107: aload_0
* 108: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 113: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 116: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 119: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 122: pop
* 123: iconst_0
* 124: istore 4
* 126: iload 4
* 128: aload_2
* 129: invokeinterface org/w3c/dom/NamedNodeMap.getLength:()I
* 134: if_icmpge 203
* 137: aload_2
* 138: iload 4
* 140: invokeinterface org/w3c/dom/NamedNodeMap.item:(I)Lorg/w3c/dom/Node;
* 145: astore 5
* 147: aload_3
* 148: new java/lang/StringBuilder
* 151: dup
* 152: invokespecial java/lang/StringBuilder."<init>":()V
* 155: ldc
* 157: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 160: aload 5
* 162: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 167: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 170: ldc =\"
* 172: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 175: aload 5
* 177: invokeinterface org/w3c/dom/Node.getNodeValue:()Ljava/lang/String;
* 182: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 185: ldc \"
* 187: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 190: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 193: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 196: pop
* 197: iinc 4, 1
* 200: goto 126
* 203: aload_3
* 204: ldc >
* 206: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 209: pop
* 210: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 213: aload_3
* 214: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 217: invokevirtual java/io/PrintStream.println:(Ljava/lang/String;)V
* 220: goto 258
* 223: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 226: new java/lang/StringBuilder
* 229: dup
* 230: invokespecial java/lang/StringBuilder."<init>":()V
* 233: ldc <
* 235: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 238: aload_0
* 239: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 244: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 247: ldc >
* 249: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 252: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 255: invokevirtual java/io/PrintStream.println:(Ljava/lang/String;)V
* 258: aload_0
* 259: invokeinterface org/w3c/dom/Node.getChildNodes:()Lorg/w3c/dom/NodeList;
* 264: astore_2
* 265: iconst_0
* 266: istore_3
* 267: iload_3
* 268: aload_2
* 269: invokeinterface org/w3c/dom/NodeList.getLength:()I
* 274: if_icmpge 336
* 277: aload_1
* 278: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 281: invokevirtual java/lang/Boolean.booleanValue:()Z
* 284: ifne 319
* 287: aload_2
* 288: iload_3
* 289: invokeinterface org/w3c/dom/NodeList.item:(I)Lorg/w3c/dom/Node;
* 294: new java/lang/StringBuilder
* 297: dup
* 298: invokespecial java/lang/StringBuilder."<init>":()V
* 301: aload_1
* 302: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 305: ldc
* 307: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 310: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 313: invokestatic com/ilts/sw/utils/XmlUtils.prettyXMLPrint:(Lorg/w3c/dom/Node;Ljava/lang/String;)V
* 316: goto 330
* 319: aload_2
* 320: iload_3
* 321: invokeinterface org/w3c/dom/NodeList.item:(I)Lorg/w3c/dom/Node;
* 326: aload_1
* 327: invokestatic com/ilts/sw/utils/XmlUtils.prettyXMLPrint:(Lorg/w3c/dom/Node;Ljava/lang/String;)V
* 330: iinc 3, 1
* 333: goto 267
* 336: aload_1
* 337: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 340: invokevirtual java/lang/Boolean.booleanValue:()Z
* 343: ifne 353
* 346: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 349: aload_1
* 350: invokevirtual java/io/PrintStream.print:(Ljava/lang/String;)V
* 353: getstatic java/lang/System.out:Ljava/io/PrintStream;
* 356: new java/lang/StringBuilder
* 359: dup
* 360: invokespecial java/lang/StringBuilder."<init>":()V
* 363: ldc </
* 365: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 368: aload_0
* 369: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 374: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 377: ldc >
* 379: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 382: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 385: invokevirtual java/io/PrintStream.println:(Ljava/lang/String;)V
* 388: return
* */
// </editor-fold>
}
public static void getXMLString(Node node, String tab, StringBuilder result) {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: aload_0
* 1: invokeinterface org/w3c/dom/Node.getNodeType:()S
* 6: iconst_3
* 7: if_icmpne 64
* 10: aload_1
* 11: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 14: invokevirtual java/lang/Boolean.booleanValue:()Z
* 17: ifne 26
* 20: aload_2
* 21: aload_1
* 22: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 25: pop
* 26: aload_0
* 27: invokeinterface org/w3c/dom/Node.getNodeValue:()Ljava/lang/String;
* 32: invokevirtual java/lang/String.trim:()Ljava/lang/String;
* 35: astore_3
* 36: aload_3
* 37: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 40: invokevirtual java/lang/Boolean.booleanValue:()Z
* 43: ifne 55
* 46: aload_2
* 47: aload_3
* 48: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 51: pop
* 52: goto 61
* 55: aload_2
* 56: aload_1
* 57: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 60: pop
* 61: goto 398
* 64: aload_0
* 65: invokeinterface org/w3c/dom/Node.getNodeType:()S
* 70: iconst_1
* 71: if_icmpne 398
* 74: aload_1
* 75: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 78: invokevirtual java/lang/Boolean.booleanValue:()Z
* 81: ifne 90
* 84: aload_2
* 85: aload_1
* 86: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 89: pop
* 90: aload_0
* 91: invokeinterface org/w3c/dom/Node.hasAttributes:()Z
* 96: iconst_1
* 97: if_icmpne 248
* 100: aload_0
* 101: invokeinterface org/w3c/dom/Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
* 106: astore_3
* 107: new java/lang/StringBuilder
* 110: dup
* 111: invokespecial java/lang/StringBuilder."<init>":()V
* 114: astore 4
* 116: aload 4
* 118: new java/lang/StringBuilder
* 121: dup
* 122: invokespecial java/lang/StringBuilder."<init>":()V
* 125: ldc <
* 127: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 130: aload_0
* 131: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 136: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 139: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 142: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 145: pop
* 146: iconst_0
* 147: istore 5
* 149: iload 5
* 151: aload_3
* 152: invokeinterface org/w3c/dom/NamedNodeMap.getLength:()I
* 157: if_icmpge 227
* 160: aload_3
* 161: iload 5
* 163: invokeinterface org/w3c/dom/NamedNodeMap.item:(I)Lorg/w3c/dom/Node;
* 168: astore 6
* 170: aload 4
* 172: new java/lang/StringBuilder
* 175: dup
* 176: invokespecial java/lang/StringBuilder."<init>":()V
* 179: ldc
* 181: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 184: aload 6
* 186: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 191: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 194: ldc =\"
* 196: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 199: aload 6
* 201: invokeinterface org/w3c/dom/Node.getNodeValue:()Ljava/lang/String;
* 206: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 209: ldc \"
* 211: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 214: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 217: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 220: pop
* 221: iinc 5, 1
* 224: goto 149
* 227: aload 4
* 229: ldc >
* 231: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 234: pop
* 235: aload_2
* 236: aload 4
* 238: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 241: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 244: pop
* 245: goto 282
* 248: aload_2
* 249: new java/lang/StringBuilder
* 252: dup
* 253: invokespecial java/lang/StringBuilder."<init>":()V
* 256: ldc <
* 258: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 261: aload_0
* 262: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 267: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 270: ldc >
* 272: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 275: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 278: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 281: pop
* 282: aload_0
* 283: invokeinterface org/w3c/dom/Node.getChildNodes:()Lorg/w3c/dom/NodeList;
* 288: astore_3
* 289: iconst_0
* 290: istore 4
* 292: iload 4
* 294: aload_3
* 295: invokeinterface org/w3c/dom/NodeList.getLength:()I
* 300: if_icmpge 348
* 303: aload_1
* 304: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 307: invokevirtual java/lang/Boolean.booleanValue:()Z
* 310: ifne 329
* 313: aload_3
* 314: iload 4
* 316: invokeinterface org/w3c/dom/NodeList.item:(I)Lorg/w3c/dom/Node;
* 321: aload_1
* 322: aload_2
* 323: invokestatic com/ilts/sw/utils/XmlUtils.getXMLString:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljava/lang/StringBuilder;)V
* 326: goto 342
* 329: aload_3
* 330: iload 4
* 332: invokeinterface org/w3c/dom/NodeList.item:(I)Lorg/w3c/dom/Node;
* 337: aload_1
* 338: aload_2
* 339: invokestatic com/ilts/sw/utils/XmlUtils.getXMLString:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljava/lang/StringBuilder;)V
* 342: iinc 4, 1
* 345: goto 292
* 348: aload_1
* 349: invokestatic com/ilts/sw/utils/StringUtils.isNullOrEmpty:(Ljava/lang/String;)Ljava/lang/Boolean;
* 352: invokevirtual java/lang/Boolean.booleanValue:()Z
* 355: ifne 364
* 358: aload_2
* 359: aload_1
* 360: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 363: pop
* 364: aload_2
* 365: new java/lang/StringBuilder
* 368: dup
* 369: invokespecial java/lang/StringBuilder."<init>":()V
* 372: ldc </
* 374: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 377: aload_0
* 378: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 383: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 386: ldc >
* 388: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 391: invokevirtual java/lang/StringBuilder.toString:()Ljava/lang/String;
* 394: invokevirtual java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
* 397: pop
* 398: return
* */
// </editor-fold>
}
public static Boolean isDocumentSigned(Node node) {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: iconst_0
* 1: invokestatic java/lang/Boolean.valueOf:(Z)Ljava/lang/Boolean;
* 4: astore_1
* 5: aconst_null
* 6: astore_2
* 7: aload_0
* 8: invokeinterface org/w3c/dom/Node.hasChildNodes:()Z
* 13: iconst_1
* 14: if_icmpne 24
* 17: aload_0
* 18: invokeinterface org/w3c/dom/Node.getChildNodes:()Lorg/w3c/dom/NodeList;
* 23: astore_2
* 24: aload_2
* 25: ifnull 78
* 28: iconst_0
* 29: istore_3
* 30: iload_3
* 31: aload_2
* 32: invokeinterface org/w3c/dom/NodeList.getLength:()I
* 37: if_icmpge 78
* 40: aload_2
* 41: iload_3
* 42: invokeinterface org/w3c/dom/NodeList.item:(I)Lorg/w3c/dom/Node;
* 47: astore 4
* 49: aload 4
* 51: invokeinterface org/w3c/dom/Node.getNodeName:()Ljava/lang/String;
* 56: ldc signature
* 58: invokevirtual java/lang/String.compareToIgnoreCase:(Ljava/lang/String;)I
* 61: ifne 72
* 64: iconst_1
* 65: invokestatic java/lang/Boolean.valueOf:(Z)Ljava/lang/Boolean;
* 68: astore_1
* 69: goto 78
* 72: iinc 3, 1
* 75: goto 30
* 78: aload_1
* 79: areturn
* */
// </editor-fold>
}
public static String getSignatureValue(Document docObj) {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: ldc
* 2: astore_1
* 3: aload_0
* 4: ifnull 40
* 7: aload_0
* 8: ldc Signature
* 10: invokeinterface org/w3c/dom/Document.getElementsByTagName:(Ljava/lang/String;)Lorg/w3c/dom/NodeList;
* 15: astore_2
* 16: aload_2
* 17: ifnull 40
* 20: aload_2
* 21: invokeinterface org/w3c/dom/NodeList.getLength:()I
* 26: ifle 40
* 29: aload_2
* 30: iconst_0
* 31: invokeinterface org/w3c/dom/NodeList.item:(I)Lorg/w3c/dom/Node;
* 36: invokestatic com/ilts/sw/utils/StringUtils.extractXMLElement:(Lorg/w3c/dom/Node;)Ljava/lang/String;
* 39: astore_1
* 40: aload_1
* 41: areturn
* */
// </editor-fold>
}
}
Как мне проанализировать символы в теге, чтобы такой же точный текст, но без смешного?