Spring boot: Как преобразовать тимианский лист в jsp - PullRequest
0 голосов
/ 21 октября 2018

Недавно я следовал учебному пособию по аутентификации и авторизации с использованием весенней загрузки.Он работает нормально, и я хочу интегрировать его в свой существующий проект.Учебное пособие, которому я следовал, написано в тимилеф, а мой текущий проект в jsp.Я попытался выполнить поиск в Интернете, но он выдает ошибки.

Это мой код:

Контроллер

@RequestMapping(value = { "/","/welcome" }, method = RequestMethod.GET)
public ModelAndView test() {
    ModelAndView model = new ModelAndView("welcomePage");
    model.addObject("title","Welcome");
    model.addObject("message","This is welcome page");
    return model;
}

Thymeleaf

<a th:if="${#request.userPrincipal != null}" th:href="@{/logout}">Logout</a>

JSP

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

    <div>
        <a href="/">Home</a> | &nbsp; 
        <a href="/userInfo">User Info </a> | &nbsp; 
        <a href="/admin">Admin</a> | &nbsp; 

        <c:if test="${pageContext.request.userPrincipal != null}">
            <h2>Logout</h2> 
            <br>
        </c:if>


        ${pageContext.request.userPrincipal}



    </div>

</body>
</html>

pom.xml

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-security</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-test</artifactId>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
    </dependency>
    <dependency>
        <groupId>jstl</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>

application.properties

enter image description here

enter image description here

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

/WEB-INF/jsp/_menu.jsp (line: [18], column: [2]) According to TLD or attribute directive in tag file, attribute [test] does not accept any expressions

Я впервые использую это.Надеюсь, вы могли бы помочь мне.Большое спасибо !!

1 Ответ

0 голосов

Используйте это в вашем jsp вместо того, что у вас есть:

"<% @ taglib prefix =" c "uri =" http://java.sun.com/jsp/jstl/core"%> "

Без кавычек

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