/** * Associate the given message with the given code. * @param code lookup code * @param locale locale message should be found within * @param defaultMessage message associated with this lookup code * @see #getStaticMessageSource */ public void addMessage(String code, Locale locale, String defaultMessage) { getStaticMessageSource().addMessage(code, locale, defaultMessage); }
/** * Associate the given message with the given code. * @param code lookup code * @param locale locale message should be found within * @param defaultMessage message associated with this lookup code * @see #getStaticMessageSource */ public void addMessage(String code, Locale locale, String defaultMessage) { getStaticMessageSource().addMessage(code, locale, defaultMessage); }
@Override protected ConfigurableApplicationContext createContext() throws Exception { StaticApplicationContext parent = new StaticApplicationContext(); Map<String, String> m = new HashMap<>(); m.put("name", "Roderick"); parent.registerPrototype("rod", TestBean.class, new MutablePropertyValues(m)); m.put("name", "Albert"); parent.registerPrototype("father", TestBean.class, new MutablePropertyValues(m)); parent.refresh(); parent.addApplicationListener(parentListener) ; parent.getStaticMessageSource().addMessage("code1", Locale.getDefault(), "message1"); this.sac = new StaticApplicationContext(parent); sac.registerSingleton("beanThatListens", BeanThatListens.class, new MutablePropertyValues()); sac.registerSingleton("aca", ACATester.class, new MutablePropertyValues()); sac.registerPrototype("aca-prototype", ACATester.class, new MutablePropertyValues()); PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(sac.getDefaultListableBeanFactory()); reader.loadBeanDefinitions(new ClassPathResource("testBeans.properties", getClass())); sac.refresh(); sac.addApplicationListener(listener); sac.getStaticMessageSource().addMessage("code2", Locale.getDefault(), "message2"); return sac; }
@Override protected ConfigurableApplicationContext createContext() throws Exception { StaticApplicationContext parent = new StaticApplicationContext(); Map<String, String> m = new HashMap<>(); m.put("name", "Roderick"); parent.registerPrototype("rod", org.springframework.tests.sample.beans.TestBean.class, new MutablePropertyValues(m)); m.put("name", "Albert"); parent.registerPrototype("father", org.springframework.tests.sample.beans.TestBean.class, new MutablePropertyValues(m)); parent.refresh(); parent.addApplicationListener(parentListener); this.sac = new StaticApplicationContext(parent); sac.registerSingleton("beanThatListens", BeanThatListens.class, new MutablePropertyValues()); sac.registerSingleton("aca", ACATester.class, new MutablePropertyValues()); sac.registerPrototype("aca-prototype", ACATester.class, new MutablePropertyValues()); PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(sac.getDefaultListableBeanFactory()); reader.loadBeanDefinitions(new ClassPathResource("testBeans.properties", getClass())); sac.refresh(); sac.addApplicationListener(listener); StaticMessageSource messageSource = sac.getStaticMessageSource(); Map<String, String> usMessages = new HashMap<>(3); usMessages.put("message.format.example1", MSG_TXT1_US); usMessages.put("message.format.example2", MSG_TXT2_US); usMessages.put("message.format.example3", MSG_TXT3_US); messageSource.addMessages(usMessages, Locale.US); messageSource.addMessage("message.format.example1", Locale.UK, MSG_TXT1_UK); return sac; }
@Override protected ConfigurableApplicationContext createContext() throws Exception { StaticApplicationContext parent = new StaticApplicationContext(); Map<String, String> m = new HashMap<>(); m.put("name", "Roderick"); parent.registerPrototype("rod", TestBean.class, new MutablePropertyValues(m)); m.put("name", "Albert"); parent.registerPrototype("father", TestBean.class, new MutablePropertyValues(m)); parent.registerSingleton(StaticApplicationContext.APPLICATION_EVENT_MULTICASTER_BEAN_NAME, TestApplicationEventMulticaster.class, null); parent.refresh(); parent.addApplicationListener(parentListener) ; parent.getStaticMessageSource().addMessage("code1", Locale.getDefault(), "message1"); this.sac = new StaticApplicationContext(parent); sac.registerSingleton("beanThatListens", BeanThatListens.class, new MutablePropertyValues()); sac.registerSingleton("aca", ACATester.class, new MutablePropertyValues()); sac.registerPrototype("aca-prototype", ACATester.class, new MutablePropertyValues()); PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(sac.getDefaultListableBeanFactory()); Resource resource = new ClassPathResource("testBeans.properties", getClass()); reader.loadBeanDefinitions(new EncodedResource(resource, "ISO-8859-1")); sac.refresh(); sac.addApplicationListener(listener); sac.getStaticMessageSource().addMessage("code2", Locale.getDefault(), "message2"); return sac; }
/** * Associate the given message with the given code. * @param code lookup code * @param locale locale message should be found within * @param defaultMessage message associated with this lookup code * @see #getStaticMessageSource */ public void addMessage(String code, Locale locale, String defaultMessage) { getStaticMessageSource().addMessage(code, locale, defaultMessage); }
public void testResolveMessage() { MockRequestContext context = new MockRequestContext(); StaticApplicationContext ac = new StaticApplicationContext(); ac.getStaticMessageSource().addMessage("foo", Locale.FRANCE, "bar"); ac.refresh(); context.getRootFlow().setApplicationContext(ac); context.getMockExternalContext().setLocale(Locale.FRANCE); Expression exp = parser.parseExpression("resourceBundle.foo", new FluentParserContext().evaluate(RequestContext.class)); assertEquals("bar", exp.getValue(context)); } }
public void testResourceBundleRead() { MockExternalContext externalContext = (MockExternalContext) requestContext.getExternalContext(); externalContext.setLocale(Locale.ENGLISH); StaticApplicationContext applicationContext = new StaticApplicationContext(); StaticMessageSource messageSource = applicationContext.getStaticMessageSource(); messageSource.addMessage("myCode", externalContext.getLocale(), "myCode message"); messageSource.addMessage("myCode.myCode", externalContext.getLocale(), "myCode myCode message"); applicationContext.refresh(); Flow flow = (Flow) requestContext.getActiveFlow(); flow.setApplicationContext(applicationContext); String expressionString = "#{resourceBundle.myCode}"; Expression exp = parser.parseExpression(expressionString, new FluentParserContext().template()); assertEquals("myCode message", exp.getValue(requestContext)); expressionString = "#{resourceBundle['myCode']}"; exp = parser.parseExpression(expressionString, new FluentParserContext().template()); assertEquals("myCode message", exp.getValue(requestContext)); expressionString = "#{resourceBundle['myCode.myCode']}"; exp = parser.parseExpression(expressionString, new FluentParserContext().template()); assertEquals("myCode myCode message", exp.getValue(requestContext)); }