【问题标题】:Spring boot + apache tilesSpring Boot + Apache 瓷砖
【发布时间】:2017-08-28 17:33:08
【问题描述】:

我正在尝试创建那个 bean:

@Bean
public TilesConfigurer tilesConfigurer() {
    TilesConfigurer configurer = new TilesConfigurer();
    configurer.setDefinitions("/tiles/tiles-definition.xml");
    return configurer;
}

我遇到了这个问题:

创建名为“tilesConfigurer”的 bean 时出错。调用初始化 方法失败;嵌套异常是 java.lang.IllegalArgumentException: 没有 ServletContext 资源的 URL [/tiles/tiles-definition.xml]

tiles-definition.xmlsrc/main/resources/static/tiles/ 文件夹中,但 Spring 找不到它。网页内容的默认根是什么?

当我使用 Spring MVC 时,它是 webapp/WEB-INF,但我在 Spring Boot 中读到它是 resources/static,所以我认为它是每个静态 Web 资源的根。你能帮我完成这项工作吗?

【问题讨论】:

    标签: java spring-boot configuration apache-tiles


    【解决方案1】:

    我今天已经解决了这个问题。只需使用 WAR 而不是 JAR 进行打包。希望对您有所帮助!

    【讨论】:

      【解决方案2】:

      资源路径似乎错误。

      @Bean
      public TilesConfigurer tilesConfigurer() {
          TilesConfigurer configurer = new TilesConfigurer();
          configurer.setDefinitions("static/tiles/tiles-definition.xml");
          return configurer;
      }
      

      【讨论】:

      • 那是我的第一次尝试。但它会导致同样的问题,我不知道该怎么办
      • 创建名为“tilesConfigurer”的 bean 时出错。调用 init 方法失败;嵌套异常是 java.lang.IllegalArgumentException: No URL for ServletContext resource [/tiles/tiles-definition.xml]
      • 唯一的区别是它有 [static/tiles/tiles-definition.xml] 而不是 [/tiles/tiles-definition.xml]
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-26
      • 2018-05-28
      • 1970-01-01
      • 2017-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多