QA@IT
«回答へ戻る

不要なjarを削除

5599
 commons-lang3-3.1.jar
 commons-logging-1.1.3.jar
 compiler-0.8.4.jar
-freemarker-2.3.15.jar
 freemarker-2.3.19.jar
 guava-12.0.1.jar
 javassist-3.11.0.GA.jar
-javassist-3.7.ga.jar
 jsr305-1.3.9.jar
 mvel2-2.0.11.jar
 ognl-3.0.6.jar

多分長くなりますが、 (struts-tilesではなく)tiles3.0.3 ありでも動作しましたので貼っていきます。
一応tilesが使える状態のものを張っていきますが、web.xmlにtilesのcontext-paramやlistenerがない状態でも私の環境でlogout.actionは動いてました。当然jspのレンダリングでエラーになりますが、index.jspからlogout.actionは呼ばれていました。
なので、今提示されているソースに限っては tilesはひとまず関係ないのだろうなと個人的には思っています。
(asahina-aliceさんがtilesを疑っておられるのはエラーが「No result defined for action ~」だからでしょうか。ただsturuts-tilesじゃなさそうなのでどうでしょうね。)

Dynamic Method invocationでもエラーがそうなるケースがあるようなので、アノテーションの不備だとかを疑ってみたほうがいいように思います。


環境

 Win 8.1 x64
 eclipse pleiades 4.3 ultimate
 Tomcat 7 ( pleiades 付属のxamppについてるTomcat )
 struts 2.3.16
 tiles 3.0.3    - https://tiles.apache.org/download.html
 slf4j 1.7.5    - http://www.slf4j.org/download.html

その他

  • SessionFilterとDBアクセス部分は削除。
  • tiles.xmlで定義されているjspは適当。

配置

プロジェクトは

  • 動的Webプロジェクト (モジュールバージョン 3.0)
  • ターゲットランタイム Apache Tomcat v7.0

eclipse プロジェクト・エクスプローラーで

Java リソース/
  src/
    com.MySQL.actions/
      LogoutAction.java

WebContent/
  WEB-INF/
    lib/
      (後述)
    tiles.xml
    web.xml
  baseLayout.jsp
  date.jsp
  header.jsp
  index.jsp
  main.jsp
  search.jsp
  tiles.jsp

