前提・実現したいこと
元々Javaやjspを使って作っていたソースを、struts2を利用して画面遷移できるよう作成しなおしています。
画面のボタンを押すと遷移するようにしたいのですが、以下のエラーメッセージが出てしまいます。
(一番最初の画面は表示でき、ボタンを押すとエラー画面になります)
エラーメッセージについて検索をしてもなかなか解決策が見つからず、どういったところが間違えているとこのようなエラーが出てしまうのかご教授お願い致します。
初級者のため、質問の仕方に不手際がありましたら申し訳ございません。
発生している問題・エラーメッセージ
There is no Action mapped for namespace [/] and action name [TourokuAction] associated with context path [/Strutstest]. - [unknown location] at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185) at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63) at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39) at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:553) at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77) at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
該当のソースコード
menu.jsp
jsp
1<%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3<%@ taglib prefix="s" uri="/struts-tags"%> 4<!DOCTYPE html> 5<html lang="ja"> 6 <head> 7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 8 <title>メニュー画面</title> 9 </head> 10 <body> 11 <div align="center"> 12 <h3>メニュー</h3> 13 <table> 14 <s:form action="TourokuAction"> 15 <tr> 16 <td><s:submit value="ボタン"/></td> 17 </tr> 18 </s:form> 19 </table> 20 </div> 21 </body> 22</html>
struts.xml
xml
1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE struts PUBLIC 3 "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" 4 "http://struts.apache.org/dtds/struts-2.0.dtd"> 5<struts> 6 <constant name="struts.devMode" value="true" /> 7 <package name="pack" namespace="/" extends="struts-default"> 8 <action name="TourokuAction" class="pack.TourokuAction" method="execute"> 9 <result name="success">/touroku.jsp</result> 10 </action> 11 </package> 12</struts>
TourokuAction.java
java
1package pack; 2 3public class TourokuAction { 4 public String execute(){ 5 return "success"; 6 } 7}
web.xml
xml
1<?xml version="1.0" encoding="UTF-8"?> 2<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 3 <display-name>StrutsJyuusyoroku</display-name> 4 <welcome-file-list> 5 <welcome-file>menu.jsp</welcome-file> 6 </welcome-file-list> 7 <filter> 8 <filter-name>struts2</filter-name> 9 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 10 </filter> 11 <filter-mapping> 12 <filter-name>struts2</filter-name> 13 <url-pattern>/*</url-pattern> 14 </filter-mapping> 15</web-app>
補足情報(FW/ツールのバージョンなど)
使っているstrutsはstruts-2.3.15.3でした
あなたの回答
tips
プレビュー