Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

intellij thymeleaf Namespace th is not bound

I am using IntelliJ IDEA and I have a problem with thymeleaf namespaces. I have created employee form which I am including into other templates so I did not specified namespaces but it works fine when I run my application. Is there any way to change this behaviour. I like to have an auto-complete :-)

Namespace 'th' is not bound example:

Namespace 'th' is not bound

like image 339
Purzynski Avatar asked Sep 03 '15 19:09

Purzynski


3 Answers

Also, if you are using Spring you should use the following:

<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
  <head>
     <title>Hello</title>
  </head>
  <body>
  </body>
</html>

The difference is in the DOCTYPE. See Intellij Idea: Thymeleaf namespace unkown

like image 74
Grigory Kislin Avatar answered Nov 05 '22 20:11

Grigory Kislin


To enable auto completion and IDE support for Thymeleaf, make sure you have enabled the Thymeleaf plugin.

File -> Other Settings -> Config Plugins -> tick Thymeleaf

screenshot of plugin window

Also add the namespace in the root tag

<html .... xmlns:th="http://www.thymeleaf.org">

like image 13
Faraj Farook Avatar answered Nov 05 '22 22:11

Faraj Farook


There's no harm defining your fragments in a well formed document (including a html, head, body etc). In fact this is how the Thymeleaf Documentation does it.

This way you can specify the thymeleaf namespace so you get autocomplete, and you can also view your fragments by themselves in the browser, which is useful for prototyping.

like image 7
Andrew Avatar answered Nov 05 '22 21:11

Andrew