繁体   English   中英

将pdf作为在docker容器中运行的spring应用程序的静态资源提供

[英]Serve pdf as static resource from spring application running in docker container

当我尝试从 localhost/pdfs/filename.pdf 打开它时, Pdf 文件是空白的,但是当我为图片执行此操作时,它可以工作 (localhost/images/imagename.png) 我的应用程序在 docker 容器内运行。

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

   @Autowired
   private ApplicationEventPublisher publisher;

   @Override
   public void addResourceHandlers(ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/images/**").addResourceLocations("classpath:/static/images/").setCachePeriod(31556926);
    registry.addResourceHandler("/pdfs/**").addResourceLocations("classpath:/static/pdfs/").setCachePeriod(31556926);

   }
}

文件夹,图像和 pdf,都在src/main/resources/static文件夹中。

为什么它对图像文件有效,但对 pdf 文件无效? 谢谢。

我遇到了同样的问题 - 它是由 maven 过滤资源引起的。 排除 *.pdf 有助于解决问题:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <configuration>
        <delimiters>
            <delimiter>@</delimiter>
        </delimiters>
        <useDefaultDelimiters>false</useDefaultDelimiters>
        <nonFilteredFileExtensions>
            <nonFilteredFileExtension>pdf</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
    </configuration>
</plugin>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM