Cómo editar xml específico usando xpath
Tengo debajo de xml que se genera utilizando la función xslt json-to-xml (). Necesito actualizar este xml como se muestra en Result xml usando xpaths dados. Necesito la solución en java o xslt. Cualquier ayuda sería muy apreciada.
XML
<?xml version="1.0" encoding="UTF-8"?>
<map xmlns="http://www.w3.org/2005/xpath-functions">
<map key="Response">
<map key="Headers">
<string key="server">Lisa</string>
<string key="Status-Code">200</string>
<string key="Content-Type">applicaton/json</string>
</map>
<map key="Payload">
<map key="root">
<array key="cars">
<map>
<string key="company">ccc</string>
<string key="model">mmm</string>
</map>
<map>
<string key="strength">666</string>
<string key="Capacity">333</string>
</map>
</array>
<array key="bikes">
<map>
<string key="company">abc</string>
<string key="model">2018</string>
</map>
</array>
</map>
</map>
</map>
</map>
XPATHS
/Response/Payload/root/cars[2]/strength=999
/Response/Payload/root/bikes/model=2019
/Response/Headers/server=WebSphere
/Response/Headers/Content-Type=text
/Response/Payload/root/cars[2]/Capacity=555
/Response/Payload/root/cars[1]/model=mmm1
/Response/Payload/root/bikes/company=xyz
/Response/Payload/root/cars[1]/company=ccc1
/Response/Headers/Status-Code=400
RESULTADO ACTUALIZADO XML
<map xmlns="http://www.w3.org/2005/xpath-functions">
<map key="Response">
<map key="Headers">
<string key="server">WebSphere</string>
<string key="Status-Code">400</string>
<string key="Content-Type">text</string>
</map>
<map key="Payload">
<map key="root">
<array key="cars">
<map>
<string key="company">ccc1</string>
<string key="model">mmm1</string>
</map>
<map>
<string key="strength">999</string>
<string key="Capacity">555</string>
</map>
</array>
<array key="bikes">
<map>
<string key="company">xyz</string>
<string key="model">2019</string>
</map>
</array>
</map>
</map>
</map>
</map>
Mi intento
Intenté convertir este xml de nuevo a json usando la función xslt y luego usé com.jayway.jsonpathJayway JsonPath biblioteca para analizar / cambiar los valores de json en xpaths dados. Y finalmente finalmente cambió ese json nuevamente a xml usando la función xslt. Esto funcionó para mí como encanto !! Pero después de usar esta biblioteca, comencé a enfrentar problemas en mi otra parte de la aplicación :(. Toda la solicitud de publicación con el cuerpo de solicitud json comenzó a dar un error 400. El error fue "Error 400 La solicitud enviada por el cliente era sintácticamente incorrecta". No pude No descubra el problema y puede deberse a diferentes conflictos de jar. Así que estoy intentando otra forma de trabajar. ¿Alguna otra biblioteca como Jayway JsonPath? O cualquier otra solución / sugerencia ayudará mucho.