added support for recognition of a Message to HttpRequestHandlingEndpointSupport

INT-2254 polishing

INT-2254 polishing
This commit is contained in:
Oleg Zhurakousky
2011-11-21 08:17:41 -05:00
parent e493922437
commit 7485ea449a

View File

@@ -356,15 +356,22 @@ abstract class HttpRequestHandlingEndpointSupport extends MessagingGatewaySuppor
payload = requestParams;
}
}
MessageBuilder<?> messageBuilder = null;
Message<?> message = MessageBuilder.withPayload(payload).copyHeaders(headers)
.setHeader(org.springframework.integration.http.HttpHeaders.REQUEST_URL,
request.getURI().toString())
.setHeader(org.springframework.integration.http.HttpHeaders.REQUEST_METHOD,
request.getMethod().toString())
.setHeader(org.springframework.integration.http.HttpHeaders.USER_PRINCIPAL,
servletRequest.getUserPrincipal()).build();
if (payload instanceof Message<?>){
messageBuilder = MessageBuilder.fromMessage((Message<?>) payload);
}
else {
messageBuilder = MessageBuilder.withPayload(payload).copyHeaders(headers);
}
Message<?> message = messageBuilder
.setHeader(org.springframework.integration.http.HttpHeaders.REQUEST_URL, request.getURI().toString())
.setHeader(org.springframework.integration.http.HttpHeaders.REQUEST_METHOD, request.getMethod().toString())
.setHeader(org.springframework.integration.http.HttpHeaders.USER_PRINCIPAL, servletRequest.getUserPrincipal())
.build();
Object reply = null;
if (this.expectReply) {
reply = this.sendAndReceiveMessage(message);