com.vaadin.flow.server.startup.
Interface ClassLoaderAwareServletContainerInitializer
-
All Superinterfaces:
javax.servlet.ServletContainerInitializer
All Known Subinterfaces:
All Known Implementing Classes:
AnnotationValidator
,DevModeStartupListener
,ErrorNavigationTargetInitializer
,LookupServletContainerInitializer
,RouteRegistryInitializer
,ServletVerifier
,VaadinAppShellInitializer
,WebComponentConfigurationRegistryInitializer
,WebComponentExporterAwareValidator
public interface ClassLoaderAwareServletContainerInitializer extends javax.servlet.ServletContainerInitializer
Allows to load the implementation class by one classloader but accepts classes in
onStartup(Set, ServletContext)
method loaded by another classloader.Workaround for https://github.com/vaadin/flow/issues/7805.
Author:
Vaadin Ltd
-
-
Method Summary
All Methods Modifier and Type Method Description default void
onStartup(Set<Class<?>> set, javax.servlet.ServletContext context)
Overridden to use different classloaders if needed.
void
process(Set<Class<?>> classSet, javax.servlet.ServletContext context)
Implement this method instead of
onStartup(Set, ServletContext)
to handle classes accessible by different classloaders.default boolean
requiresLookup()
Whether this initializer requires lookup or not.
-
-
-
Method Detail
-
onStartup
default void onStartup(Set<Class<?>> set, javax.servlet.ServletContext context) throws javax.servlet.ServletException
Overridden to use different classloaders if needed.
Specified by:
onStartup
in interfacejavax.servlet.ServletContainerInitializer
Throws:
javax.servlet.ServletException
-
requiresLookup
default boolean requiresLookup()
Whether this initializer requires lookup or not.
Returns:
whether this initializer requires lookup
-
process
void process(Set<Class<?>> classSet, javax.servlet.ServletContext context) throws javax.servlet.ServletException
Implement this method instead of
onStartup(Set, ServletContext)
to handle classes accessible by different classloaders.Parameters:
classSet
- the Set of application classes that extend, implement, or have been annotated with the class types specified by theHandlesTypes
annotation, ornull
if there are no matches, or thisServletContainerInitializer
has not been annotated withHandlesTypes
context
- theServletContext
of the web application that is being started and in which the classes contained inclassSet
were foundThrows:
javax.servlet.ServletException
- if an error has occurredSee Also:
-
-