1. ホーム
  2. jsp

net::ERR_ABORTED 404 (Not Found) jspでjs、cssを導入する際のエラー

2022-02-11 16:15:21
<パス
GET http://localhost:8080/static/My/Sub.js net::ERR_ABORTED 404 (Not Found)


主に導入したjsやcssが動作しないため、問題が発生します。
パスの紹介

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-/W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<script type="text/javascript" src="... /static/My/Sub.js" charset="utf-8"></script>
</head>


は動作しません

(1)が読み取れます。

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-/W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/" ;;
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<script type="text/javascript" src="<%=basePath%>/static/My/Sub.js" charset="utf-8"></ script>
</head>


問題解決
(2) 静的リソースの読み込みをstrut2が横取りしている事実もあります。struts2のstruts.xmlに、以下を追加して修正してください。

<?xml version="1.0" encoding="UTF-8"? >
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">
        
<struts>	    
	<package name="hello" extends="struts-default" >			
					
	</package>
	<constant name="struts.action.excludePattern" value="/static/. *? "></constant>
</struts>