@Test public void withUrlExpression() { HttpRequestExecutingMessageHandler handler = (HttpRequestExecutingMessageHandler) new DirectFieldAccessor(this.withUrlExpressionEndpoint).getPropertyValue("handler"); MessageChannel requestChannel = (MessageChannel) new DirectFieldAccessor(this.withUrlExpressionEndpoint) .getPropertyValue("inputChannel"); assertEquals(this.applicationContext.getBean("requests"), requestChannel); DirectFieldAccessor handlerAccessor = new DirectFieldAccessor(handler); Object replyChannel = handlerAccessor.getPropertyValue("outputChannel"); assertNull(replyChannel); DirectFieldAccessor templateAccessor = new DirectFieldAccessor(handlerAccessor.getPropertyValue("restTemplate")); ClientHttpRequestFactory requestFactory = (ClientHttpRequestFactory) templateAccessor.getPropertyValue("requestFactory"); assertTrue(requestFactory instanceof SimpleClientHttpRequestFactory); SpelExpression expression = (SpelExpression) handlerAccessor.getPropertyValue("uriExpression"); assertNotNull(expression); assertEquals("'http://localhost/test1'", expression.getExpressionString()); assertEquals( HttpMethod.POST.name(), TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class) .getExpressionString()); assertEquals("UTF-8", handlerAccessor.getPropertyValue("charset")); assertEquals(true, handlerAccessor.getPropertyValue("extractPayload")); assertEquals(false, handlerAccessor.getPropertyValue("transferCookies")); }