điều này phải là một cách dễ dàng nhưng tôi không thể tìm thấy bất kỳ giải pháp cho nó.Thymeleaf + Boot + AngularJS chỉ thị lỗi phân tích cú pháp
Tôi đang sử dụng Spring Boot 1.0.2 với Thymeleaf trên Jetty để hỗ trợ ứng dụng AngularJS của tôi. Nhưng trình phân tích cú pháp đưa ra một ngoại lệ khi các chỉ thị thuộc tính được sử dụng.
pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
<version>1.9.20</version>
</dependency>
Thymeleaf cấu hình
@Configuration
public class ThymeleafConfig {
@Bean
public ServletContextTemplateResolver templateResolver() {
ServletContextTemplateResolver resolver = new ServletContextTemplateResolver();
resolver.setPrefix("/templates/");
resolver.setSuffix(".html");
resolver.setTemplateMode("LEGACYHTML5");
resolver.setCacheable(false);
return resolver;
}
@Bean
public ResourceBundleMessageSource messageSource() {
ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
messageSource.setBasename("messages");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
}
Thymeleaf đang làm việc ok nhưng nó có một vấn đề với chỉ thị thuộc tính như thế này ví dụ Bootstrap UI:
<div class="btn-group" dropdown is-open="true">
<button type="button" class="btn btn-primary dropdown-toggle">Button dropdown <span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li class="divider"></li>
<li><a href="#">Separated link</a></li>
</ul>
</div>
tôi nhận được lỗi này
org.xml.sax.SAXParseException: Attribute name "dropdown" associated with an element type "div" must be followed by the ' = ' character.
Tôi có thể tinh chỉnh Thymeleaf để chấp nhận các loại thuộc tính đó ở đâu?
--- EDIT ---
Tôi đã thêm trình phân tích cú pháp nekoHTML cho LEGACYHTML5 nhưng vẫn không có kết quả.
Tôi không thực sự là chuyên gia khởi động, nhưng không phải là "thả xuống" một lớp CSS? –
Không, đó là một chỉ thị AngularJS tạo ra trình đơn thả xuống được chỉ định. – Reeebuuk
Tôi không phải là người dùng góc cạnh, nhưng tôi tự hỏi tại sao nó yêu cầu bạn viết xml không đúng định dạng. Có lẽ 'dropdown =" true "' sẽ hoạt động? –