2013-03-28 3 views
0

У меня есть следующий код в моем файле tiles.xml.Как динамически менять плитки 3 значения атрибутов со стойками 2?

У меня есть действие Struts2, которое получает данные из базы данных и заполняется в sidebar.jsp в определении отображения. Я снова ударил другой метод того же действия для другой работы, и на этот раз я заполняю определение вида списка, но мои предыдущие данные siderbar.jsp не сохраняют его стоимость.

Я застрял на этом в течение недели, пожалуйста, помогите мне.

<definition name="baseLayout" template="/jsp/baseLayout.jsp"> 
     <put-attribute name="header" value="/jsp/header.jsp"/> 
     <put-attribute name="menu" value="/jsp/menu.jsp"/> 
     <put-attribute name="body" value="/jsp/body.jsp"/> 
     <put-attribute name="sidebar" value="/jsp/sidebar.jsp"/>  
     <put-attribute name="footer" value="/jsp/footer.jsp"/> 
    </definition> 

    <definition name="show" extends="baseLayout"> 
     <put-attribute name="body" value="/jsp/body.jsp"/> 
    </definition> 

    <definition name="listview" extends="baseLayout"> 
     <put-attribute name="body" value="/jsp/listview.jsp"/> 
    </definition> 
+0

Что именно вы пытаетесь сохранить? Показать код. –

ответ

0

Как я понимаю, sidebar.jsp - это JSP, который хранит данные для боковой панели. Проверьте значение объекта, который используется для заполнения JSP.

I again hit another method of same action for another work and this time 
I populate list view definition but my previous data of siderbar.jsp does not 
retain its value. 

Когда вы нажмете другое действие все переменные действия инициализируются снова, которые могли бы быть причиной, почему ваш sidebar.jsp не может сохранить предыдущие данные.

Одно простое решение было бы хранить данные, относящиеся к sidebar.jsp в сессии

Надеется, что это помогает :)

+0

Я думаю, что это не лучшее решение для сохранения его в сеансе. Есть ли другой способ изменить значение атрибута определения в элементах таблицы прагматически. – ammad

+0

@ammad еще не https://issues.apache.org/jira/browse/WW-3937 –

+0

Используя плитки 3, вы можете извлечь значения из запроса определения плитки с использованием диких карт и передать их в представление в качестве параметра (используемого в выражение). Оттуда вы можете условно обрабатывать свои меню. См. Http://stackoverflow.com/questions/16116142/how-to-integrate-struts-conventions-with-tiles-such-that-the-benefit-of-conventi/16116396#16116396 В этом примере показано определение плитки, которое использует regex, но не показывает, как обрабатывать меню с ним. – Quaternion