Я пытался просматривать веб-сайты и документы, но не могу найти аналог схемы util:list из Spring? Я что-то проглядел? если его нет, то какая альтернатива? В любом случае мне нужен список bean-компонентов, введенных в другой bean-компонент - я планировал использовать util:list, но...
аналог проекта util:list из Spring
Ответы (2)
В http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd.
Набор типов «значений», которые можно использовать в любом месте, где может быть указано значение. Этот набор включает элементы ‹ ref > и ‹ idref >, любые типы компонентов (‹ bean >, ‹ service > и т. д.) в качестве встроенных компонентов, общий элемент для типов, полученных из строковых значений, любой из типов коллекций ( ‹ set >, ‹ list >, ‹ array >, ‹ map >, ‹ props >) и тип ‹ null > для ввода нулевого значения.
Кроме того, вы можете найти пример здесь: http://grepcode.com/file/repo1.maven.org/maven2/org.apache.aries.blueprint/org.apache.aries.blueprint.sample/0.4/OSGI-INF/blueprint/config.xml
Вы пробовали это?
<bean id="myList" class="java.util.ArrayList">
<argument>
<list value-type="com.example.MyType">
<ref component-id="mycomponent1"/>
<ref component-id="mycomponent2"/>
<ref component-id="mycomponent3"/>
<bean class="com.example.MySubType"/>
</list>
</argument>
</bean>
ArrayList принимает коллекцию в качестве аргумента конструктора (как и LinkedList, кстати). Таким образом, вы просто создаете компонент типа List и предоставляете список ссылок на компоненты или компоненты в конструкторе.