Thymeleaf po dodaniu navbara z boostrapa przestaje działać

0

Witam,
Mam problem z silnikiem szablanów, tzn. działał dopóki nie dodałem navbara ze strony bootstrapa.

Struktura
Capture.PNG
Błąd

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Thu Apr 21 10:14:11 CEST 2016
There was an unexpected error (type=Internal Server Error, status=500).
Exception parsing document: template="/fragments/header", line 48 - column 19 (layout:11)

org.xml.sax.SAXParseException: The element type "input" must be terminated by the matching end-tag "</input>".
package com.app.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * Created by Marcin on 21.04.2016.
 */
@Controller
@RequestMapping("/")
public class IndexController {

    @RequestMapping(value = {"/", "home"})
    public String Index(){
        return "index";
    }
}

layout.html

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


  <head>
    <!--  Each token will be replaced by their respective titles in the resulting page. -->
    <title layout:title-pattern="$DECORATOR_TITLE - $CONTENT_TITLE">FrameworkOnly</title>
    <link th:replace="/fragments/style"/>
  </head>
  <body>
    <div th:replace="/fragments/header"></div>
    
    <div class="container" style="margin-top:80px;">
      <div layout:fragment="content"></div>
    </div>
    
    <div th:replace="/fragments/footer"></div>
    
    <div th:replace="/fragments/js"></div>
  </body>
</html>
<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">
<html xmlns:th="http://www.thymeleaf.org" xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
      layout:decorator="layout">
<head>
    <title>Spring Boot CRUD Example</title>
</head>
<body>
<div layout:fragment="content">

		   <p>
               Strona główna
           </p>
</div>
</body>
</html>

header.html

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<!--<nav class="navbar navbar-inverse navbar-fixed-top">-->
<!--<div class="container">-->
<!--<p class="navbar-text">CRUD Operation using  Spring Boot + Spring Data JPA + ThymeLeaf + HikariCP + MySQL</p>-->
<!--</div>-->
<!--</nav>-->

<nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container">
        <!-- Brand and toggle get grouped for better mobile display -->
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
                    data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="#">Brand</a>
        </div>

        <!-- Collect the nav links, forms, and other content for toggling -->
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav">
                <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
                <li><a href="#">Link</a></li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
                       aria-expanded="false">Dropdown <span class="caret"></span></a>
                    <ul class="dropdown-menu">
                        <li><a href="#">Action</a></li>
                        <li><a href="#">Another action</a></li>
                        <li><a href="#">Something else here</a></li>
                        <li role="separator" class="divider"></li>
                        <li><a href="#">Separated link</a></li>
                        <li role="separator" class="divider"></li>
                        <li><a href="#">One more separated link</a></li>
                    </ul>
                </li>
            </ul>
            <form class="navbar-form navbar-left" role="search">
                <div class="form-group">
                    <input type="text" class="form-control" placeholder="Search">
                </div>
                <button type="submit" class="btn btn-default">Submit</button>
            </form>
            <ul class="nav navbar-nav navbar-right">
                <li><a href="#">Link</a></li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
                       aria-expanded="false">Dropdown <span class="caret"></span></a>
                    <ul class="dropdown-menu">
                        <li><a href="#">Action</a></li>
                        <li><a href="#">Another action</a></li>
                        <li><a href="#">Something else here</a></li>
                        <li role="separator" class="divider"></li>
                        <li><a href="#">Separated link</a></li>
                    </ul>
                </li>
            </ul>
        </div>
    </div><!-- /.navbar-collapse -->
    </div><!-- /.container-fluid -->
</nav>
</body>
</html>
1

Jeden z ostatnich divow w tagu nav nie ma tagu otwierajacego ---> wywal jeden ostatni div.

0

@Swr prawie pomogło. Znaczy strona się pojawia się, jest navbar, ale boostrap dropdown niedziała (nie pojawia się menu rozwiajne). Sprawdzałem na Google Chrome i Microsoft Edge.

Link:
https://github.com/giecmarcin/CinemaT

1

Nie wiem dokladnie co ale widze na pewno, ze masz z 5 tagow HTML i BODY w takim wytworzonym dokumencie ;) nie jest to na pewno poprawne.

Jak includujesz taki header.html / footer.html / itp. to one nie powinny miec tagow html, head, body, te tagi powinny byc w wynikowym dokumencie raz, opakowujac reszte contentu.

0

Do tego wyżej, brakowało jeszcze:

<script th:src="@{/webjars/bootstrap/3.3.6/js/bootstrap.min.js}"></script><code>. Dzięki za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1