Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Помогите со Struts


Автор: blur 6.9.2007, 17:55
Использую Struts и Tiles, но при попытке использования тега insert результирующая страница оказывается пустой.
Код

<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
    <base href="http://localhost:8080/smax/">
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <link href="styles/style.css" rel="stylesheet" type="text/css">
<title><tiles:getAsString name="title" ignore="false"/></title>
</head>
<body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0">
    <tiles:insert attribute="header"/>
    
    <tiles:insert attribute="content"/>
    
    <tiles:insert attribute="footer"/>
    fdfsdsdfsdfsdfsdf
</body>
</html>


А это то что в tiles.xml:
Код

<tiles-definitions>
    <definition name="master.page" page="/layout_main.jsp" scope="request">
        <put name="title" value="Menu page"/>
        <put name="header" value="common/header.jsp"/>
        <put name="content" value="/test2.html"/>
        <put name="footer" value="/test3.html"/>
    </definition>
</tiles-definitions>


Tomcat ошибок никаких не выдает, а сгенерированный html вот такой:
Код


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
    <base href="http://localhost:8080/smax/">
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <link href="styles/style.css" rel="stylesheet" type="text/css">
<title>Menu page</title>
</head>
<body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0">
    

Автор: lunix 6.9.2007, 18:46
Твой struts-config содержит следущие строки?
Код

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


Я правильно понимаю, что в результирующем хтмл нет fdfsdsdfsdfsdfsdf?

Автор: blur 6.9.2007, 22:07
Цитата(lunix @ 6.9.2007,  18:46)
Твой struts-config содержит следущие строки?
Код

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


Я правильно понимаю, что в результирующем хтмл нет fdfsdsdfsdfsdfsdf?

Есть у меня там такие строки. Правда, добавлено еще вот это:
Код

<set-property property="moduleAware" value="true"/>


Кстати, вот это нормально работает:
Код

<title><tiles:getAsString name="title" ignore="false"/></title>

а вот insert не хочет почему-то  smile 


Автор: Aoli 6.9.2007, 23:50
А если
Код

<tiles:insert name="header">

вместо
Код

<tiles:insert attribute="header">

?

Автор: lunix 7.9.2007, 00:23
А зачем нужен scope="request" в
Код

<definition name="master.page" page="/layout_main.jsp" scope="request">
?

Я использовал 
Код

<!DOCTYPE tiles-definitions PUBLIC
        "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
        "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
  - там не было такого аттрибута.


Использовал <tiles:insert attribute="..."> - у меня не было проблем.


А 
Код

<put name="header" value="common/header.jsp"/>
 
не нужно заменить на 
Код

<put name="header" value="/common/header.jsp"/>

?

Автор: blur 7.9.2007, 09:57
Перепробовал уже все ваши варианты - нифига не получается. Сервер вроде видит value в теге put, но вставлять страницу не хочет.

Автор: Nikola661 19.12.2007, 09:00
Цитата(blur @  6.9.2007,  22:07 Найти цитируемый пост)
Кстати, вот это нормально работает:
Код

<title><tiles:getAsString name="title" ignore="false"/></title>

а вот insert не хочет почему-то   


У меня наоборот не работает. Когда был struts_1.2.9 работало. Перешёл на struts_1.3.8 не работает. Ругается на 
Код

<title><tiles:getAsString name="title" ignore="false"/></title>


пишет....
Код

Error:Error:line (5)Unable to load tag handler class "org.apache.struts.taglib.tiles.GetAttributeTag" for tag "tiles:getAsString"


как теперь в новой версии использовать этот тэг???
СПАСИБО!!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)