2015-02-17 44 views
6

Tôi đang sử dụng Khởi động mùa xuân.Taglib khởi động mùa xuân

Tôi có một trang JSP với libs thẻ sau:

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>   
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags"%> 

Khi tải trang jsp của tôi, tôi nhận được lỗi sau:

The absolute uri: http://www.springframework.org/security/tags cannot be resolved in either web.xml or the jar files deployed with this application 

Đây là POM phụ thuộc của tôi:

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

Mọi đề xuất?

+0

Các loại tên miền cho 'http: // www.springframework.org/thẻ/form' là trong' mùa xuân-webmvc' jarfile; mở phụ thuộc pom của bạn để kiểm tra xem nó được kéo vào bởi 'mùa xuân-boot-khởi-web' (tôi đang sử dụng lò xo khởi động 1.2.2-SNAPSHOT và nó hoạt động nhờ đó phụ thuộc bắc cầu) –

+0

Vậy câu hỏi ở đây là liệu ' spring-boot-starter-security' cũng tự động cung cấp các phụ thuộc 'spring-security-taglibs'. Dường như nó KHÔNG - chúng cần được thêm một cách rõ ràng như là một mục phụ thuộc POM riêng biệt - trong trường hợp nào nó an toàn để khai báo mà không chỉ rõ bất kỳ phiên bản nào? ('Mùa xuân-boot-khởi-security' có lẽ đó là xử lý các phiên bản cho các lõi an ninh mùa xuân lib vv) – arcseldon

Trả lời

12

tôi thêm sau phụ thuộc:

<dependency> 
    <groupId>org.springframework.security</groupId> 
    <artifactId>spring-security-taglibs</artifactId> 
</dependency> 

Bây giờ nó hoạt động.

+0

Cách hoạt động của phiên bản trong tình huống này? Nhận lỗi: 'dependencies.dependency.version' cho org.springframework.security:spring-security-taglibs:jar bị thiếu. – arcseldon

0

người dùng Gradle với Tomcat Plugin

Nếu bạn đang nhận được lỗi này ngay cả khi bạn có sự phụ thuộc của bạn khai báo trong gradle.build

runtime "org.springframework.security:spring-security-taglibs:${springSecurityVersion}" 

Và bạn đang sử dụng các plugin Tomcat:

apply plugin: 'com.bmuschko.tomcat' 

Sau đó, bạn PHẢI chạy tác vụ gradle tomcatRunWar thay vì tomcatRun, để thư viện được bao gồm trong thùng chứa servlet của bạn.

2

Thêm phụ thuộc sau

For : <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> : 

<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-web</artifactId> 
</dependency> 


For : <%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags"%> : 

<dependency> 
    <groupId>org.springframework.security</groupId> 
    <artifactId>spring-security-taglibs</artifactId> 
</dependency> 
Các vấn đề liên quan