1

Spring MVC、Semantic-UI フレームワーク、Gradle ビルド ツールに基づいて Web ページを作成したいと考えています。問題は、WebJars からセマンティック ファイルをインポートしようとしている間、JSP ページがセマンティック ファイルにアクセスできないことです。cdnjs からのインポートを使用している場合は、非常にうまく機能します。

わかりました、以下の私のコード:

@Configuration
@EnableWebMvc
@ComponentScan("com.web)
public class WebConfiguration extends WebMvcConfigurerAdapter {

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}

index.jsp

    <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="c" uri="http://www.springframework.org/tags" %>

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
      <!--
      <link rel='stylesheet' href='webjars/semantic-ui/2.0.7/semantic.min.css'>
      <script src='webjars/semantic-ui/2.0.7/semantic.min.js'></script> -->

      <link rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.0.7/semantic.min.css'>
      <script src='https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.0.7/semantic.min.js'></script>

    <title>Index Page</title>
  </head>
  <body>
  <spring:message code="Index.WelcomeText"></spring:message>
  <div class="ui animated button" tabindex="0">
      <div class="visible content">Next</div>
      <div class="hidden content">
          <i class="right arrow icon"></i>
      </div>
  </div>
  <div class="ui vertical animated button" tabindex="0">
      <div class="hidden content">Shop</div>
      <div class="visible content">
          <i class="shop icon"></i>
      </div>
  </div>
  <div class="ui animated fade button" tabindex="0">
      <div class="visible content">Sign-up for a Pro account</div>
      <div class="hidden content">
          $12.99 a month
      </div>
  </div>
  </body>
</html>
4

2 に答える 2

0

予想どおり、URL に contextpath を追加してブラウザにリソースを識別する必要があります

<head>
<link rel="stylesheet" href="${pageContext.request.contextPath}/webjars/semantic-ui/2.0.7/semantic.min.css">
<script src="${pageContext.request.contextPath}/webjars/semantic-ui/2.0.7/semantic.min.js"></script>
<title>Index Page</title>
</head>

このような

于 2019-11-08T12:48:59.270 に答える