Example usage for org.springframework.web.context.request RequestContextHolder setRequestAttributes

List of usage examples for org.springframework.web.context.request RequestContextHolder setRequestAttributes

Introduction

In this page you can find the example usage for org.springframework.web.context.request RequestContextHolder setRequestAttributes.

Prototype

public static void setRequestAttributes(@Nullable RequestAttributes attributes) 

Source Link

Document

Bind the given RequestAttributes to the current thread, not exposing it as inheritable for child threads.

Usage

From source file:io.neba.core.resourcemodels.caching.RequestScopedResourceModelCacheTest.java

private void withoutRequestAttributes() {
    RequestContextHolder.setRequestAttributes(null);
}

From source file:org.fao.geonet.api.records.formatters.FormatterApiIntegrationTest.java

@Test
public void testExecXslt() throws Exception {
    final ServletContext context = _applicationContext.getBean(ServletContext.class);
    MockHttpServletRequest request = new MockHttpServletRequest(context, "GET",
            "http://localhost:8080/geonetwork/srv/eng/md.formatter");
    request.getSession();//from ww  w.j a v a  2  s  .com
    request.setPathInfo("/eng/md.formatter");

    final String applicationContextAttributeKey = "srv";
    request.getServletContext().setAttribute(applicationContextAttributeKey, _applicationContext);
    ServletRequestAttributes requestAttributes = new ServletRequestAttributes(request);

    RequestContextHolder.setRequestAttributes(requestAttributes);
    final String formatterName = "xsl-test-formatter";
    final URL testFormatterViewFile = FormatterApiIntegrationTest.class
            .getResource(formatterName + "/view.xsl");
    final Path testFormatter = IO.toPath(testFormatterViewFile.toURI()).getParent();
    final Path formatterDir = this.dataDirectory.getFormatterDir();
    Files.deleteIfExists(formatterDir.resolve("functions.xsl"));
    IO.copyDirectoryOrFile(testFormatter, formatterDir.resolve(formatterName), false);
    IO.copyDirectoryOrFile(testFormatter.getParent().resolve("functions.xsl"), formatterDir, true);
    JeevesDelegatingFilterProxy.setApplicationContextAttributeKey(applicationContextAttributeKey);

    final MockHttpServletResponse response = new MockHttpServletResponse();
    formatService.exec("eng", "html", "" + id, null, formatterName, "true", false, _100,
            new ServletWebRequest(request, response));
    final String viewXml = response.getContentAsString();
    final Element view = Xml.loadString(viewXml, false);
    assertEqualsText("fromFunction", view, "*//p");
    assertEqualsText("Title", view, "*//div[@class='tr']");
}

From source file:fragment.web.RegistrationControllerTest.java

private void beforeRegisterCall(MockHttpServletRequest request, UserRegistration registration) {
    DispatcherServletWebRequest webRequest = new DispatcherServletWebRequest(request);
    RequestContextHolder.setRequestAttributes(webRequest);
    request.getSession().setAttribute("phoneVerificationPin", "12345");
    request.getSession().setAttribute("phoneNumber", "919591241025");
    Tenant tenant1 = new Tenant("New Co", accountTypeDAO.getDefaultRegistrationAccountType(), null,
            randomAddress(), true, currencyValueService.locateBYCurrencyCode("USD"), null);
    registration.setTenant((com.citrix.cpbm.access.Tenant) CustomProxy.newInstance(tenant1));
    registration.setUserEnteredPhoneVerificationPin("12345");
}

From source file:com.revolsys.ui.web.rest.interceptor.WebAnnotationMethodHandlerAdapter.java

protected ModelAndView invokeHandlerMethod(final HttpServletRequest request, final HttpServletResponse response,
        final Object handler) throws Exception {

    final AnnotationHandlerMethodResolver methodResolver = getMethodResolver(handler);
    final WebMethodHandler handlerMethod = methodResolver.resolveHandlerMethod(request);
    final ServletWebRequest webRequest = new ServletWebRequest(request, response);
    final RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
    try {/* w  ww. j a va2  s.  c o  m*/
        RequestContextHolder.setRequestAttributes(webRequest);
        final ExtendedModelMap implicitModel = new BindingAwareModelMap();

        final Object result = handlerMethod.invokeMethod(handler, request, response);
        if (result == null) {
            return null;
        } else {
            final ModelAndView mav = getModelAndView(handlerMethod.getMethod(), handler.getClass(), result,
                    implicitModel, webRequest);
            return mav;
        }
    } finally {
        RequestContextHolder.setRequestAttributes(requestAttributes);
    }
}

