2016-09-25 11 views
0

私はSpring BootとThymeleafで遊びたいと思っていました。したがって私はSpring InitialzrでSpring Boot Appをロードし、WebとThymeleafを依存関係に設定しました。 悲しいことに、私は静的なHTMLのみ動的HTMLを解決することはできません。Thymeleafはスプリングブートとコントローラ経由でモデルを解決しません

localhost:8080/を要求し、私はこれを受け取る:The message is:${message}

ゴナ私のセットアップを誇示するためにいくつかのコードを提供(可能な限り最小限のコード)

WebApp.java

package com.example; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.context.ApplicationContext; 

import java.util.Arrays; 

@SpringBootApplication 
public class WebApp { 

    public static void main(String[] args) { 
    ApplicationContext ctx = SpringApplication.run(WebApp.class, args); 
    } 
} 

HelloControllerを。 java

package com.example; 

import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.stereotype.Controller; 
import org.springframework.ui.Model; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RestController; 
import org.springframework.web.method.annotation.ModelFactory; 
import org.springframework.web.servlet.ModelAndView; 
import org.springframework.web.servlet.View; 

@Controller 
public class HelloController { 

    @RequestMapping("/") 
    public ModelAndView handler() { 
    ModelAndView mav = new ModelAndView("twitter"); 
    mav.addObject("message", "message"); 
    return mav; 
    } 
} 

twitter.html

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> </meta> 
    <title>Test</title> 
</head> 
<body> 
The message is:${message} 

</body> 
</html> 

pom.mxl

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.example</groupId> 
    <artifactId>demo</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <name>demo</name> 
    <description>Demo project for Spring Boot</description> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.4.1.RELEASE</version> 
     <relativePath/> <!-- lookup parent from repository --> 
    </parent> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
     <java.version>1.8</java.version> 
    </properties> 

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

     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-thymeleaf</artifactId> 
      <version>1.4.1.RELEASE</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
    </build> 


</project> 

答えて

1

私はあなたのビューを変更する必要があります推測:

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta charset="UTF-8"> </meta> 
     <title>Test</title> 
    </head> 
    <body> 
     The message is: <span th:text="${message}"></span> 
    </body> 
</html> 
+0

待ち...教えていません私はthymleleaf略語のためのtaglibです。私はいつもhtmlで使われている "テーブルヘッダー"の略だと思っていました。私はHTML tbhで非常に小さな経験があります。 – xetra11

+0

[Thymeleafのドキュメント](http://www.thymeleaf.org/#natural-templates)を読んでください:) – sanluck

+0

そうですね、私はそれを読んでいますが、例の表を使用して以来、私は "th"がタイレイフ特有のキーワード – xetra11

関連する問題