Ant xmltask <attr> создает пустое значение атрибута "xmlns"

У меня есть XML-файл следующим образом:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<CustomObject>
</CustomObjects>

Я применяю атрибут XMLTask следующим образом:

<attr path="/CustomObject" attr="xmlns" value="test"/>

Я ожидаю, что файл XML теперь будет включать атрибут xmlns со значением "тест"

Фактический результат выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<CustomObject xmlns="">
</CustomObjects>

Кто-нибудь сталкивался с этой проблемой раньше? или есть какие-либо указания, в чем может быть проблема?

1 ответ

Похоже, xmltask не может создавать атрибуты с именем xmlns, Это известная ошибка: # 8 attr name = "xmlns" не работает на Mac.

В XML xmlns является зарезервированным именем атрибута. Это относится к пространству имен по умолчанию. Для получения дополнительной информации о пространствах имен по умолчанию см. Пространство имен по умолчанию в пространствах имен в Рекомендации XML W3C 1.0.

В качестве альтернативного решения рассмотрите возможность использования XSLT для добавления пространства имен к корневому элементу.

Другие вопросы по тегам