gpt4 book ai didi

java - 如何使用 Spring Boot 将文件放在 servlet 上下文路径上?

转载 作者:行者123 更新时间:2023-12-02 08:25:14 25 4
gpt4 key购买 nike

我正在尝试将 BlazeDS 添加到 Spring Boot 应用程序。为此,我在配置中添加了“MessageBrokerServlet”:

@Bean
public ServletRegistrationBean messageBrokerRegistration()
{
ServletRegistrationBean registration = new ServletRegistrationBean(new MessageBrokerServlet(), "/messagebroker/*");
Map<String,String> params = Maps.newHashMap();
params.put( "services.configuration.file", "/WEB-INF/flex/services-config.xml" );
registration.setInitParameters(params);
return registration;
}

Servlet 已加载,但在运行时失败:

MessageBrokerServlet in application 'undefined' failed to initialize due to runtime exception:   
Exception: flex.messaging.config.ConfigurationException: Please specify a
valid 'services.configuration.file' in web.xml. You specified '{0}'.
This is not a valid file system path reachable via the app server and
is also not a path to a resource in your J2EE application archive.

查看BlazeDS的源代码,我发现代码最后使用了ServletContext#getResourceAsStream(path)。如何使 Spring Boot 中的嵌入式 tomcat 在该调用中返回某些内容?

我使用的是 Spring Boot 1.1.1,它使用嵌入式 Tomcat 7.0.54

最佳答案

Servlet 上下文资源至少应该在 war 中发挥作用。将它们粘贴到 src/main/webapp 中(用于标准构建布局)。

关于java - 如何使用 Spring Boot 将文件放在 servlet 上下文路径上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24712988/

25 4 0