WEB-INF/lib/のjar。 struts,tiles,slf4jに含まれているもので揃うハズ。
(tilesから追加したのがほとんど)
ognlは2系が追加されていたら削除(tilesのライブラリはlibもoptionalもほぼすべて必要になったがognlはstrutsの3.0.6を使っている。

aopalliance-1.0.jar
asm-3.3.jar
asm-commons-3.3.jar
commons-beanutils-1.8.0.jar
commons-collections-3.2.jar
commons-digester-2.0.jar
commons-fileupload-1.3.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
compiler-0.8.4.jar
freemarker-2.3.19.jar
guava-12.0.1.jar
javassist-3.11.0.GA.jar
jsr305-1.3.9.jar
mvel2-2.0.11.jar
ognl-3.0.6.jar
oro-2.0.8.jar
slf4j-api-1.7.5.jar
slf4j-jdk14-1.5.8.jar
slf4j-nop-1.7.5.jar
spring-aop-3.2.0.RELEASE.jar
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
spring-web-3.2.0.RELEASE.jar
struts2-convention-plugin-2.3.16.jar
struts2-core-2.3.16.jar
tiles-api-3.0.3.jar
tiles-autotag-core-runtime-1.1.0.jar
tiles-compat-3.0.3.jar
tiles-core-3.0.3.jar
tiles-el-3.0.3.jar
tiles-extras-3.0.3.jar
tiles-freemarker-3.0.3.jar
tiles-jsp-3.0.3.jar
tiles-mvel-3.0.3.jar
tiles-ognl-3.0.3.jar
tiles-request-api-1.0.3.jar
tiles-request-freemarker-1.0.3.jar
tiles-request-jsp-1.0.3.jar
tiles-request-mustache-1.0.3.jar
tiles-request-servlet-1.0.3.jar
tiles-request-servlet-wildcard-1.0.3.jar
tiles-request-velocity-1.0.3.jar
tiles-servlet-3.0.3.jar
tiles-template-3.0.3.jar
tiles-velocity-3.0.3.jar
velocity-1.6.2.jar
velocity-tools-2.0.jar
xwork-core-2.3.16.jar

ソース

com.MySQL.actions.LogoutAction.java

package com.MySQL.actions;

import java.util.Map;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

@Results({
    @Result(name="success", location="/tiles.jsp")
    })
public class LogoutAction extends ActionSupport implements SessionAware {

   private static final long serialVersionUID = 1L;

   @Action("logout")
   public String execute() throws Exception {

       ((SessionMap<String, Object>)session).invalidate();

       //ListAction dao = new ListAction();
       //List<Object> table  = dao.getTable();
       //((SessionMap<String, Object>)session).put("list", table);
       return "success";
   }

   private Map<String, Object> session;
   public void setSession(Map<String, Object> session) {
       this.session = session;
   }
}

WEB-INF/tiles.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="Welcome" template="/baseLayout.jsp">
    <put-attribute name="title"  value="スポーツ用品店社員用在庫表メニュー認証画面"/>
    <put-attribute name="header" value="/header.jsp"/>
    <put-attribute name="date" value="/date.jsp" />
    <put-attribute name="main" value="/main.jsp" />
    <put-attribute name="search" value="/search.jsp" />
</definition>
</tiles-definitions>

WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>stock</display-name>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-definitions.xml</param-value>
</context-param>
<listener>
    <listener-class>
        org.apache.tiles.extras.complete.CompleteAutoloadTilesListener
    </listener-class>
</listener>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
    <param-name>actionPackages</param-name>
    <param-value>com.MySQL</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- <filter>
        <filter-name>SessionFilter</filter-name>
        <filter-class>com.MySQL.SessionFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>SessionFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

baseLayout.jsp

<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>
<tiles:insertAttribute name="title" ignore="true" />
</title>
</head>
<body>
<tiles:insertAttribute name="header" />
<hr>
<font size = "5">ウエルカム画面</font>
<hr>
<table>
<tr>
<td valign="top">
<tiles:insertAttribute name="date" />
</td>
<td valign="top">
<tiles:insertAttribute name="main" />
</td>
<td valign="top">
<tiles:insertAttribute name="search" />
</td>
</tr>
</table>
</body>
</html>

date.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
date

header.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<h1>Header</h1>

index.jsp

<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>社員認証要求画面</title>
</head>
<body>
<table>
<tr>
<td align="center" valign="middle">
社員ID、パスワードを入力して社員認証してください。<br>
一定時間操作がない場合も自動的にログアウトされるためこの画面が表示されることがあります。
<br>
<s:form method="post" action="logout">
<s:submit value="社員認証画面にGO!" />
</s:form>
</td>
</tr>
</table>
</body>
</html>

main.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
main

search.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<input type="text" value="enter keyword for search"/>
<input type="button" value="dummy search button"/>

tiles.jsp

<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<tiles:insertDefinition name="Welcome"/>
多分長くなりますが、 (struts-tilesではなく)tiles3.0.3 ありでも動作しましたので貼っていきます。
一応tilesが使える状態のものを張っていきますが、web.xmlにtilesのcontext-paramやlistenerがない状態でも私の環境でlogout.actionは動いてました。当然jspのレンダリングでエラーになりますが、index.jspからlogout.actionは呼ばれていました。
なので、今提示されているソースに限っては tilesはひとまず関係ないのだろうなと個人的には思っています。
(asahina-aliceさんがtilesを疑っておられるのはエラーが「No result defined for action ~」だからでしょうか。ただsturuts-tilesじゃなさそうなのでどうでしょうね。)

Dynamic Method invocationでもエラーがそうなるケースがあるようなので、アノテーションの不備だとかを疑ってみたほうがいいように思います。

---

# 環境
```
 Win 8.1 x64
 eclipse pleiades 4.3 ultimate
 Tomcat 7 ( pleiades 付属のxamppについてるTomcat )
 struts 2.3.16
 tiles 3.0.3    - https://tiles.apache.org/download.html
 slf4j 1.7.5    - http://www.slf4j.org/download.html
```

その他
* SessionFilterとDBアクセス部分は削除。
* tiles.xmlで定義されているjspは適当。

---

# 配置

プロジェクトは
* 動的Webプロジェクト (モジュールバージョン 3.0)
* ターゲットランタイム Apache Tomcat v7.0

eclipse プロジェクト・エクスプローラーで
```
Java リソース/
  src/
    com.MySQL.actions/
      LogoutAction.java

WebContent/
  WEB-INF/
    lib/
      (後述)
    tiles.xml
    web.xml
  baseLayout.jsp
  date.jsp
  header.jsp
  index.jsp
  main.jsp
  search.jsp
  tiles.jsp
```

WEB-INF/lib/のjar。 struts,tiles,slf4jに含まれているもので揃うハズ。
(tilesから追加したのがほとんど)
ognlは2系が追加されていたら削除(tilesのライブラリはlibもoptionalもほぼすべて必要になったがognlはstrutsの3.0.6を使っている。
```
aopalliance-1.0.jar
asm-3.3.jar
asm-commons-3.3.jar
commons-beanutils-1.8.0.jar
commons-collections-3.2.jar
commons-digester-2.0.jar
commons-fileupload-1.3.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
compiler-0.8.4.jar
freemarker-2.3.19.jar
guava-12.0.1.jar
javassist-3.11.0.GA.jar
jsr305-1.3.9.jar
mvel2-2.0.11.jar
ognl-3.0.6.jar
oro-2.0.8.jar
slf4j-api-1.7.5.jar
slf4j-jdk14-1.5.8.jar
slf4j-nop-1.7.5.jar
spring-aop-3.2.0.RELEASE.jar
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
spring-web-3.2.0.RELEASE.jar
struts2-convention-plugin-2.3.16.jar
struts2-core-2.3.16.jar
tiles-api-3.0.3.jar
tiles-autotag-core-runtime-1.1.0.jar
tiles-compat-3.0.3.jar
tiles-core-3.0.3.jar
tiles-el-3.0.3.jar
tiles-extras-3.0.3.jar
tiles-freemarker-3.0.3.jar
tiles-jsp-3.0.3.jar
tiles-mvel-3.0.3.jar
tiles-ognl-3.0.3.jar
tiles-request-api-1.0.3.jar
tiles-request-freemarker-1.0.3.jar
tiles-request-jsp-1.0.3.jar
tiles-request-mustache-1.0.3.jar
tiles-request-servlet-1.0.3.jar
tiles-request-servlet-wildcard-1.0.3.jar
tiles-request-velocity-1.0.3.jar
tiles-servlet-3.0.3.jar
tiles-template-3.0.3.jar
tiles-velocity-3.0.3.jar
velocity-1.6.2.jar
velocity-tools-2.0.jar
xwork-core-2.3.16.jar
```

---

# ソース

com.MySQL.actions.LogoutAction.java
```java
package com.MySQL.actions;

import java.util.Map;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

@Results({
    @Result(name="success", location="/tiles.jsp")
    })
public class LogoutAction extends ActionSupport implements SessionAware {

   private static final long serialVersionUID = 1L;

   @Action("logout")
   public String execute() throws Exception {

       ((SessionMap<String, Object>)session).invalidate();

       //ListAction dao = new ListAction();
       //List<Object> table  = dao.getTable();
       //((SessionMap<String, Object>)session).put("list", table);
       return "success";
   }

   private Map<String, Object> session;
   public void setSession(Map<String, Object> session) {
       this.session = session;
   }
}
```

WEB-INF/tiles.xml
```xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="Welcome" template="/baseLayout.jsp">
    <put-attribute name="title"  value="スポーツ用品店社員用在庫表メニュー認証画面"/>
    <put-attribute name="header" value="/header.jsp"/>
    <put-attribute name="date" value="/date.jsp" />
    <put-attribute name="main" value="/main.jsp" />
    <put-attribute name="search" value="/search.jsp" />
</definition>
</tiles-definitions>
```

WEB-INF/web.xml
```
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>stock</display-name>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-definitions.xml</param-value>
</context-param>
<listener>
    <listener-class>
        org.apache.tiles.extras.complete.CompleteAutoloadTilesListener
    </listener-class>
</listener>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
    <param-name>actionPackages</param-name>
    <param-value>com.MySQL</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- <filter>
        <filter-name>SessionFilter</filter-name>
        <filter-class>com.MySQL.SessionFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>SessionFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
```

---

baseLayout.jsp
```jsp
<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>
<tiles:insertAttribute name="title" ignore="true" />
</title>
</head>
<body>
<tiles:insertAttribute name="header" />
<hr>
<font size = "5">ウエルカム画面</font>
<hr>
<table>
<tr>
<td valign="top">
<tiles:insertAttribute name="date" />
</td>
<td valign="top">
<tiles:insertAttribute name="main" />
</td>
<td valign="top">
<tiles:insertAttribute name="search" />
</td>
</tr>
</table>
</body>
</html>
```

date.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
date
```

header.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<h1>Header</h1>
```

index.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>社員認証要求画面</title>
</head>
<body>
<table>
<tr>
<td align="center" valign="middle">
社員ID、パスワードを入力して社員認証してください。<br>
一定時間操作がない場合も自動的にログアウトされるためこの画面が表示されることがあります。
<br>
<s:form method="post" action="logout">
<s:submit value="社員認証画面にGO!" />
</s:form>
</td>
</tr>
</table>
</body>
</html>
```

main.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
main
```

search.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<input type="text" value="enter keyword for search"/>
<input type="button" value="dummy search button"/>
```

tiles.jsp
```jsp
<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<tiles:insertDefinition name="Welcome"/>
```

5599
 ```
 
 date.jsp
-```
+```jsp
 <%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
 date
 ```
 
 header.jsp
-```
+```jsp
 <%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
 <h1>Header</h1>
 ```
 
 index.jsp
-```
+```jsp
 <%@ page language="java" contentType="text/html; charset=Windows-31J"
     pageEncoding="Windows-31J"%>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 ```
 
 main.jsp
-```
+```jsp
 <%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
 main
 ```
 
 search.jsp
-```
+```jsp
 <%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
 <input type="text" value="enter keyword for search"/>
 ```
 
 tiles.jsp
-```
+```jsp
 <%@page contentType="text/html; charset=UTF-8"%>
 <%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
 <%@ taglib prefix="s" uri="/struts-tags" %>

多分長くなりますが、 (struts-tilesではなく)tiles3.0.3 ありでも動作しましたので貼っていきます。
一応tilesが使える状態のものを張っていきますが、web.xmlにtilesのcontext-paramやlistenerがない状態でも私の環境でlogout.actionは動いてました。当然jspのレンダリングでエラーになりますが、index.jspからlogout.actionは呼ばれていました。
なので、今提示されているソースに限っては tilesはひとまず関係ないのだろうなと個人的には思っています。
(asahina-aliceさんがtilesを疑っておられるのはエラーが「No result defined for action ~」だからでしょうか。ただsturuts-tilesじゃなさそうなのでどうでしょうね。)

Dynamic Method invocationでもエラーがそうなるケースがあるようなので、アノテーションの不備だとかを疑ってみたほうがいいように思います。


環境

 Win 8.1 x64
 eclipse pleiades 4.3 ultimate
 Tomcat 7 ( pleiades 付属のxamppについてるTomcat )
 struts 2.3.16
 tiles 3.0.3    - https://tiles.apache.org/download.html
 slf4j 1.7.5    - http://www.slf4j.org/download.html

その他

  • SessionFilterとDBアクセス部分は削除。
  • tiles.xmlで定義されているjspは適当。

配置

プロジェクトは

  • 動的Webプロジェクト (モジュールバージョン 3.0)
  • ターゲットランタイム Apache Tomcat v7.0

eclipse プロジェクト・エクスプローラーで

Java リソース/
  src/
    com.MySQL.actions/
      LogoutAction.java

WebContent/
  WEB-INF/
    lib/
      (後述)
    tiles.xml
    web.xml
  baseLayout.jsp
  date.jsp
  header.jsp
  index.jsp
  main.jsp
  search.jsp
  tiles.jsp

WEB-INF/lib/のjar。 struts,tiles,slf4jに含まれているもので揃うハズ。
(tilesから追加したのがほとんど)
ognlは2系が追加されていたら削除(tilesのライブラリはlibもoptionalもほぼすべて必要になったがognlはstrutsの3.0.6を使っている。

aopalliance-1.0.jar
asm-3.3.jar
asm-commons-3.3.jar
commons-beanutils-1.8.0.jar
commons-collections-3.2.jar
commons-digester-2.0.jar
commons-fileupload-1.3.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
compiler-0.8.4.jar
freemarker-2.3.15.jar
freemarker-2.3.19.jar
guava-12.0.1.jar
javassist-3.11.0.GA.jar
javassist-3.7.ga.jar
jsr305-1.3.9.jar
mvel2-2.0.11.jar
ognl-3.0.6.jar
oro-2.0.8.jar
slf4j-api-1.7.5.jar
slf4j-jdk14-1.5.8.jar
slf4j-nop-1.7.5.jar
spring-aop-3.2.0.RELEASE.jar
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
spring-web-3.2.0.RELEASE.jar
struts2-convention-plugin-2.3.16.jar
struts2-core-2.3.16.jar
tiles-api-3.0.3.jar
tiles-autotag-core-runtime-1.1.0.jar
tiles-compat-3.0.3.jar
tiles-core-3.0.3.jar
tiles-el-3.0.3.jar
tiles-extras-3.0.3.jar
tiles-freemarker-3.0.3.jar
tiles-jsp-3.0.3.jar
tiles-mvel-3.0.3.jar
tiles-ognl-3.0.3.jar
tiles-request-api-1.0.3.jar
tiles-request-freemarker-1.0.3.jar
tiles-request-jsp-1.0.3.jar
tiles-request-mustache-1.0.3.jar
tiles-request-servlet-1.0.3.jar
tiles-request-servlet-wildcard-1.0.3.jar
tiles-request-velocity-1.0.3.jar
tiles-servlet-3.0.3.jar
tiles-template-3.0.3.jar
tiles-velocity-3.0.3.jar
velocity-1.6.2.jar
velocity-tools-2.0.jar
xwork-core-2.3.16.jar

ソース

com.MySQL.actions.LogoutAction.java

package com.MySQL.actions;

import java.util.Map;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

@Results({
    @Result(name="success", location="/tiles.jsp")
    })
public class LogoutAction extends ActionSupport implements SessionAware {

   private static final long serialVersionUID = 1L;

   @Action("logout")
   public String execute() throws Exception {

       ((SessionMap<String, Object>)session).invalidate();

       //ListAction dao = new ListAction();
       //List<Object> table  = dao.getTable();
       //((SessionMap<String, Object>)session).put("list", table);
       return "success";
   }

   private Map<String, Object> session;
   public void setSession(Map<String, Object> session) {
       this.session = session;
   }
}

WEB-INF/tiles.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="Welcome" template="/baseLayout.jsp">
    <put-attribute name="title"  value="スポーツ用品店社員用在庫表メニュー認証画面"/>
    <put-attribute name="header" value="/header.jsp"/>
    <put-attribute name="date" value="/date.jsp" />
    <put-attribute name="main" value="/main.jsp" />
    <put-attribute name="search" value="/search.jsp" />
</definition>
</tiles-definitions>

WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>stock</display-name>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-definitions.xml</param-value>
</context-param>
<listener>
    <listener-class>
        org.apache.tiles.extras.complete.CompleteAutoloadTilesListener
    </listener-class>
</listener>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
    <param-name>actionPackages</param-name>
    <param-value>com.MySQL</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- <filter>
        <filter-name>SessionFilter</filter-name>
        <filter-class>com.MySQL.SessionFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>SessionFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

baseLayout.jsp

<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>
<tiles:insertAttribute name="title" ignore="true" />
</title>
</head>
<body>
<tiles:insertAttribute name="header" />
<hr>
<font size = "5">ウエルカム画面</font>
<hr>
<table>
<tr>
<td valign="top">
<tiles:insertAttribute name="date" />
</td>
<td valign="top">
<tiles:insertAttribute name="main" />
</td>
<td valign="top">
<tiles:insertAttribute name="search" />
</td>
</tr>
</table>
</body>
</html>

date.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
date

header.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<h1>Header</h1>

index.jsp

<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>社員認証要求画面</title>
</head>
<body>
<table>
<tr>
<td align="center" valign="middle">
社員ID、パスワードを入力して社員認証してください。<br>
一定時間操作がない場合も自動的にログアウトされるためこの画面が表示されることがあります。
<br>
<s:form method="post" action="logout">
<s:submit value="社員認証画面にGO!" />
</s:form>
</td>
</tr>
</table>
</body>
</html>

main.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
main

search.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<input type="text" value="enter keyword for search"/>
<input type="button" value="dummy search button"/>

tiles.jsp

<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<tiles:insertDefinition name="Welcome"/>
多分長くなりますが、 (struts-tilesではなく)tiles3.0.3 ありでも動作しましたので貼っていきます。
一応tilesが使える状態のものを張っていきますが、web.xmlにtilesのcontext-paramやlistenerがない状態でも私の環境でlogout.actionは動いてました。当然jspのレンダリングでエラーになりますが、index.jspからlogout.actionは呼ばれていました。
なので、今提示されているソースに限っては tilesはひとまず関係ないのだろうなと個人的には思っています。
(asahina-aliceさんがtilesを疑っておられるのはエラーが「No result defined for action ~」だからでしょうか。ただsturuts-tilesじゃなさそうなのでどうでしょうね。)

Dynamic Method invocationでもエラーがそうなるケースがあるようなので、アノテーションの不備だとかを疑ってみたほうがいいように思います。

---

# 環境
```
 Win 8.1 x64
 eclipse pleiades 4.3 ultimate
 Tomcat 7 ( pleiades 付属のxamppについてるTomcat )
 struts 2.3.16
 tiles 3.0.3    - https://tiles.apache.org/download.html
 slf4j 1.7.5    - http://www.slf4j.org/download.html
```

その他
* SessionFilterとDBアクセス部分は削除。
* tiles.xmlで定義されているjspは適当。

---

# 配置

プロジェクトは
* 動的Webプロジェクト (モジュールバージョン 3.0)
* ターゲットランタイム Apache Tomcat v7.0

eclipse プロジェクト・エクスプローラーで
```
Java リソース/
  src/
    com.MySQL.actions/
      LogoutAction.java

WebContent/
  WEB-INF/
    lib/
      (後述)
    tiles.xml
    web.xml
  baseLayout.jsp
  date.jsp
  header.jsp
  index.jsp
  main.jsp
  search.jsp
  tiles.jsp
```

WEB-INF/lib/のjar。 struts,tiles,slf4jに含まれているもので揃うハズ。
(tilesから追加したのがほとんど)
ognlは2系が追加されていたら削除(tilesのライブラリはlibもoptionalもほぼすべて必要になったがognlはstrutsの3.0.6を使っている。
```
aopalliance-1.0.jar
asm-3.3.jar
asm-commons-3.3.jar
commons-beanutils-1.8.0.jar
commons-collections-3.2.jar
commons-digester-2.0.jar
commons-fileupload-1.3.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
compiler-0.8.4.jar
freemarker-2.3.15.jar
freemarker-2.3.19.jar
guava-12.0.1.jar
javassist-3.11.0.GA.jar
javassist-3.7.ga.jar
jsr305-1.3.9.jar
mvel2-2.0.11.jar
ognl-3.0.6.jar
oro-2.0.8.jar
slf4j-api-1.7.5.jar
slf4j-jdk14-1.5.8.jar
slf4j-nop-1.7.5.jar
spring-aop-3.2.0.RELEASE.jar
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
spring-web-3.2.0.RELEASE.jar
struts2-convention-plugin-2.3.16.jar
struts2-core-2.3.16.jar
tiles-api-3.0.3.jar
tiles-autotag-core-runtime-1.1.0.jar
tiles-compat-3.0.3.jar
tiles-core-3.0.3.jar
tiles-el-3.0.3.jar
tiles-extras-3.0.3.jar
tiles-freemarker-3.0.3.jar
tiles-jsp-3.0.3.jar
tiles-mvel-3.0.3.jar
tiles-ognl-3.0.3.jar
tiles-request-api-1.0.3.jar
tiles-request-freemarker-1.0.3.jar
tiles-request-jsp-1.0.3.jar
tiles-request-mustache-1.0.3.jar
tiles-request-servlet-1.0.3.jar
tiles-request-servlet-wildcard-1.0.3.jar
tiles-request-velocity-1.0.3.jar
tiles-servlet-3.0.3.jar
tiles-template-3.0.3.jar
tiles-velocity-3.0.3.jar
velocity-1.6.2.jar
velocity-tools-2.0.jar
xwork-core-2.3.16.jar
```

---

# ソース

com.MySQL.actions.LogoutAction.java
```java
package com.MySQL.actions;

import java.util.Map;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

@Results({
    @Result(name="success", location="/tiles.jsp")
    })
public class LogoutAction extends ActionSupport implements SessionAware {

   private static final long serialVersionUID = 1L;

   @Action("logout")
   public String execute() throws Exception {

       ((SessionMap<String, Object>)session).invalidate();

       //ListAction dao = new ListAction();
       //List<Object> table  = dao.getTable();
       //((SessionMap<String, Object>)session).put("list", table);
       return "success";
   }

   private Map<String, Object> session;
   public void setSession(Map<String, Object> session) {
       this.session = session;
   }
}
```

WEB-INF/tiles.xml
```xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="Welcome" template="/baseLayout.jsp">
    <put-attribute name="title"  value="スポーツ用品店社員用在庫表メニュー認証画面"/>
    <put-attribute name="header" value="/header.jsp"/>
    <put-attribute name="date" value="/date.jsp" />
    <put-attribute name="main" value="/main.jsp" />
    <put-attribute name="search" value="/search.jsp" />
</definition>
</tiles-definitions>
```

WEB-INF/web.xml
```
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>stock</display-name>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-definitions.xml</param-value>
</context-param>
<listener>
    <listener-class>
        org.apache.tiles.extras.complete.CompleteAutoloadTilesListener
    </listener-class>
</listener>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
    <param-name>actionPackages</param-name>
    <param-value>com.MySQL</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- <filter>
        <filter-name>SessionFilter</filter-name>
        <filter-class>com.MySQL.SessionFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>SessionFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
```

---

baseLayout.jsp
```jsp
<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>
<tiles:insertAttribute name="title" ignore="true" />
</title>
</head>
<body>
<tiles:insertAttribute name="header" />
<hr>
<font size = "5">ウエルカム画面</font>
<hr>
<table>
<tr>
<td valign="top">
<tiles:insertAttribute name="date" />
</td>
<td valign="top">
<tiles:insertAttribute name="main" />
</td>
<td valign="top">
<tiles:insertAttribute name="search" />
</td>
</tr>
</table>
</body>
</html>
```

date.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
date
```

header.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<h1>Header</h1>
```

index.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>社員認証要求画面</title>
</head>
<body>
<table>
<tr>
<td align="center" valign="middle">
社員ID、パスワードを入力して社員認証してください。<br>
一定時間操作がない場合も自動的にログアウトされるためこの画面が表示されることがあります。
<br>
<s:form method="post" action="logout">
<s:submit value="社員認証画面にGO!" />
</s:form>
</td>
</tr>
</table>
</body>
</html>
```

main.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
main
```

search.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<input type="text" value="enter keyword for search"/>
<input type="button" value="dummy search button"/>
```

tiles.jsp
```jsp
<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<tiles:insertDefinition name="Welcome"/>
```

回答を投稿

多分長くなりますが、 (struts-tilesではなく)tiles3.0.3 ありでも動作しましたので貼っていきます。
一応tilesが使える状態のものを張っていきますが、web.xmlにtilesのcontext-paramやlistenerがない状態でも私の環境でlogout.actionは動いてました。当然jspのレンダリングでエラーになりますが、index.jspからlogout.actionは呼ばれていました。
なので、今提示されているソースに限っては tilesはひとまず関係ないのだろうなと個人的には思っています。
(asahina-aliceさんがtilesを疑っておられるのはエラーが「No result defined for action ~」だからでしょうか。ただsturuts-tilesじゃなさそうなのでどうでしょうね。)

Dynamic Method invocationでもエラーがそうなるケースがあるようなので、アノテーションの不備だとかを疑ってみたほうがいいように思います。


環境

 Win 8.1 x64
 eclipse pleiades 4.3 ultimate
 Tomcat 7 ( pleiades 付属のxamppについてるTomcat )
 struts 2.3.16
 tiles 3.0.3    - https://tiles.apache.org/download.html
 slf4j 1.7.5    - http://www.slf4j.org/download.html

その他

  • SessionFilterとDBアクセス部分は削除。
  • tiles.xmlで定義されているjspは適当。

配置

プロジェクトは

  • 動的Webプロジェクト (モジュールバージョン 3.0)
  • ターゲットランタイム Apache Tomcat v7.0

eclipse プロジェクト・エクスプローラーで

Java リソース/
  src/
    com.MySQL.actions/
      LogoutAction.java

WebContent/
  WEB-INF/
    lib/
      (後述)
    tiles.xml
    web.xml
  baseLayout.jsp
  date.jsp
  header.jsp
  index.jsp
  main.jsp
  search.jsp
  tiles.jsp

WEB-INF/lib/のjar。 struts,tiles,slf4jに含まれているもので揃うハズ。
(tilesから追加したのがほとんど)
ognlは2系が追加されていたら削除(tilesのライブラリはlibもoptionalもほぼすべて必要になったがognlはstrutsの3.0.6を使っている。

aopalliance-1.0.jar
asm-3.3.jar
asm-commons-3.3.jar
commons-beanutils-1.8.0.jar
commons-collections-3.2.jar
commons-digester-2.0.jar
commons-fileupload-1.3.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
compiler-0.8.4.jar
freemarker-2.3.15.jar
freemarker-2.3.19.jar
guava-12.0.1.jar
javassist-3.11.0.GA.jar
javassist-3.7.ga.jar
jsr305-1.3.9.jar
mvel2-2.0.11.jar
ognl-3.0.6.jar
oro-2.0.8.jar
slf4j-api-1.7.5.jar
slf4j-jdk14-1.5.8.jar
slf4j-nop-1.7.5.jar
spring-aop-3.2.0.RELEASE.jar
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
spring-web-3.2.0.RELEASE.jar
struts2-convention-plugin-2.3.16.jar
struts2-core-2.3.16.jar
tiles-api-3.0.3.jar
tiles-autotag-core-runtime-1.1.0.jar
tiles-compat-3.0.3.jar
tiles-core-3.0.3.jar
tiles-el-3.0.3.jar
tiles-extras-3.0.3.jar
tiles-freemarker-3.0.3.jar
tiles-jsp-3.0.3.jar
tiles-mvel-3.0.3.jar
tiles-ognl-3.0.3.jar
tiles-request-api-1.0.3.jar
tiles-request-freemarker-1.0.3.jar
tiles-request-jsp-1.0.3.jar
tiles-request-mustache-1.0.3.jar
tiles-request-servlet-1.0.3.jar
tiles-request-servlet-wildcard-1.0.3.jar
tiles-request-velocity-1.0.3.jar
tiles-servlet-3.0.3.jar
tiles-template-3.0.3.jar
tiles-velocity-3.0.3.jar
velocity-1.6.2.jar
velocity-tools-2.0.jar
xwork-core-2.3.16.jar

ソース

com.MySQL.actions.LogoutAction.java

package com.MySQL.actions;

import java.util.Map;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

@Results({
    @Result(name="success", location="/tiles.jsp")
    })
public class LogoutAction extends ActionSupport implements SessionAware {

   private static final long serialVersionUID = 1L;

   @Action("logout")
   public String execute() throws Exception {

       ((SessionMap<String, Object>)session).invalidate();

       //ListAction dao = new ListAction();
       //List<Object> table  = dao.getTable();
       //((SessionMap<String, Object>)session).put("list", table);
       return "success";
   }

   private Map<String, Object> session;
   public void setSession(Map<String, Object> session) {
       this.session = session;
   }
}

WEB-INF/tiles.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="Welcome" template="/baseLayout.jsp">
    <put-attribute name="title"  value="スポーツ用品店社員用在庫表メニュー認証画面"/>
    <put-attribute name="header" value="/header.jsp"/>
    <put-attribute name="date" value="/date.jsp" />
    <put-attribute name="main" value="/main.jsp" />
    <put-attribute name="search" value="/search.jsp" />
</definition>
</tiles-definitions>

WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>stock</display-name>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-definitions.xml</param-value>
</context-param>
<listener>
    <listener-class>
        org.apache.tiles.extras.complete.CompleteAutoloadTilesListener
    </listener-class>
</listener>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
    <param-name>actionPackages</param-name>
    <param-value>com.MySQL</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- <filter>
        <filter-name>SessionFilter</filter-name>
        <filter-class>com.MySQL.SessionFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>SessionFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

baseLayout.jsp

<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>
<tiles:insertAttribute name="title" ignore="true" />
</title>
</head>
<body>
<tiles:insertAttribute name="header" />
<hr>
<font size = "5">ウエルカム画面</font>
<hr>
<table>
<tr>
<td valign="top">
<tiles:insertAttribute name="date" />
</td>
<td valign="top">
<tiles:insertAttribute name="main" />
</td>
<td valign="top">
<tiles:insertAttribute name="search" />
</td>
</tr>
</table>
</body>
</html>

date.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
date

header.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<h1>Header</h1>

index.jsp

<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>社員認証要求画面</title>
</head>
<body>
<table>
<tr>
<td align="center" valign="middle">
社員ID、パスワードを入力して社員認証してください。<br>
一定時間操作がない場合も自動的にログアウトされるためこの画面が表示されることがあります。
<br>
<s:form method="post" action="logout">
<s:submit value="社員認証画面にGO!" />
</s:form>
</td>
</tr>
</table>
</body>
</html>

main.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
main

search.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<input type="text" value="enter keyword for search"/>
<input type="button" value="dummy search button"/>

tiles.jsp

<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<tiles:insertDefinition name="Welcome"/>
多分長くなりますが、 (struts-tilesではなく)tiles3.0.3 ありでも動作しましたので貼っていきます。
一応tilesが使える状態のものを張っていきますが、web.xmlにtilesのcontext-paramやlistenerがない状態でも私の環境でlogout.actionは動いてました。当然jspのレンダリングでエラーになりますが、index.jspからlogout.actionは呼ばれていました。
なので、今提示されているソースに限っては tilesはひとまず関係ないのだろうなと個人的には思っています。
(asahina-aliceさんがtilesを疑っておられるのはエラーが「No result defined for action ~」だからでしょうか。ただsturuts-tilesじゃなさそうなのでどうでしょうね。)

Dynamic Method invocationでもエラーがそうなるケースがあるようなので、アノテーションの不備だとかを疑ってみたほうがいいように思います。

---

# 環境
```
 Win 8.1 x64
 eclipse pleiades 4.3 ultimate
 Tomcat 7 ( pleiades 付属のxamppについてるTomcat )
 struts 2.3.16
 tiles 3.0.3    - https://tiles.apache.org/download.html
 slf4j 1.7.5    - http://www.slf4j.org/download.html
```

その他
* SessionFilterとDBアクセス部分は削除。
* tiles.xmlで定義されているjspは適当。

---

# 配置

プロジェクトは
* 動的Webプロジェクト (モジュールバージョン 3.0)
* ターゲットランタイム Apache Tomcat v7.0

eclipse プロジェクト・エクスプローラーで
```
Java リソース/
  src/
    com.MySQL.actions/
      LogoutAction.java

WebContent/
  WEB-INF/
    lib/
      (後述)
    tiles.xml
    web.xml
  baseLayout.jsp
  date.jsp
  header.jsp
  index.jsp
  main.jsp
  search.jsp
  tiles.jsp
```

WEB-INF/lib/のjar。 struts,tiles,slf4jに含まれているもので揃うハズ。
(tilesから追加したのがほとんど)
ognlは2系が追加されていたら削除(tilesのライブラリはlibもoptionalもほぼすべて必要になったがognlはstrutsの3.0.6を使っている。
```
aopalliance-1.0.jar
asm-3.3.jar
asm-commons-3.3.jar
commons-beanutils-1.8.0.jar
commons-collections-3.2.jar
commons-digester-2.0.jar
commons-fileupload-1.3.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
compiler-0.8.4.jar
freemarker-2.3.15.jar
freemarker-2.3.19.jar
guava-12.0.1.jar
javassist-3.11.0.GA.jar
javassist-3.7.ga.jar
jsr305-1.3.9.jar
mvel2-2.0.11.jar
ognl-3.0.6.jar
oro-2.0.8.jar
slf4j-api-1.7.5.jar
slf4j-jdk14-1.5.8.jar
slf4j-nop-1.7.5.jar
spring-aop-3.2.0.RELEASE.jar
spring-beans-3.2.0.RELEASE.jar
spring-context-3.2.0.RELEASE.jar
spring-core-3.2.0.RELEASE.jar
spring-expression-3.2.0.RELEASE.jar
spring-web-3.2.0.RELEASE.jar
struts2-convention-plugin-2.3.16.jar
struts2-core-2.3.16.jar
tiles-api-3.0.3.jar
tiles-autotag-core-runtime-1.1.0.jar
tiles-compat-3.0.3.jar
tiles-core-3.0.3.jar
tiles-el-3.0.3.jar
tiles-extras-3.0.3.jar
tiles-freemarker-3.0.3.jar
tiles-jsp-3.0.3.jar
tiles-mvel-3.0.3.jar
tiles-ognl-3.0.3.jar
tiles-request-api-1.0.3.jar
tiles-request-freemarker-1.0.3.jar
tiles-request-jsp-1.0.3.jar
tiles-request-mustache-1.0.3.jar
tiles-request-servlet-1.0.3.jar
tiles-request-servlet-wildcard-1.0.3.jar
tiles-request-velocity-1.0.3.jar
tiles-servlet-3.0.3.jar
tiles-template-3.0.3.jar
tiles-velocity-3.0.3.jar
velocity-1.6.2.jar
velocity-tools-2.0.jar
xwork-core-2.3.16.jar
```

---

# ソース

com.MySQL.actions.LogoutAction.java
```java
package com.MySQL.actions;

import java.util.Map;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.apache.struts2.dispatcher.SessionMap;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

@Results({
    @Result(name="success", location="/tiles.jsp")
    })
public class LogoutAction extends ActionSupport implements SessionAware {

   private static final long serialVersionUID = 1L;

   @Action("logout")
   public String execute() throws Exception {

       ((SessionMap<String, Object>)session).invalidate();

       //ListAction dao = new ListAction();
       //List<Object> table  = dao.getTable();
       //((SessionMap<String, Object>)session).put("list", table);
       return "success";
   }

   private Map<String, Object> session;
   public void setSession(Map<String, Object> session) {
       this.session = session;
   }
}
```

WEB-INF/tiles.xml
```xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="Welcome" template="/baseLayout.jsp">
    <put-attribute name="title"  value="スポーツ用品店社員用在庫表メニュー認証画面"/>
    <put-attribute name="header" value="/header.jsp"/>
    <put-attribute name="date" value="/date.jsp" />
    <put-attribute name="main" value="/main.jsp" />
    <put-attribute name="search" value="/search.jsp" />
</definition>
</tiles-definitions>
```

WEB-INF/web.xml
```
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>stock</display-name>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-definitions.xml</param-value>
</context-param>
<listener>
    <listener-class>
        org.apache.tiles.extras.complete.CompleteAutoloadTilesListener
    </listener-class>
</listener>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
    <param-name>actionPackages</param-name>
    <param-value>com.MySQL</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- <filter>
        <filter-name>SessionFilter</filter-name>
        <filter-class>com.MySQL.SessionFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>SessionFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
```

---

baseLayout.jsp
```jsp
<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>
<tiles:insertAttribute name="title" ignore="true" />
</title>
</head>
<body>
<tiles:insertAttribute name="header" />
<hr>
<font size = "5">ウエルカム画面</font>
<hr>
<table>
<tr>
<td valign="top">
<tiles:insertAttribute name="date" />
</td>
<td valign="top">
<tiles:insertAttribute name="main" />
</td>
<td valign="top">
<tiles:insertAttribute name="search" />
</td>
</tr>
</table>
</body>
</html>
```

date.jsp
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
date
```

header.jsp
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<h1>Header</h1>
```

index.jsp
```
<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>社員認証要求画面</title>
</head>
<body>
<table>
<tr>
<td align="center" valign="middle">
社員ID、パスワードを入力して社員認証してください。<br>
一定時間操作がない場合も自動的にログアウトされるためこの画面が表示されることがあります。
<br>
<s:form method="post" action="logout">
<s:submit value="社員認証画面にGO!" />
</s:form>
</td>
</tr>
</table>
</body>
</html>
```

main.jsp
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
main
```

search.jsp
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<input type="text" value="enter keyword for search"/>
<input type="button" value="dummy search button"/>
```

tiles.jsp
```
<%@page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<tiles:insertDefinition name="Welcome"/>
```