powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблема с tiles
6 сообщений из 6, страница 1 из 1
Проблема с tiles
    #34867552
Don VinNi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здорова народ! Помогите разобратся с проблемой. Использую Struts 1.3.8, idea-5.1.2. Так вот что я имею:

struts-config.xml:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config  PUBLIC 
		"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
		"http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd">

<struts-config>

............
<action path="/login" type="com.nihol.yeisvo.action.login.LoginAction" name="login"> 
            <forward name="success" path="/users.do"/>
            <forward name="fail" path="/index.jsp"/>
 </action>

<action path="/users" type="org.apache.struts.actions.ForwardAction" parameter="user.mainLayout"/>
............

<plug-in className="org.apache.struts.tiles.TilesPlugin">
<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml"/>         
</plug-in>
</struts-config>

tiles-defs.xml:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions  PUBLIC 
		"-//Apache Software Foundation//DTD Tiles Configuration 1.3//EN"
		"http://jakarta.apache.org/struts/dtds/tiles-config_1_3.dtd">
<tiles-definitions>
    <defination name="mainLayout" template="/users/mainLayout.jsp">
        <put name="header" value="/users/header.jsp"/>
        <put name="menu" value="/users/menu.jsp"/>        
        <put name="body" value="/users/body.jsp"/>
        <put name="bottom" value="/users/bottom.jsp"/>
    </defination>
    <defination name="user.mainLayout"  extends ="mainLayout">
        <put name="body" value="/users/title.jsp"/>
    </defination>
</tiles-definitions>
...
Рейтинг: 0 / 0
Проблема с tiles
    #34867556
Don VinNi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sorry! Случайно нажал на enter! Так вот продолжу:

mainLayout.jsp

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles"%>
<html>
  <head><title>Simple jsp page</title></head>
  <body>
  <table>
      <tr>
          <td colspan="2" height="20%" width="100%">
              <tiles:insert attribute="header"/>
          </td>
      </tr>
      <tr>
          <td height="70%" width="20%">
               <tiles:insert attribute="menu"/>
          </td>
          <td height="70%" width="80%">
               <tiles:insert attribute="body"/>
          </td>
      </tr>
      <tr>
          <td colspan="2" height="10%" width="100%">
                <tiles:insert attribute="bottom"/>         
          </td>
      </tr>
  </table>
  </body>
</html>

когда экшен /login происходить и возрашает success выводится следующая ошибка:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling  this  request.

exception 
javax.servlet.ServletException: Path user.mainLayout does not start with a "/" character
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java: 286 )
	org.apache.struts.action.ActionServlet.process(ActionServlet.java: 1913 )
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java: 462 )
	javax.servlet.http.HttpServlet.service(HttpServlet.java: 709 )
	javax.servlet.http.HttpServlet.service(HttpServlet.java: 802 )
	com.nihol.yeisvo.utils.filter.Filter.doFilter(Filter.java: 22 )

root cause 
javax.servlet.ServletException: Path user.mainLayout does not start with a "/" character
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java: 286 )
	org.apache.struts.action.ActionServlet.process(ActionServlet.java: 1913 )
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java: 462 )
	javax.servlet.http.HttpServlet.service(HttpServlet.java: 709 )
	javax.servlet.http.HttpServlet.service(HttpServlet.java: 802 )
	org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java: 113 )
	org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java: 96 )
	org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java: 54 )
	org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java: 51 )
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java: 190 )
	org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java: 304 )
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java: 190 )
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java: 283 )
	org.apache.struts.action.ActionServlet.process(ActionServlet.java: 1913 )
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java: 462 )
	javax.servlet.http.HttpServlet.service(HttpServlet.java: 709 )
	javax.servlet.http.HttpServlet.service(HttpServlet.java: 802 )
	com.nihol.yeisvo.utils.filter.Filter.doFilter(Filter.java: 22 )

В чем может быть проблема?
...
Рейтинг: 0 / 0
Проблема с tiles
    #34868376
Фотография Софтверный проктолог
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если попробовать так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<defination name=".mainLayout" template="/users/mainLayout.jsp">
        <put name="header" value="/users/header.jsp"/>
        <put name="menu" value="/users/menu.jsp"/>        
        <put name="body" value="/users/body.jsp"/>
        <put name="bottom" value="/users/bottom.jsp"/>
    </defination>
    <defination name=".user.mainLayout"  extends =".mainLayout">
        <put name="body" value="/users/title.jsp"/>
    </defination>

Переделав и struts соответственно.
...
Рейтинг: 0 / 0
Проблема с tiles
    #34868382
Фотография Софтверный проктолог
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему defination?
Это армянская версия Tiles?
А что вы хотели сказать выражением parameter="user.mainLayout" в

Код: plaintext
1.
<action path="/users" type="org.apache.struts.actions.ForwardAction" parameter="user.mainLayout"/>
...
Рейтинг: 0 / 0
Проблема с tiles
    #34869843
Don VinNi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Софтверный проктологА почему defination?
Это армянская версия Tiles?
А что вы хотели сказать выражением parameter="user.mainLayout" в

Код: plaintext
1.
<action path="/users" type="org.apache.struts.actions.ForwardAction" parameter="user.mainLayout"/>


После /login экшен, если все верно он перенаправляет запрос на /users а тут мне просто надо открыть jsp который в отличи от mainLayout в user.mainLayout будет содержатся другая информация в "body". Название jsp страничек я взял произвольно для примера можно не обращать внимание.
...
Рейтинг: 0 / 0
Проблема с tiles
    #34870081
Фотография Софтверный проктолог
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Don VinNiНазвание jsp страничек я взял произвольно для примера можно не обращать внимание.
Дело не в названиях страничек. Дело в названии дефинишенов.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблема с tiles
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]