LINUX.ORG.RU

xmlns=«java://...» в теге beans

 , ,


1

1

Здравствуйте

Столкнулся с таким вот описанием бинов в одном древнем проекте:

<beans xmlns="java://org.long.package.name"
       xmlns:x="http://www.springframework.org/schema/beans"

       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    <ClassNameFromLongPackageName>
        <fieldName>value</fieldName>
    </ClassNameFromLongPackageName>
</beans>

Ну и имеем некий класс-бин:

package org.long.package.name;

public class ClassNameFromLongPackageName {
    private String fieldName;

    public void setFieldName(String value) {
        fieldName = value;
    }

    public String getFieldName() {
        return fieldName;
    }
}

Может я слишком мало знаю спринг и существует такой формат, а может он устарел. Подскажите или подайте направление, пожалуйста. Гугл не помог или я плохо искал. Возможно ли это заменить на привычные бины? Лично мне кажется, что тут какой-то переписанный спринг используется.

как у тебя создается контекст из этого XML?ClassPathXMLApplicationContext или что-то другое?

глянь проект на предмет наличия кастомных BeanDefinitionReader и BeanDefinitionParser

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Ничего необычного нет. Есть наследник AbstractXmlApplicationContext, который имплементирует SpringApplicationContext. Он использует XmlBeanDefinitionReader.

Подобные xml импортируются в контексты (что-то вроде конфигов), а потом уже эти контексты используются для импорта каких либо ресурсов.

Повторюсь: с виду эти классы - обычные бины. Сейчас буду проверять, не с переделанным ли я Spring 2.5 имею дела (смущает наличие его зазипованных исходников в транке), потому что Spring 3.2.9, например (и уж тем более 4.1.6) не хотят переваривать этот <beans … xmlns="java://"

m4n71k0r
() автор топика

Это XBean. Можешь выпилить... Лишний сахар

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.