From source file:fragment.web.RegistrationControllerTest.java

@Test
public void testRegisterTrial() throws Exception {
    MockHttpServletRequest mockRequest = getRequestTemplate(HttpMethod.GET, "/portal/signup?pc=TESTPROMOCODE");
    UserRegistration registration = new UserRegistration();
    registration.setCountryList(countryService.getCountries(null, null, null, null, null, null, null));

    registration.setAcceptedTerms(true);
    AccountType disposition = accountTypeDAO.getTrialAccountType();
    BindingResult result = setupRegistration(disposition, registration);
    PromotionSignup promotionSignup = new PromotionSignup("test" + random.nextInt(), "Citrix",
            "PromotionSignUp@citrix.com");
    promotionSignup.setCreateBy(getRootUser());
    promotionSignup.setCurrency(Currency.getInstance("USD"));
    promotionSignup.setPhone("9999999999");

    CampaignPromotion campaignPromotion = new CampaignPromotion();
    campaignPromotion.setCode("USD" + random.nextInt());
    campaignPromotion.setCreateBy(getRootUser());
    campaignPromotion.setTrial(true);/* w  w  w  . j  a v a 2 s. c o  m*/
    campaignPromotion.setUpdateBy(getRootUser());

    CampaignPromotionsInChannels cpic = new CampaignPromotionsInChannels(campaignPromotion,
            channelService.getDefaultServiceProviderChannel());
    campaignPromotion.getCampaignPromotionsInChannels().add(cpic);
    cmpdao.save(campaignPromotion);

    PromotionToken promotionToken = new PromotionToken(campaignPromotion, "TESTPROMOCODE");
    promotionToken.setCreateBy(getRootUser());
    tokendao.save(promotionToken);

    promotionSignup.setPromotionToken(promotionToken);

    registration.setTrialCode("TESTPROMOCODE");

    DispatcherServletWebRequest webRequest = new DispatcherServletWebRequest(mockRequest);
    RequestContextHolder.setRequestAttributes(webRequest);
    mockRequest.getSession().setAttribute("phoneVerificationPin", "12345");
    mockRequest.getSession().setAttribute("phoneNumber", "919591241025");
    registration.setUserEnteredPhoneVerificationPin("12345");

    String view = controller.register(registration, result, "abc", "abc", map, null, status, mockRequest);
    Assert.assertEquals("register.registration_success", view);
    Assert.assertTrue(status.isComplete());
    verifyRegistration(disposition, registration.getUser(), registration.getTenant());
    Assert.assertEquals(registration.getTenant().getAccountId(),
            ((com.citrix.cpbm.access.Tenant) map.get("tenant")).getAccountId());
}

From source file:fragment.web.RegistrationControllerTest.java

private String signupOnChannel(Long fqdnChannelId, String channelCodeInUrl) {
    AccountType trialAccountType = accountTypeDAO.find(3L);
    UserRegistration registration = new UserRegistration();
    registration.setAcceptedTerms(true);

    setupRegistration(trialAccountType, registration);
    MockHttpServletRequest mockRequest = new MockHttpServletRequest();

    DispatcherServletWebRequest webRequest = new DispatcherServletWebRequest(mockRequest);
    PortalThemeResolver themeResolver = new PortalSessionThemeResolverImpl();
    themeResolver.setChannelFqdn(mockRequest, "chn1");
    mockRequest.setAttribute(DispatcherServlet.THEME_RESOLVER_ATTRIBUTE, themeResolver);

    RequestContextHolder.setRequestAttributes(webRequest);
    Map<String, Object> globalConfig = new HashMap<String, Object>();

    if (fqdnChannelId != null) {
        globalConfig.put("channelid", fqdnChannelId);
    }/*ww w.j a  v a2s. co  m*/
    String view = controller.signup(map, globalConfig, null, channelCodeInUrl,
            trialAccountType.getId().toString(), status, mockRequest);
    return view;
}

From source file:fragment.web.RegistrationControllerTest.java

private String signupOnChannel(String channelCode, String channelPrefix) {
    UserRegistration registration = new UserRegistration();
    registration.setAcceptedTerms(true);
    AccountType disposition = accountTypeDAO.getTrialAccountType();
    setupRegistration(disposition, registration);
    createHttpMocks(channelPrefix);//ww  w  .j av a 2 s . c  o m
    MockHttpServletRequest mockRequest = new MockHttpServletRequest();

    DispatcherServletWebRequest webRequest = new DispatcherServletWebRequest(mockRequest);
    RequestContextHolder.setRequestAttributes(webRequest);
    String view = controller.signup(map, null, null, channelCode, "3", status, httpServletRequest);
    System.err.println(map);
    return view;
}

