мы определили bean-компонент в одном проекте, как показано ниже:
<bean class="a.b.c.d.classA" id="classA">
<property name="prop1" ref="ref1"/>
</bean>
Мы импортируем эту конфигурацию в другой проект и хотим перезаписать определение bean-компонента во время установки патча. Итак, здесь нам нужно изменить класс, но другие данные останутся без изменений (без изменения идентификатора компонента).
<bean class="a.b.c.d.classB" id="classA">
<property name="prop1" ref="ref1"/>
</bean>
С помощью XML-файла установки патча мы решили сделать это с помощью вызова муравья следующим образом:
<xmltask source="beans.xml" dest="beans.xml">
<remove path="/beans/bean[@id='classA']/@class"/>
</xmltask>
<antcall target="abcd">
<param name="file_path" value="beans.xml"/>
<param name="item.path" value="/beans/bean[@id='classA']"/>
<param name="item.name.path" value="class"/>
<param name="item.name.value" value="a.b.c.d.classB"/>
</antcall>
Приведенный выше подход как-то не работает, может что-то упустить. Итак, какие изменения мы можем сделать?