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
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringprotected final org.slf4j.LoggerFields inherited from class jakarta.servlet.http.HttpServlet
LEGACY_DO_HEAD -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidafterProcess(jakarta.servlet.http.HttpServletResponse res, HttpConsumer consumer, org.apache.camel.Exchange exchange, boolean rethrow) voidconnect(HttpConsumer consumer) voiddisconnect(HttpConsumer consumer) protected voiddoService(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) This is the logical implementation to handle request withCamelServletThis is where most exceptions should be handledprotected voiddoServiceAsync(jakarta.servlet.AsyncContext context) This is used to handle request asynchronouslyprotected ExecutorgetExecutorService(HttpConsumer consumer) protected voidhandleService(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) voidinit(jakarta.servlet.ServletConfig config) booleanisAsync()protected ClassLoaderoverrideTccl(org.apache.camel.Exchange exchange) Override the Thread Context ClassLoader if need be.protected voidrestoreTccl(org.apache.camel.Exchange exchange, ClassLoader oldTccl) Restore the Thread Context ClassLoader if the old TCCL is not null.protected static voidsendError(jakarta.servlet.http.HttpServletResponse res, int code) protected voidservice(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) voidsetAsync(boolean async) voidsetServletName(String servletName) voidsetServletResolveConsumerStrategy(ServletResolveConsumerStrategy servletResolveConsumerStrategy) Methods inherited from class jakarta.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPatch, doPost, doPut, doTrace, getLastModified, isSensitiveHeader, serviceMethods 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:
initin interfacejakarta.servlet.Servlet- Overrides:
initin classjakarta.servlet.http.HttpServlet- Throws:
jakarta.servlet.ServletException
-
service
protected void service(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) - Overrides:
servicein classjakarta.servlet.http.HttpServlet
-
handleService
protected void handleService(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) throws Exception - Throws:
Exception
-
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 Exception This is the logical implementation to handle request withCamelServletThis is where most exceptions should be handled- Parameters:
request- theHttpServletRequestresponse- theHttpServletResponse- Throws:
Exception
-
afterProcess
protected void afterProcess(jakarta.servlet.http.HttpServletResponse res, HttpConsumer consumer, org.apache.camel.Exchange exchange, boolean rethrow) throws Exception - Throws:
Exception
-
connect
- Specified by:
connectin interfaceHttpRegistryProvider
-
disconnect
- Specified by:
disconnectin interfaceHttpRegistryProvider
-
getServletName
- Specified by:
getServletNamein interfaceHttpRegistryProvider- Specified by:
getServletNamein interfacejakarta.servlet.ServletConfig- Overrides:
getServletNamein classjakarta.servlet.GenericServlet
-
setServletName
-
getServletResolveConsumerStrategy
-
setServletResolveConsumerStrategy
public void setServletResolveConsumerStrategy(ServletResolveConsumerStrategy servletResolveConsumerStrategy) -
isAsync
public boolean isAsync() -
setAsync
public void setAsync(boolean async) -
getConsumers
-
sendError
protected static void sendError(jakarta.servlet.http.HttpServletResponse res, int code) -
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.
-