Class JettyServletWebServerFactory
java.lang.Object
org.springframework.boot.web.server.AbstractConfigurableWebServerFactory
org.springframework.boot.jetty.JettyWebServerFactory
org.springframework.boot.jetty.servlet.JettyServletWebServerFactory
- All Implemented Interfaces:
Aware, ConfigurableJettyWebServerFactory, ErrorPageRegistry, ConfigurableWebServerFactory, ConfigurableServletWebServerFactory, ServletWebServerFactory, WebListenerRegistry, WebServerFactory, ResourceLoaderAware
public class JettyServletWebServerFactory
extends JettyWebServerFactory
implements ConfigurableJettyWebServerFactory, ConfigurableServletWebServerFactory, ResourceLoaderAware
ServletWebServerFactory that can be used to create a JettyWebServer.
Can be initialized using Spring's ServletContextInitializers or Jetty
Configurations.
Unless explicitly configured otherwise this factory will create servers that listen for HTTP requests on port 8080.
- Since:
- 4.0.0
- Author:
- Phillip Webb, Dave Syer, Andrey Hihlovskiy, Andy Wilkinson, EddĂș MelĂ©ndez, Venil Noronha, Henri Kerola, Moritz Halbritter, Onur Kagan Ozcan
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a newJettyServletWebServerFactoryinstance.JettyServletWebServerFactory(int port) Create a newJettyServletWebServerFactorythat listens for requests using the specified port.JettyServletWebServerFactory(String contextPath, int port) Create a newJettyServletWebServerFactorywith the specified context path and port. -
Method Summary
Modifier and TypeMethodDescriptionprotected final voidaddDefaultServlet(org.eclipse.jetty.ee11.webapp.WebAppContext context) Add Jetty'sDefaultServletto the givenWebAppContext.protected org.eclipse.jetty.server.HandleraddHandlerWrappers(org.eclipse.jetty.server.Handler handler) protected final voidaddJspServlet(org.eclipse.jetty.ee11.webapp.WebAppContext context) Add Jetty'sJspServletto the givenWebAppContext.protected final voidconfigureWebAppContext(org.eclipse.jetty.ee11.webapp.WebAppContext context, ServletContextInitializer... initializers) Configure the given JettyWebAppContextfor use.protected JettyWebServergetJettyWebServer(org.eclipse.jetty.server.Server server) Factory method called to create theJettyWebServer.protected org.eclipse.jetty.ee11.webapp.ConfigurationgetServletContextInitializerConfiguration(org.eclipse.jetty.ee11.webapp.WebAppContext webAppContext, ServletContextInitializers initializers) Return a JettyConfigurationthat will invoke the specifiedServletContextInitializers.protected org.eclipse.jetty.ee11.webapp.Configuration[]getWebAppContextConfigurations(org.eclipse.jetty.ee11.webapp.WebAppContext webAppContext, ServletContextInitializers initializers) Return the JettyConfigurations that should be applied to the server.getWebServer(ServletContextInitializer... initializers) Gets a new fully configured but pausedWebServerinstance.protected voidpostProcessWebAppContext(org.eclipse.jetty.ee11.webapp.WebAppContext webAppContext) Post process the JettyWebAppContextbefore it's used with the Jetty Server.voidsetResourceLoader(ResourceLoader resourceLoader) Methods inherited from class JettyWebServerFactory
addConfigurations, addServerCustomizers, applyWrapper, createConnector, createConnector, customizeSsl, getAcceptors, getConfigurations, getMaxConnections, getSelectors, getServerCustomizers, getThreadPool, isUseForwardHeaders, setAcceptors, setConfigurations, setMaxConnections, setSelectors, setServerCustomizers, setThreadPool, setUseForwardHeadersMethods inherited from class AbstractConfigurableWebServerFactory
addErrorPages, createTempDir, getAddress, getCompression, getErrorPages, getHttp2, getPort, getServerHeader, getServerNameSslBundles, getShutdown, getSsl, getSslBundle, getSslBundles, setAddress, setCompression, setErrorPages, setHttp2, setPort, setServerHeader, setShutdown, setSsl, setSslBundlesMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ConfigurableJettyWebServerFactory
addServerCustomizers, setAcceptors, setMaxConnections, setSelectors, setThreadPool, setUseForwardHeadersMethods inherited from interface ConfigurableServletWebServerFactory
addCookieSameSiteSuppliers, addInitializers, addMimeMappings, addWebListeners, getContextPath, setContextPath, setCookieSameSiteSuppliers, setDisplayName, setDocumentRoot, setInitializers, setInitParameters, setJsp, setLocaleCharsetMappings, setMimeMappings, setRegisterDefaultServlet, setSessionMethods inherited from interface ConfigurableWebServerFactory
setAddress, setCompression, setErrorPages, setHttp2, setPort, setServerHeader, setShutdown, setSsl, setSslBundlesMethods inherited from interface ErrorPageRegistry
addErrorPages
-
Constructor Details
-
JettyServletWebServerFactory
public JettyServletWebServerFactory()Create a newJettyServletWebServerFactoryinstance. -
JettyServletWebServerFactory
public JettyServletWebServerFactory(int port) Create a newJettyServletWebServerFactorythat listens for requests using the specified port.- Parameters:
port- the port to listen on
-
JettyServletWebServerFactory
Create a newJettyServletWebServerFactorywith the specified context path and port.- Parameters:
contextPath- the root context pathport- the port to listen on
-
-
Method Details
-
getWebServer
Description copied from interface:ServletWebServerFactoryGets a new fully configured but pausedWebServerinstance. Clients should not be able to connect to the returned server untilWebServer.start()is called (which happens when theApplicationContexthas been fully refreshed).- Specified by:
getWebServerin interfaceServletWebServerFactory- Parameters:
initializers-ServletContextInitializers that should be applied as the server starts- Returns:
- a fully configured and started
WebServer - See Also:
-
addHandlerWrappers
protected org.eclipse.jetty.server.Handler addHandlerWrappers(org.eclipse.jetty.server.Handler handler) - Overrides:
addHandlerWrappersin classJettyWebServerFactory
-
configureWebAppContext
protected final void configureWebAppContext(org.eclipse.jetty.ee11.webapp.WebAppContext context, ServletContextInitializer... initializers) Configure the given JettyWebAppContextfor use.- Parameters:
context- the context to configureinitializers- the set of initializers to apply
-
addDefaultServlet
protected final void addDefaultServlet(org.eclipse.jetty.ee11.webapp.WebAppContext context) Add Jetty'sDefaultServletto the givenWebAppContext.- Parameters:
context- the jettyWebAppContext
-
addJspServlet
protected final void addJspServlet(org.eclipse.jetty.ee11.webapp.WebAppContext context) Add Jetty'sJspServletto the givenWebAppContext.- Parameters:
context- the jettyWebAppContext
-
getWebAppContextConfigurations
protected org.eclipse.jetty.ee11.webapp.Configuration[] getWebAppContextConfigurations(org.eclipse.jetty.ee11.webapp.WebAppContext webAppContext, ServletContextInitializers initializers) Return the JettyConfigurations that should be applied to the server.- Parameters:
webAppContext- the JettyWebAppContextinitializers- theServletContextInitializers to apply- Returns:
- configurations to apply
-
getServletContextInitializerConfiguration
protected org.eclipse.jetty.ee11.webapp.Configuration getServletContextInitializerConfiguration(org.eclipse.jetty.ee11.webapp.WebAppContext webAppContext, ServletContextInitializers initializers) Return a JettyConfigurationthat will invoke the specifiedServletContextInitializers. By default this method will return aServletContextInitializerConfiguration.- Parameters:
webAppContext- the JettyWebAppContextinitializers- theServletContextInitializers to apply- Returns:
- the
Configurationinstance
-
postProcessWebAppContext
protected void postProcessWebAppContext(org.eclipse.jetty.ee11.webapp.WebAppContext webAppContext) Post process the JettyWebAppContextbefore it's used with the Jetty Server. Subclasses can override this method to apply additional processing to theWebAppContext.- Parameters:
webAppContext- the JettyWebAppContext
-
getJettyWebServer
Factory method called to create theJettyWebServer. Subclasses can override this method to return a differentJettyWebServeror apply additional processing to the Jetty server.- Parameters:
server- the Jetty server.- Returns:
- a new
JettyWebServerinstance
-
setResourceLoader
- Specified by:
setResourceLoaderin interfaceResourceLoaderAware
-
getSettings
- Specified by:
getSettingsin interfaceConfigurableServletWebServerFactory
-