List of usage examples for org.springframework.web.servlet DispatcherServlet LOCALE_RESOLVER_ATTRIBUTE
String LOCALE_RESOLVER_ATTRIBUTE
To view the source code for org.springframework.web.servlet DispatcherServlet LOCALE_RESOLVER_ATTRIBUTE.
Click Source Link
From source file:com.technologicaloddity.saha.util.AjaxPageRendererImpl.java
public String render(ModelAndView modelAndView, HttpServletRequest request, HttpServletResponse response) { String result = null;//ww w . j a va2s . c o m StringWriter sout = new StringWriter(); StringBuffer buffer = sout.getBuffer(); HttpServletResponse fakeResponse = new SwallowingHttpServletResponse(response, sout, response.getCharacterEncoding()); Locale locale = this.localeResolver.resolveLocale(request); fakeResponse.setLocale(locale); request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, this.localeResolver); try { View view = viewResolver.resolveViewName(modelAndView.getViewName(), locale); view.render(modelAndView.getModel(), request, fakeResponse); result = buffer.toString(); } catch (Exception e) { result = "Ajax render error:" + e.getMessage(); } return result; }
From source file:com.mtt.myapp.home.controller.HomeControllerTest.java
@Test public void testHome() { MockHttpServletResponse res = new MockHttpServletResponse(); MockHttpServletRequest req = new MockHttpServletRequest(); CookieLocaleResolver localeResolver = new CookieLocaleResolver(); req.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, localeResolver); User testUser2 = getTestUser();//w w w . j a v a2s . c o m testUser2.setUserLanguage("EN"); ModelMap model = new ModelMap(); String viewName = homeController.home(testUser2, null, null, model, res, req); assertThat(viewName).isEqualTo("index"); User testUserError = Mockito.spy(testUser2); Mockito.when(testUserError.getRole()).thenReturn(Role.SYSTEM_USER); viewName = homeController.home(testUserError, "Test Error message!", null, model, res, req); assertThat(viewName).isEqualTo("login"); }
From source file:org.ngrinder.home.controller.HomeControllerTest.java
@Test public void testHome() { MockHttpServletResponse res = new MockHttpServletResponse(); MockHttpServletRequest req = new MockHttpServletRequest(); CookieLocaleResolver localeResolver = new CookieLocaleResolver(); req.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, localeResolver); User testUser2 = getTestUser();/* w ww .j a va 2s. com*/ testUser2.setUserLanguage("EN"); ModelMap model = new ModelMap(); String viewName = homeController.home(testUser2, null, null, model, res, req); assertThat(viewName, is("index")); User testUserError = Mockito.spy(testUser2); Mockito.when(testUserError.getRole()).thenReturn(Role.SYSTEM_USER); viewName = homeController.home(testUserError, "Test Error message!", null, model, res, req); assertThat(viewName, is("login")); }
From source file:org.hdiv.web.servlet.tags.AbstractTagTests.java
protected MockPageContext createPageContext() { MockServletContext sc = new MockServletContext(); SimpleWebApplicationContext wac = new SimpleWebApplicationContext(); wac.setServletContext(sc);//from w w w . j a va 2 s . c om wac.setNamespace("test"); wac.refresh(); MockHttpServletRequest request = new MockHttpServletRequest(sc); MockHttpServletResponse response = new MockHttpServletResponse(); if (inDispatcherServlet()) { request.setAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); LocaleResolver lr = new AcceptHeaderLocaleResolver(); request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, lr); ThemeResolver tr = new FixedThemeResolver(); request.setAttribute(DispatcherServlet.THEME_RESOLVER_ATTRIBUTE, tr); request.setAttribute(DispatcherServlet.THEME_SOURCE_ATTRIBUTE, wac); } else { sc.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); } return new MockPageContext(sc, request, response); }
From source file:ca.flop.jpublish.i18n.SpringI18nSupport.java
/** * Execute the action using the given context. * * @param context The current context * @param configuration The configuration * @throws Exception Any error//from w ww .jav a2 s . c o m */ public void execute(JPublishContext context, Configuration configuration) throws Exception { HttpServletRequest request = (HttpServletRequest) context.get("request"); HttpServletResponse response = (HttpServletResponse) context.get("response"); Page page = ((Page) context.get("page")); if (page != null) { Locale locale = page.getLocale(); ApplicationContext applicationContext = getApplicationContext(context); context.put(SPRING, applicationContext); HandlerInterceptor localeChangeInterceptor = (HandlerInterceptor) applicationContext .getBean("localeChangeInterceptor"); if (localeChangeInterceptor != null) { try { LocaleResolver localeResolver = (LocaleResolver) applicationContext.getBean("localeResolver"); if (localeResolver != null) { request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, localeResolver); localeChangeInterceptor.preHandle(request, response, null); locale = localeResolver.resolveLocale(request); MessageSource messageSource = (MessageSource) applicationContext.getBean("messageSource"); if (messageSource != null) { context.put(I18N, new MessageSourceAccessor(messageSource, locale)); } else { log.error("There is no 'messageSource' defined in your application context." + " Please define one."); } } else { log.error("please define a 'localeResolver' bean in your Application context"); } } catch (Exception e) { e.printStackTrace(); log.error("Cannot handle the locale change event"); } } page.setLocale(locale); } }
From source file:org.hdiv.web.servlet.view.freemarker.FreeMarkerMacroTests.java
public void setUp() throws Exception { wac = new StaticWebApplicationContext(); wac.setServletContext(new MockServletContext()); //final Template expectedTemplate = new Template(); fc = new FreeMarkerConfigurer(); fc.setPreferFileSystemAccess(false); fc.afterPropertiesSet();//w w w. j a v a 2s . c o m wac.getDefaultListableBeanFactory().registerSingleton("freeMarkerConfigurer", fc); wac.refresh(); request = new MockHttpServletRequest(); request.setAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, new AcceptHeaderLocaleResolver()); request.setAttribute(DispatcherServlet.THEME_RESOLVER_ATTRIBUTE, new FixedThemeResolver()); response = new MockHttpServletResponse(); }
From source file:org.toobsframework.tags.FormatHelper.java
/** * Public Tag - Message - insert a resource bundle message in the result stream * <p>// ww w. ja va2s .c o m * <pre><code> * <fmt:message key="<i>key</i>"> * </fmt:message> * </code></pre> * * implicit DTD for message * * <pre><code> * <!ELEMENT fmt:message (fmt:param*)> * <!ATTLIST fmt:message * key CDATA #REQUIRED * </code></pre> * * Where * <p> * <ul> * <li>key - is the resource bundle message key * </ul> */ @SuppressWarnings("unchecked") public void message(XSLProcessorContext processorContext, ElemExtensionCall extensionElement) throws TransformerException { // Initialize TransformerImpl transformer = processorContext.getTransformer(); ComponentTransformerHelper transformerHelper = getTransformerHelper(processorContext); // Get attributes String messageKey = getRequiredStringProperty("key", "the property key needs to be provided for the message tag", processorContext, extensionElement); // Obtain parameters List<String> parameterList = new ArrayList<String>(); Object oldParameterList = transformer.getParameter(FORMAT_HELPER_PARAMETERS); if (extensionElement.hasChildNodes()) { transformer.setParameter(FORMAT_HELPER_PARAMETERS, parameterList); transformer.executeChildTemplates(extensionElement, true); transformer.setParameter(FORMAT_HELPER_PARAMETERS, oldParameterList == null ? new Boolean(false) : oldParameterList); } // Compute Results IRequest request = getComponentRequest(processorContext); if (request == null) { throw new TransformerException("Internal error: Invalid request passed to the layout through the " + IXMLTransformer.TRANSFORMER_HELPER); } try { LocaleResolver localeResolver = (LocaleResolver) request.getHttpRequest() .getAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE); Locale locale = localeResolver.resolveLocale(request.getHttpRequest()); String message = transformerHelper.getApplicationContext().getMessage(messageKey, parameterList.toArray(), locale); if (oldParameterList == null) { serialize(processorContext, extensionElement, message, false); } else if (oldParameterList instanceof List) { ((List<String>) oldParameterList).add(message); } } catch (Exception ex) { throw new TransformerException("Error getting message for key=" + messageKey + ": " + ex.getMessage(), ex); } }
From source file:org.hdiv.web.servlet.view.freemarker.FreeMarkerViewTests.java
@Test public void testValidTemplateName() throws Exception { FreeMarkerView fv = new FreeMarkerView(); MockControl wmc = MockControl.createNiceControl(WebApplicationContext.class); WebApplicationContext wac = (WebApplicationContext) wmc.getMock(); MockServletContext sc = new MockServletContext(); wac.getBeansOfType(FreeMarkerConfig.class, true, false); Map configs = new HashMap(); FreeMarkerConfigurer configurer = new FreeMarkerConfigurer(); configurer.setConfiguration(new FreeMarkerTestConfiguration()); configs.put("configurer", configurer); wmc.setReturnValue(configs);//from w ww.j a v a 2 s . c o m wac.getParentBeanFactory(); wmc.setReturnValue(null); wac.getServletContext(); wmc.setReturnValue(sc, 5); wmc.replay(); fv.setUrl("templateName"); fv.setApplicationContext(wac); MockHttpServletRequest request = new MockHttpServletRequest(); request.addPreferredLocale(Locale.US); request.setAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, new AcceptHeaderLocaleResolver()); HttpServletResponse response = new MockHttpServletResponse(); Map model = new HashMap(); model.put("myattr", "myvalue"); fv.render(model, request, response); wmc.verify(); assertEquals(AbstractView.DEFAULT_CONTENT_TYPE, response.getContentType()); }
From source file:org.hdiv.web.servlet.view.freemarker.FreeMarkerViewTests.java
@Test public void testKeepExistingContentType() throws Exception { FreeMarkerView fv = new FreeMarkerView(); MockControl wmc = MockControl.createNiceControl(WebApplicationContext.class); WebApplicationContext wac = (WebApplicationContext) wmc.getMock(); MockServletContext sc = new MockServletContext(); wac.getBeansOfType(FreeMarkerConfig.class, true, false); Map configs = new HashMap(); FreeMarkerConfigurer configurer = new FreeMarkerConfigurer(); configurer.setConfiguration(new FreeMarkerTestConfiguration()); configs.put("configurer", configurer); wmc.setReturnValue(configs);/* www . ja v a 2 s . c om*/ wac.getParentBeanFactory(); wmc.setReturnValue(null); wac.getServletContext(); wmc.setReturnValue(sc, 5); wmc.replay(); fv.setUrl("templateName"); fv.setApplicationContext(wac); MockHttpServletRequest request = new MockHttpServletRequest(); request.addPreferredLocale(Locale.US); request.setAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, new AcceptHeaderLocaleResolver()); HttpServletResponse response = new MockHttpServletResponse(); response.setContentType("myContentType"); Map model = new HashMap(); model.put("myattr", "myvalue"); fv.render(model, request, response); wmc.verify(); assertEquals("myContentType", response.getContentType()); }
From source file:com.javaetmoi.core.mvc.tag.TestHtml5InputTag.java
protected MockPageContext createPageContext() { MockServletContext sc = new MockServletContext(); StaticWebApplicationContext wac = new StaticWebApplicationContext(); wac.setServletContext(sc);//from ww w .ja v a2s . co m wac.setNamespace("test"); wac.registerSingleton("validator", org.springframework.validation.beanvalidation.LocalValidatorFactoryBean.class); wac.refresh(); MockHttpServletRequest request = new MockHttpServletRequest(sc); MockHttpServletResponse response = new MockHttpServletResponse(); request.setAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE, wac); LocaleResolver lr = new AcceptHeaderLocaleResolver(); request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, lr); ThemeResolver tr = new FixedThemeResolver(); request.setAttribute(DispatcherServlet.THEME_RESOLVER_ATTRIBUTE, tr); request.setAttribute(DispatcherServlet.THEME_SOURCE_ATTRIBUTE, wac); return new MockPageContext(sc, request, response); }