Presta atención porque en este tutorial vas a encontrar la respuesta que buscas.Esta división ha sido probado por nuestros expertos para asegurar la calidad y exactitud de nuestro contenido.
Solución:
Un nodo de texto sin textono es un nodo de texto.
Si está intentando controlar cómo se serializa el elemento XML,
y
son equivalentes, y no le importará a un procesador XML si se utilizó alguno. Ambos están declarando un elemento TYPE sin ningún text()
. La mayoría de los procesadores serializarán un elemento vacío como un elemento de cierre automático.
Si realmente desea evitar que el elemento se serialice como de cierre automático, puede ponerse lindo y agregar un espacio de ancho cero como valor del nodo de texto:
que se verá así:
.
Técnicamente no es un “vacío” string, pero puede lograr lo que desea y no se rellenará con espacio si se selecciona y utiliza el nodo de texto.
Desde un punto de vista XML, no hay diferencia entre
y
. Ambos son equivalentes y se pueden usar indistintamente. Para un analizador XML, significa que no hay texto. El analizador no distingue entre “sin texto” y “texto de longitud cero”.
En contraste con Java null
y ""
son conceptos totalmente diferentes.
Entonces, si desea asignar valores de Java a XML y viceversa, debe manejar esa falta de coincidencia. Y hay varias alternativas posibles. Por ejemplo, puedes abandonar null
valores para sus variables de cadena. Luego, debe asegurarse de que todas sus variables de cadena se inicialicen con cadenas vacías. O puede decir un elemento TYPE sin un elemento secundario de texto (serializado como
o
) significa el vacío string en Java y un elemento TYPE que falta significa null
. Es tu elección.
Aquí está el código de lo que está buscando:
try
DocumentBuilderFactory docFactory=DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder=docFactory.newDocumentBuilder();
//root Elements -- Response
Document doc=docBuilder.newDocument();
doc.setXmlStandalone(true);
Element response=doc.createElement("Data");
doc.appendChild(response);
// Child Element -- Play
Element hangup=doc.createElement("Type");
response.appendChild(hangup);
//Writer the content into xml file
TransformerFactory transformerFactory=TransformerFactory.newInstance();
Transformer transformer=transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT,"yes");
DOMSource source=new DOMSource(doc);
StreamResult result=new StreamResult(sayOut);
//StreamResult result=new StreamResult(System.out);
transformer.transform(source,result);
logger.info("===========XML GENERATION DON FOR HANGUP============");
catch(ParserConfigurationException pce)
logger.error(" ==============2======== ERROR IN PRASERCONFIGURATION ===================================");
pce.printStackTrace();
Salida generada por él:
Espero haberle dado lo correcto … aunque estoy de acuerdo con eso
o
no tiene ninguna diferencia con respecto a XML Parser.
Si para ti ha sido de provecho nuestro post, nos gustaría que lo compartas con otros desarrolladores así contrubuyes a extender esta información.