List of usage examples for org.springframework.web.socket.sockjs.client RestTemplateXhrTransport RestTemplateXhrTransport
public RestTemplateXhrTransport(RestOperations restTemplate)
From source file:com.wk.lodge.composite.web.tomcat.IntegrationCompositeTests.java
@BeforeClass public static void setup() throws Exception { System.setProperty("spring.profiles.active", "test.tomcat"); port = SocketUtils.findAvailableTcpPort(); server = new TomcatWebSocketTestServer(port); server.deployConfig(TestDispatcherServletInitializer.class); server.start();/*from ww w.j a v a 2 s. c om*/ webSocketUri = "ws://localhost:" + port + "/composite/websocket"; List<Transport> transports = new ArrayList<>(); transports.add(new WebSocketTransport(new StandardWebSocketClient())); RestTemplateXhrTransport xhrTransport = new RestTemplateXhrTransport(new RestTemplate()); xhrTransport.setRequestHeaders(headers); transports.add(xhrTransport); sockJsClient = new SockJsClient(transports); }
From source file:com.codeveo.lago.bot.stomp.client.AbstractHttpLagoBot.java
protected void setupAndSignInClient(String lagoUrl, String botUsername, String botPassword, LagoRequestHelper requestHelper) throws Exception { try {/*w w w . java2s. com*/ if (requestHelper == null) { throw new Exception("Request helper must not be null"); } if (!(requestHelper instanceof HttpLagoRequestHelper)) { throw new Exception("Requires instance of '" + HttpLagoRequestHelper.class.getSimpleName() + "' not '" + requestHelper.getClass().getSimpleName() + "'"); } HttpLagoRequestHelper httpRequestHelper = (HttpLagoRequestHelper) requestHelper; lagoBot = new RLagoBot(null, null, botUsername, botPassword); Builder builder = new AsyncHttpClientConfig.Builder(); Realm realm = new Realm.RealmBuilder().setPrincipal(botUsername).setPassword(botPassword) .setUsePreemptiveAuth(true).setScheme(AuthScheme.BASIC).build(); builder.setRealm(realm).build(); asyncHttpClient = new AsyncHttpClient(builder.build()); Pair<Integer, String> statusWithCookieOrFaultJSON = HttpLagoRequestHelper.signIn(lagoUrl, botUsername, botPassword); int statusCode = statusWithCookieOrFaultJSON.getLeft(); if (statusCode == HttpStatus.CREATED.value()) { cookie = statusWithCookieOrFaultJSON.getRight(); /* websocket headers */ wsHeaders.add("Cookie", cookie); } else { String faultJSON = statusWithCookieOrFaultJSON.getRight(); if (faultJSON != null) { RFault fault = objectMapper.readValue(faultJSON, RFault.class); if (fault != null) { throw new Exception("Error occured during authentication (HTTP status code: " + statusCode + ", Error code: " + fault.getErrorCode() + ", Message: '" + fault.getMessage() + "')"); } } throw new Exception("Error occured during authentication (HTTP status code: " + statusCode); } if (cookie == null) { throw new Exception("Bot '" + botUsername + "' could not sign in"); } /* setup request helper */ httpRequestHelper.setAsyncHttpClient(asyncHttpClient).setCookie(cookie).setObjectMapper(objectMapper) .setServerUrl(lagoUrl); this.httpLagoRequestHelper = httpRequestHelper; String wsLagoUrl = toWsUrl(lagoUrl); URI uri = new URI(wsLagoUrl + WebServiceUserDesc.WS_PATH); LagoStompMessageHandler messageListener = new LagoStompMessageHandler(lagoBot, queue); List<Transport> transports = new ArrayList<>(); transports.add(new WebSocketTransport(new StandardWebSocketClient())); RestTemplateXhrTransport xhrTransport = new RestTemplateXhrTransport(new RestTemplate()); xhrTransport.setRequestHeaders(wsHeaders); transports.add(xhrTransport); sockJsClient = new SockJsClient(transports); stompClient = new WebSocketStompClient(uri, wsHeaders, sockJsClient); stompClient.setMessageConverter(converter); stompClient.connect(messageListener); taskExecutor.submit(new StompMessageListener()); } catch (Exception e) { if (cookie != null) { httpLagoRequestHelper.signOut(); } throw new Exception("Error occured while initializing lago bot", e); } }
From source file:org.appverse.web.framework.backend.frontfacade.websocket.IntegrationWebsocketTest.java
@BeforeClass public static void setup() throws Exception { // Since test classpath includes both embedded Tomcat and Jetty we need to // set a Spring profile explicitly to bypass WebSocket engine detection. // See {@link org.springframework.samples.portfolio.config.WebSocketConfig} // This test is not supported with Jetty because it doesn't seem to support // deployment withspecific ServletContainerInitializer's at for testing System.setProperty("spring.profiles.active", "test.tomcat"); port = SocketUtils.findAvailableTcpPort(); server = new TomcatWebSocketTestServer(port); server.deployConfig(TestDispatcherServletInitializer.class, WebSecurityInitializer.class); server.start();//from w ww. ja v a 2 s . c o m loginAndSaveJsessionIdCookie("fabrice", "fab123", headers); List<Transport> transports = new ArrayList<>(); transports.add(new WebSocketTransport(new StandardWebSocketClient())); RestTemplateXhrTransport xhrTransport = new RestTemplateXhrTransport(new RestTemplate()); xhrTransport.setRequestHeaders(headers); transports.add(xhrTransport); sockJsClient = new SockJsClient(transports); }