Как удалить плитку в плитках Apache для определенного вида?

Я хочу знать, как удалить плитку из вида. Мой основной вид выглядит так

Конфигурация плитки состоит из 4 частей: заголовок, меню, тело и нижний колонтитул.

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

Но я хочу иметь возможность, если я нажму на ссылку в меню, которая приведет меня к странице, которая имеет только заголовок и тело (без меню или нижнего колонтитула).

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

И это мой вопрос: как убрать меню и нижний колонтитул из вида? Мой вопрос останавливается здесь.

Поскольку документации по плиткам не так много, я мог бы найти пошаговый пример для кого-то еще, кто пытается получить рабочий пример использования Apache Tiles и Spring MVC с использованием Spring Tool Suite (моя версия СТС 3.2.0).

ШАГИ Следовать, чтобы создать простой сайт с использованием STS

Создать новый проект STS

Файл >> Новый >> Spring Template Project >> Spring MVC Project

Выбрать "Весенний MVC Project » вариант

Дайте вашему проекту имя и пакет верхнего уровня

Это создаст проект, похожий на ниже

Измените POM для использования SPRING 3.2.0.RELEASE

От:

3.1.1.RELEASE

Для того, чтобы:

3.2.0.RELEASE
Добавьте следующие зависимости в файл POM, чтобы включить зависимости Apache Tile


    org.apache.tiles
    tiles-api
    3.0.1


    org.apache.tiles
    tiles-core
    3.0.1


    org.apache.tiles
    tiles-jsp
    3.0.1


    org.apache.tiles
    tiles-servlet
    3.0.1


    org.apache.tiles
    tiles-template
    3.0.1
 
Изменить "сервлет-context.xml» использовать TilesViewResolver вместо встроенного по умолчанию InternalViewResolver
Добавьте ссылку, чтобы узнать, где настроены плитки

     

Теперь укажите вид - файлы JSP, которые будут использоваться для определения представлений ... например верхний колонтитул, меню, нижний колонтитул и тело (это может быть фактический контент, и обычно у вас будет более 1 тела в зависимости от того, что пользователь нажал в меню) - макет будет похож на самое первое изображение в этом посте.

Файлы JSP, созданные в папке просмотра, в каждом из которых есть содержимое

header.jsp

This is the header

footer.jsp

<p>This is the footer</p>

content1.jsp

This is content page 1
<p>Blah blah content 1</p>

content2.jsp

This is content page 2
<p>Blah blah content 2</p>

menu.jsp

Menu
    <a href="">Go to home page</a><br>
    <a href="page1">Display page 1</a><br>
    <a href="page2">Display page 2</a>
Когда проект создается, он создает контроллер по умолчанию, который называется «HomeController.java», Это то, что используется, чтобы определить, куда идти дальше при нажатии на пункты меню. Если вы откроете домашний контроллер и измените его на следующий
package com.stp.myapp;
import java.util.Locale;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
/**
 * Handles requests for the application home page.
 */
@Controller
public class HomeController {
    /**
     * The request mapping has a value. That is what we are 
* requesting for. When opening the site it will request the main 
* page or the index page. The “/” indicates it is the index page.
* In this simple example we simply return the new ModalAndView with 
* the page in the view folder. In This case it is the mainPage.
* The mainPage is the reference of what is configured in the 
* apache tiles configuration – not the actual page that will be 
* displayed. 
     */
        @RequestMapping(value = "/", method = RequestMethod.GET)
        public ModelAndView home(Locale locale, Model model) {
        return new ModelAndView("mainPage");
        }

        /**
         * The request mapping is for page1 (page1 is the value from the menu.
         */

        @RequestMapping(value = "/page1", method = RequestMethod.GET)
        public ModelAndView viewArticle(Locale locale, Model model) {
        return new ModelAndView("displayPageContent1");
        }

        @RequestMapping(value = "/page2", method = RequestMethod.GET)
        public ModelAndView viewEmployees(Locale locale, Model model) {
        return new ModelAndView("displayPageContent2");
    }

}
Теперь давайтенастроить плитки

Создать "tiles.xml» файл с

 
    




    
    
        
        
        
        
        
    

     
    
    
    
    
        
        
    

    
        
        
    

     
        
        
    


Файл tile.xml имеет «mainTemplate.jsp» определяется как базовое определение. Создать файл «mainTemplate.jsp» который имеет основной HTML-макет. Файлы имеют «плитка: insertAttribute» который определяет части базовой компоновки, которые могут быть переопределены в каждом представлении.







    




    
        
            
        
    
    
        
            
        
        
            
        
    
    
        
            
        
    



В конце вы должны получить файловую структуру, похожую на эту

Ответы на вопрос(2)

Ваш ответ на вопрос