the test code will go to a infinite loop. found the class org.springframework.core.SimpleAliasRegistry had a bug.
config:
Code:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <bean id="a" class="test.TestAlias" /> <bean id="b" class="test.TestAlias" /> <bean id="c" class="test.TestAlias" /> <bean id="d" class="test.TestAlias" /> <bean id="e" class="test.TestAlias" /> <alias name="a" alias="b"/> <alias name="b" alias="c"/> <alias name="c" alias="d"/> <alias name="d" alias="e"/> <alias name="e" alias="c"/> </beans>
java code:
Code:import org.springframework.context.support.FileSystemXmlApplicationContext; public class TestAlias { public static void main(String[] args) { String config="config.xml"; FileSystemXmlApplicationContext context=new FileSystemXmlApplicationContext(config); String[] als=context.getAliases("e"); for(String str:als){ System.out.println(str); } context.close(); } }


Reply With Quote