Проблема сопоставления моих JSP в приложении SpringBoot - PullRequest
0 голосов
/ 13 марта 2020

Прежде всего, у меня есть заголовок и нижний колонтитул, которые будут отображаться на всех моих jsp страницах. Целевая страница отображается как "/". Первая ссылка в нижнем колонтитуле отображается как "/ recrutement". Вторая ссылка в нижнем колонтитуле отображается как «/ service». Внутри набора. jsp (первая ссылка нижнего колонтитула) у меня есть ссылка, сопоставленная с "/ annonce". Когда я нахожусь на Annonce. jsp URL-адрес http://localhost: 8080 / набор / Annonce . пока здесь все нормально. Но в то время как на annonce. jsp, если я нажимаю на ссылку второго нижнего колонтитула, URL заканчивается как http://localhost: 8080 / recrutement / annonce / service вместо просто http://localhost: 8080 /service...

Я думаю, что в моем отображении может быть ошибка? или возможно с viewResolver? Спасибо за вашу помощь

Все 3 заинтересованных контроллера:


@Controller
@RequestMapping(path = "/")
public class AccueilController {

    @GetMapping(path = "/")
    public String showAccueil(Model theModel, HttpSession session) {
        ...
        return "index";
    }
}





@Controller
@RequestMapping("/recrutement")
public class RecrutementController {

    @Autowired
    private JobOfferRepository jor;

    @GetMapping(path = "")
    public String showRecrutement(Model theModel) {
        List<JobOffer> ajo = jor.findAll();
        theModel.addAttribute("jobOfferList", ajo);
        return "recrutement";
    }


    @GetMapping(path = "/{id}")
    public String showJobOffer(Model theModel, @PathVariable int id){
        JobOffer jo = jor.findById(id).get();
        theModel.addAttribute("jobOffer", jo);
        return "recrutementAnnonce";
    }
}






@Controller
@RequestMapping("/")
public class StaticPagesController {

    @GetMapping(path = "/services")
    public String showServices() {
        return "services";
    }
}

Мой нижний колонтитул html:


</div> <--- opening div located at end of header


    <div class="middle" >
        <div class="block">
            <span class="title">Services Orvif</span>
            <ul>
                <li><a href="services">Services</a></li>
            </ul>
        </div>
        <div class="block">
            <span class="title">Nous contacter</span>
            <ul>
                <li><a href="recrutement">Recrutement</a></li>
            </ul>
        </div>
      </body>
</html>

набор jsp:


<%@ include file="header.jsp" %>
<h1 id="carreerTitle">Carri&egrave;re</h1>

<ul id="listJob">
    <c:forEach items="${jobOfferList}" var="career">
        <li>
            <p>${career.jobTitle}</p>
            <a href="/recrutement/${career.id}" class="button red-blue">Voir l'annonce</a>
        </li>
    </c:forEach>
</ul>

<%@ include file="footer.jsp" %>

recrutementAnnonce jsp (на мой взгляд, ничего интересного, кроме включенного нижнего колонтитула внизу:


<%@ include file="header.jsp" %>
<div id="descriptionJob">
    <h2>
        Description du poste
    </h2>
    <p>${jobOffer.jobDescription}</p>
</div>
<div id="listMissionJob">
    <h2>Vos missions</h2>
    <ul>
        <c:forEach items="${jobOffer.jobMissionsById}" var="mission">
            <li><span class="circleRed"></span>${mission}
            </li>
        </c:forEach>
    </ul>
</div>

<%@ include file="footer.jsp" %>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...