48 lines
2.0 KiB
Java
48 lines
2.0 KiB
Java
/*
|
|
* SteVe - SteckdosenVerwaltung - https://github.com/steve-community/steve
|
|
* Copyright (C) 2013-2026 SteVe Community Team
|
|
* All Rights Reserved.
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
*/
|
|
package de.rwth.idsg.steve.config;
|
|
|
|
import org.eclipse.jetty.http.HttpCompliance;
|
|
import org.eclipse.jetty.server.HttpConnectionFactory;
|
|
import org.eclipse.jetty.server.ServerConnector;
|
|
import org.springframework.boot.jetty.JettyServerCustomizer;
|
|
import org.springframework.boot.jetty.servlet.JettyServletWebServerFactory;
|
|
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
|
@Configuration
|
|
public class JettyConfiguration {
|
|
|
|
@Bean
|
|
public WebServerFactoryCustomizer<JettyServletWebServerFactory> jettyHttpComplianceCustomizer() {
|
|
return factory -> factory.addServerCustomizers((JettyServerCustomizer) server -> {
|
|
for (var connector : server.getConnectors()) {
|
|
if (connector instanceof ServerConnector serverConnector) {
|
|
for (var cf : serverConnector.getConnectionFactories()) {
|
|
if (cf instanceof HttpConnectionFactory httpCF) {
|
|
httpCF.getHttpConfiguration().setHttpCompliance(HttpCompliance.RFC7230_LEGACY);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|