Agregar espacio de nombres a un documento XML ya creado

Estoy creando un objeto de documento W3C usando un valor de cadena. Una vez que creé el objeto Documento, quiero agregar un espacio de nombres al elemento raíz de este documento. Aquí está mi código actual:

Document document = builder.parse(new InputSource(new StringReader(xmlString)));
document.getDocumentElement().setAttributeNS("http://com", "xmlns:ns2", "Test");
document.setPrefix("ns2");
TransformerFactory tranFactory = TransformerFactory.newInstance();
Transformer aTransformer = tranFactory.newTransformer();
Source src = new DOMSource(document);
Result dest = new StreamResult(new File("c:\\xmlFileName.xml"));
aTransformer.transform(src, dest);

Lo que yo uso como entrada:

<product>
    <arg0>DDDDDD</arg0>
    <arg1>DDDD</arg1>
</product>

Cómo debería verse la salida:

<ns2:product xmlns:ns2="http://com">
    <arg0>DDDDDD</arg0>
    <arg1>DDDD</arg1>
</ns2:product>

Necesito agregar el valor de prefijo y el espacio de nombres también a la cadena xml de entrada. Si intento el código anterior, obtengo esta excepción:

NAMESPACE_ERR: An attempt is made to create or change an object in a way which is incorrect with regard to namespaces.

¡Aprecio tu ayuda!

Respuestas a la pregunta(3)

Su respuesta a la pregunta