Я обновляю один xml, используя dom4j, как показано ниже.добавление пространства имен и префикса пространства имен с использованием dom4j
SAXReader reader = new SAXReader();
document = reader.read(xmlFileName);
но он удаляет все пространства имен из элементов так хочу добавить вручную, но она не работает, когда я попытался следующий код.
Element e1 = root.addElement("jmsProducer");
e1.addNamespace("AEService", "http://www.tibco.com/xmlns/aemeta/services/2002");
мой XML выглядит
<AEService:jmsProducer objectType="endpoint.JMSPublisher" name="Pub1EndPoint">
<AEService:wireFormat>aeXml</AEService:wireFormat>
который Сюд выглядеть
<AEService:jmsProducer xmlns:AEService="http://www.tibco.com/xmlns/aemeta/services /2002" objectType="endpoint.JMSPublisher" name="Pub1EndPoint">
<AEService:wireFormat>aeXml</AEService:wireFormat>
любая помощь высоко appriciated. стукнувшись на это в течение двух дней, пробовал использовать documentfactory метод все еще бесполезно.
я не могу добавить к этому документу самим получать исключение, но при добавлении к элементу оно не добавит, но когда я пытаюсь как пространство имен нс = новое пространство имен (": AEService", "HTTP: //www.tibco.com/xmlns/aemeta/services/2002 "), то xml появляется как" ', если каким-то образом можно удалить дополнительный двоеточие, моя работа будет выполнена. –
user1487454
Этот дополнительный столбец из-за вашего кода. Изменение пространства имен ns = новое пространство имен (": AEService "," tibco.com/xmlns/aemeta/services/2002 ") в пространство имен ns = новое пространство имен (« AEService »,« tibco.com/xmlns/aemeta/services/2002 ») –
У вас есть двоеточие перед AEService, создавая дополнительный двоеточие –