From source file:org.cloudfoundry.identity.uaa.login.EmailChangeEmailServiceTest.java

@BeforeEach
public void setUp() throws Exception {
    SecurityContextHolder.clearContext();
    scimUserProvisioning = mock(ScimUserProvisioning.class);
    codeStore = mock(ExpiringCodeStore.class);
    clientDetailsService = mock(MultitenantClientServices.class);
    messageService = mock(EmailService.class);
    emailChangeEmailService = new EmailChangeEmailService(templateEngine, messageService, scimUserProvisioning,
            codeStore, clientDetailsService);

    request = new MockHttpServletRequest();
    request.setProtocol("http");
    request.setContextPath("/login");
    RequestContextHolder.setRequestAttributes(new ServletRequestAttributes(request));
}

From source file:org.cloudfoundry.identity.uaa.login.EmailChangeEmailServiceTest.java

public void testBeginEmailChangeInOtherZone(String zoneName) throws Exception {

    IdentityZone zone = MultitenancyFixture.identityZone("test-zone-id", "test");
    zone.setName(zoneName);/*from www.  j  av  a 2  s. c  o  m*/
    IdentityZoneHolder.set(zone);

    MockHttpServletRequest request = new MockHttpServletRequest();
    request.setScheme("http");
    request.setServerName("test.localhost");
    request.setContextPath("/login");
    ServletRequestAttributes attrs = new ServletRequestAttributes(request);
    RequestContextHolder.setRequestAttributes(attrs);

    ScimUser user = new ScimUser("user-001", "user-name", "test-name", "test-name");
    user.setPrimaryEmail("user@example.com");
    Map<String, String> codeData = new HashMap<>();
    codeData.put("user_id", "user-001");
    codeData.put("client_id", "app");
    codeData.put("redirect_uri", "http://app.com");
    codeData.put("email", "new@example.com");

    String zoneId = IdentityZoneHolder.get().getId();

    when(scimUserProvisioning.retrieve("user-001", zoneId)).thenReturn(user);
    when(scimUserProvisioning.query(anyString(), eq(zoneId)))
            .thenReturn(Collections.singletonList(new ScimUser()));
    String data = JsonUtils.writeValueAsString(codeData);
    when(codeStore.generateCode(eq(data), any(Timestamp.class), eq(EMAIL.name()), anyString())).thenReturn(
            new ExpiringCode("the_secret_code", new Timestamp(System.currentTimeMillis()), data, EMAIL.name()));

    emailChangeEmailService.beginEmailChange("user-001", "user@example.com", "new@example.com", "app",
            "http://app.com");

    verify(codeStore).generateCode(eq(JsonUtils.writeValueAsString(codeData)), any(Timestamp.class),
            eq(EMAIL.name()), eq(zoneId));

    ArgumentCaptor<String> emailBodyArgument = ArgumentCaptor.forClass(String.class);
    Mockito.verify(messageService).sendMessage(eq("new@example.com"), eq(MessageType.CHANGE_EMAIL),
            eq(zoneName + " Email change verification"), emailBodyArgument.capture());

    String emailBody = emailBodyArgument.getValue();

    assertThat(emailBody,
            containsString(String.format("A request has been made to change the email for %s from %s to %s",
                    zoneName, "user@example.com", "new@example.com")));
    assertThat(emailBody, containsString(
            "<a href=\"http://test.localhost/login/verify_email?code=the_secret_code\">Verify your email</a>"));
    assertThat(emailBody, containsString("Thank you,<br />\n    " + zoneName));
}

From source file:org.cloudfoundry.identity.uaa.provider.oauth.XOAuthAuthenticationManagerIT.java

private void setUpInvitedUser() {
    UaaUser existingShadowUser = new UaaUser(new UaaUserPrototype().withUsername("marissa@bloggs.com")
            .withPassword("").withEmail("marissa@bloggs.com").withGivenName("Marissa_Old")
            .withFamilyName("Bloggs_Old").withId("user-id").withOrigin("the_origin").withZoneId("uaa")
            .withAuthorities(UaaAuthority.USER_AUTHORITIES));

    userDatabase.addUser(existingShadowUser);

    RequestAttributes attributes = new ServletRequestAttributes(new MockHttpServletRequest());
    attributes.setAttribute("IS_INVITE_ACCEPTANCE", true, RequestAttributes.SCOPE_SESSION);
    attributes.setAttribute("user_id", existingShadowUser.getId(), RequestAttributes.SCOPE_SESSION);
    RequestContextHolder.setRequestAttributes(attributes);
}