public class HttpRequestHandlingMessagingGateway extends HttpRequestHandlingEndpointSupport implements HttpRequestHandler
web.xml
where the servlet and bean both have the
same name. If the BaseHttpInboundEndpoint.isExpectReply()
property is set to true, a response can generated from a reply Message.
Otherwise, the gateway will play the role of a unidirectional Channel Adapter with a simple status-based response
(e.g. 200 OK).
The default supported request methods are GET and POST, but the list of values can be configured with the
RequestMapping.getMethods()
property.
The payload generated from a GET request (or HEAD or OPTIONS if supported) will
be a MultiValueMap
containing the parameter values.
For a request containing a body (e.g. a POST), the type of the payload is determined
by the BaseHttpInboundEndpoint.setRequestPayloadTypeClass(Class)
request payload type}.
If the HTTP request is a multipart and a "multipartResolver" bean has been defined in the context, then it will be
converted by the
MultipartAwareFormHttpMessageConverter
as long as the default
message converters have not
been overwritten (although providing a customized instance of the Multipart-aware converter is also an option).
By default a number of HttpMessageConverter
s are already configured. The list can be overridden by calling
the HttpRequestHandlingEndpointSupport.setMessageConverters(List)
method.
IntegrationManagement.ManagementOverrides
activeCount, JAXB_PRESENT, NON_READABLE_BODY_HTTP_METHODS, ROME_TOOLS_PRESENT
messagingTemplate
lifecycleCondition, lifecycleLock
EXPRESSION_PARSER, logger
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
DEFAULT_PHASE
Constructor and Description |
---|
HttpRequestHandlingMessagingGateway() |
HttpRequestHandlingMessagingGateway(boolean expectReply) |
Modifier and Type | Method and Description |
---|---|
void |
handleRequest(HttpServletRequest servletRequest,
HttpServletResponse servletResponse)
Handles the HTTP request by generating a Message and sending it to the request channel.
|
void |
setConvertExceptions(boolean convertExceptions)
Flag to determine if conversion and writing out of message handling exceptions should be attempted (default
false, in which case they will simply be re-thrown).
|
doHandleRequest, extractRequestBody, getMessageConverters, onInit, prepareRequest, prepareRequestEntity, setMergeWithDefaultConverters, setMessageConverters, setMultipartResolver, setStatusCodeIfNeeded, setupResponseAndConvertReply
afterShutdown, beforeShutdown, createEvaluationContext, evaluateHttpStatus, getComponentType, getCrossOrigin, getExtractReplyPayload, getHeaderExpressions, getHeaderMapper, getIntegrationPatternType, getPayloadExpression, getRequestMapping, getRequestPayloadType, getStatusCodeExpression, getValidator, isExpectReply, isReadable, resolveHttpStatusFromHeaders, setCrossOrigin, setExtractReplyPayload, setHeaderExpressions, setHeaderMapper, setPayloadExpression, setRequestMapping, setRequestPayloadType, setRequestPayloadTypeClass, setStatusCodeExpression, setStatusCodeExpressionString, setValidator, validate
buildErrorMessage, buildSendTimer, destroy, doStart, doStop, getErrorChannel, getErrorMessageAttributes, getManagedName, getManagedType, getOverrides, getReplyChannel, getRequestChannel, isLoggingEnabled, receive, receive, receiveMessage, receiveMessage, registerMetricsCaptor, registerReplyMessageCorrelatorIfNecessary, send, sendAndReceive, sendAndReceiveMessage, sendAndReceiveMessageReactive, sendTimer, setErrorChannel, setErrorChannelName, setErrorMessageStrategy, setErrorOnTimeout, setLoggingEnabled, setManagedName, setManagedType, setReplyChannel, setReplyChannelName, setReplyMapper, setReplyTimeout, setRequestChannel, setRequestChannelName, setRequestMapper, setRequestTimeout, setShouldTrack
doStop, getPhase, getRole, isAutoStartup, isRunning, setAutoStartup, setPhase, setRole, start, stop, stop
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getThisAs
getBeanName, getComponentName
public HttpRequestHandlingMessagingGateway()
public HttpRequestHandlingMessagingGateway(boolean expectReply)
public void setConvertExceptions(boolean convertExceptions)
convertExceptions
- the flag to setpublic final void handleRequest(HttpServletRequest servletRequest, HttpServletResponse servletResponse) throws IOException
HttpMessageConverter
s.handleRequest
in interface HttpRequestHandler
IOException