Ich habe folgendes Problem:Spring MVC & ThymeLeaf: th: Text zeigt nicht Controllers bereitgestellt Inhalt
Mein Controller ein Hibernate DAO verwendet, um Daten aus einer Datenbank abgerufen werden. Jetzt möchte ich diese Daten auf einer Website anzeigen. Der Abruf funktioniert einwandfrei, aber irgendwie werden die abgerufenen Daten nicht im Feld "th: text" angezeigt. Hier
ist der kritische Teil in HTML-Datei:
<div class="item active"
th:each="article : ${getAllArticles}">
<div class="carousel-content">
<div>
<!-- Controller generated header -->
<h3 class="article_header" th:text="${hp_header}"></h3>
<p>
<small>Android, EU, Google</small>
</p>
<p th:text="${hp_content}">Lorem ipsum dolor
sit amet, consetetur sadipscing elitr, sed diam nonumy
eirmod tempor invidunt ut labore et dolore magna aliquyam
erat, sed diam voluptua. At vero eos et accusam et justo
duo dolores et ea rebum. Stet clita kasd gubergren, no sea
takimata sanctus est Lorem ipsum dolor sit amet.</p>
<div class="button_area">
<a class="btn btn-large btn-info" href="detailview.html">
Details </a>
</div>
</div>
</div>
</div>
<!-- END ITEM -->
Und hier ist der zugehörige Controller-Klasse:
@Controller
public class Indexcontroller {
private Article prioArticle;
@RequestMapping("/")
public String index(Model model) {
fetchHighPrioContent();
model.addAttribute("hp_header", prioArticle.getHeadLine());
System.out.println(prioArticle.getHeadLine());
model.addAttribute("hp_content", prioArticle.getContent());
System.out.println(prioArticle.getContent());
return "index";
}
private void fetchHighPrioContent(){
//get highest rated article
prioArticle = ArticleHandler.getInstance().retriveByRank(1).get(0);
System.out.println("DEBUG: " + prioArticle.getArtID() + " " + prioArticle.getHeadLine());
}
}
Für den Anfang ist Ihr Controller fehlerhaft (versuchen Sie, über 10 Anfragen kommen und was würde der Wert von "prioArticle" sein? Als nächstes gibt es keine "getAllArticles" hinzugefügt werden das Modell, also gibt es nichts, um darüber zu iterieren. –