提交 a3af9e73 编写于 作者: J Juergen Hoeller

revised use of id and display name (id may be null; SPR-5761)

上级 da4f1d0e
/*
* Copyright 2002-2008 the original author or authors.
* Copyright 2002-2009 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -137,6 +137,7 @@ public abstract class AbstractRefreshableConfigApplicationContext extends Abstra
public void setBeanName(String name) {
if (!this.setIdCalled) {
super.setId(name);
setDisplayName("ApplicationContext '" + name + "'");
}
}
......
/*
* Copyright 2002-2008 the original author or authors.
* Copyright 2002-2009 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -17,8 +17,8 @@
package org.springframework.context.access;
import static org.junit.Assert.*;
import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.access.BeanFactoryLocator;
import org.springframework.beans.factory.access.BeanFactoryReference;
......@@ -58,11 +58,11 @@ public class ContextSingletonBeanFactoryLocatorTests extends SingletonBeanFactor
BeanFactory fac = bfr.getFactory();
assertTrue(fac instanceof ApplicationContext);
assertEquals("a.qualified.name.of.some.sort", ((ApplicationContext) fac).getId());
assertEquals("a.qualified.name.of.some.sort", ((ApplicationContext) fac).getDisplayName());
assertTrue(((ApplicationContext) fac).getDisplayName().contains("a.qualified.name.of.some.sort"));
BeanFactoryReference bfr2 = facLoc.useBeanFactory("another.qualified.name");
BeanFactory fac2 = bfr2.getFactory();
assertEquals("another.qualified.name", ((ApplicationContext) fac2).getId());
assertEquals("another.qualified.name", ((ApplicationContext) fac2).getDisplayName());
assertTrue(((ApplicationContext) fac2).getDisplayName().contains("another.qualified.name"));
assertTrue(fac2 instanceof ApplicationContext);
}
......
......@@ -133,8 +133,8 @@ public final class ClassPathXmlApplicationContextTests {
}
catch (BeanCreationException ex) {
assertTrue(ex.contains(TypeMismatchException.class));
assertTrue(ex.toString().indexOf("someMessageSource") != -1);
assertTrue(ex.toString().indexOf("useCodeAsDefaultMessage") != -1);
assertTrue(ex.toString().contains("someMessageSource"));
assertTrue(ex.toString().contains("useCodeAsDefaultMessage"));
checkExceptionFromInvalidValueType(ex);
checkExceptionFromInvalidValueType(new ExceptionInInitializerError(ex));
assertFalse(context.isActive());
......@@ -146,8 +146,8 @@ public final class ClassPathXmlApplicationContextTests {
ex.printStackTrace(new PrintStream(baos));
String dump = FileCopyUtils.copyToString(
new InputStreamReader(new ByteArrayInputStream(baos.toByteArray())));
assertTrue(dump.indexOf("someMessageSource") != -1);
assertTrue(dump.indexOf("useCodeAsDefaultMessage") != -1);
assertTrue(dump.contains("someMessageSource"));
assertTrue(dump.contains("useCodeAsDefaultMessage"));
}
@Test
......@@ -381,13 +381,14 @@ public final class ClassPathXmlApplicationContextTests {
public void testGenericApplicationContextWithXmlBeanDefinitionsAndSpecifiedId() {
GenericApplicationContext ctx = new GenericApplicationContext();
ctx.setId("testContext");
ctx.setDisplayName("Test Context");
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(ctx);
reader.loadBeanDefinitions(new ClassPathResource(CONTEXT_B, getClass()));
reader.loadBeanDefinitions(new ClassPathResource(CONTEXT_C, getClass()));
reader.loadBeanDefinitions(new ClassPathResource(CONTEXT_A, getClass()));
ctx.refresh();
assertEquals("testContext", ctx.getId());
assertEquals("testContext", ctx.getDisplayName());
assertEquals("Test Context", ctx.getDisplayName());
assertTrue(ctx.containsBean("service"));
assertTrue(ctx.containsBean("logicOne"));
assertTrue(ctx.containsBean("logicTwo"));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册