Package org.apache.camel.http.common
Class CamelServlet
java.lang.Object
jakarta.servlet.GenericServlet
jakarta.servlet.http.HttpServlet
org.apache.camel.http.common.CamelServlet
- All Implemented Interfaces:
jakarta.servlet.Servlet
,jakarta.servlet.ServletConfig
,Serializable
,HttpRegistryProvider
A servlet to use as a Camel route as entry.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final String
static final String
protected final org.slf4j.Logger
Fields inherited from class jakarta.servlet.http.HttpServlet
LEGACY_DO_HEAD
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
afterProcess
(jakarta.servlet.http.HttpServletResponse res, HttpConsumer consumer, org.apache.camel.Exchange exchange, boolean rethrow) void
connect
(HttpConsumer consumer) void
disconnect
(HttpConsumer consumer) protected void
doService
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) This is the logical implementation to handle request withCamelServlet
This is where most exceptions should be handledprotected void
doServiceAsync
(jakarta.servlet.AsyncContext context) This is used to handle request asynchronouslyprotected Executor
getExecutorService
(HttpConsumer consumer) protected void
handleService
(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) void
init
(jakarta.servlet.ServletConfig config) boolean
isAsync()
protected ClassLoader
overrideTccl
(org.apache.camel.Exchange exchange) Override the Thread Context ClassLoader if need be.protected HttpConsumer
resolve
(jakarta.servlet.http.HttpServletRequest request) Deprecated.protected void
restoreTccl
(org.apache.camel.Exchange exchange, ClassLoader oldTccl) Restore the Thread Context ClassLoader if the old TCCL is not null.protected void
service
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) void
setAsync
(boolean async) void
setServletName
(String servletName) void
setServletResolveConsumerStrategy
(ServletResolveConsumerStrategy servletResolveConsumerStrategy) Methods inherited from class jakarta.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
Methods inherited from class jakarta.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, init, log, log
-
Field Details
-
ASYNC_PARAM
- See Also:
-
FORCE_AWAIT_PARAM
- See Also:
-
EXECUTOR_REF_PARAM
- See Also:
-
METHODS
-
log
protected final org.slf4j.Logger log
-
-
Constructor Details
-
CamelServlet
public CamelServlet()
-
-
Method Details
-
init
public void init(jakarta.servlet.ServletConfig config) throws jakarta.servlet.ServletException - Specified by:
init
in interfacejakarta.servlet.Servlet
- Overrides:
init
in classjakarta.servlet.http.HttpServlet
- Throws:
jakarta.servlet.ServletException
-
service
protected void service(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) - Overrides:
service
in classjakarta.servlet.http.HttpServlet
-
handleService
protected void handleService(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) throws jakarta.servlet.ServletException, IOException - Throws:
jakarta.servlet.ServletException
IOException
-
getExecutorService
-
doServiceAsync
protected void doServiceAsync(jakarta.servlet.AsyncContext context) This is used to handle request asynchronously- Parameters:
context
- theAsyncContext
-
doService
protected void doService(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws jakarta.servlet.ServletException, IOException This is the logical implementation to handle request withCamelServlet
This is where most exceptions should be handled- Parameters:
request
- theHttpServletRequest
response
- theHttpServletResponse
- Throws:
jakarta.servlet.ServletException
IOException
-
afterProcess
protected void afterProcess(jakarta.servlet.http.HttpServletResponse res, HttpConsumer consumer, org.apache.camel.Exchange exchange, boolean rethrow) throws IOException, jakarta.servlet.ServletException - Throws:
IOException
jakarta.servlet.ServletException
-
resolve
-
connect
- Specified by:
connect
in interfaceHttpRegistryProvider
-
disconnect
- Specified by:
disconnect
in interfaceHttpRegistryProvider
-
getServletName
- Specified by:
getServletName
in interfaceHttpRegistryProvider
- Specified by:
getServletName
in interfacejakarta.servlet.ServletConfig
- Overrides:
getServletName
in classjakarta.servlet.GenericServlet
-
setServletName
-
getServletResolveConsumerStrategy
-
setServletResolveConsumerStrategy
public void setServletResolveConsumerStrategy(ServletResolveConsumerStrategy servletResolveConsumerStrategy) -
isAsync
public boolean isAsync() -
setAsync
public void setAsync(boolean async) -
getConsumers
-
overrideTccl
Override the Thread Context ClassLoader if need be.- Returns:
- old classloader if overridden; otherwise returns null
-
restoreTccl
Restore the Thread Context ClassLoader if the old TCCL is not null.
-
ServletResolveConsumerStrategy.resolve(jakarta.servlet.http.HttpServletRequest, java.util.Map)