2017-02-09 8 views
0

Я использую NetBeans 8.1, у меня есть SpringBoot проект, который имеет в качестве зависимостей:Spring загрузка, Issue с ​​помощью Thymeleaf

<dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-data-jpa</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-thymeleaf</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-web</artifactId> 
    </dependency> 

    <dependency> 
     <groupId>com.h2database</groupId> 
     <artifactId>h2</artifactId> 
     <scope>runtime</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-test</artifactId> 
     <scope>test</scope> 
    </dependency> 

Они все правильно загрузили в зависимости.

Проект имеет 3-х классов Java и интерфейс для расширения JpaRepository <>

@Entity 
public class Journal implements java.io.Serializable{ 

@Id 
@GeneratedValue(strategy = GenerationType.AUTO) 
private Long id; 

private String title; 
private LocalDate created; 
private String summary; 

public Journal() { 
} 

public Journal(String title, LocalDate created, String summary) { 
    this.title = title; 
    this.created = created; 
    this.summary = summary; 
} 
// getters and setters 
} 

@Controller 
public class JournalController { 

@Autowired 
JournalRepository repo; 

@RequestMapping("/") 
public String index(Model model){ 
    model.addAttribute("journal", repo.findAll()); 
    return "index"; 
} 

} 

@SpringBootApplication 
public class SpringBootJournalApplication { 

@Bean 
InitializingBean saveData(JournalRepository repo) { 
    return() -> { 
     repo.save(new Journal("text1", LocalDate.now(), "date1")); 
     repo.save(new Journal("text2", LocalDate.now(), "date2")); 
     repo.save(new Journal("text3", LocalDate.now(), "date3")); 
     repo.save(new Journal("text4", LocalDate.now(), "date4")); 
    }; 
} 

public static void main(String[] args) { 
    SpringApplication.run(SpringBootJournalApplication.class, args); 
} 
} 

public interface JournalRepository extends JpaRepository<Journal, Long>{} 

Под SRC/основные/ресурсы -> Шаблоны У меня есть файл index.html с тегом -html LANG = Xmlns "анг-США": й = "http://www.thymeleaf.org -:

<html lang="en-US" xmlns:th="http://www.thymeleaf.org"> 
<head></head> 
<body> 
    <div class="container"> 
     <h1>Spring Boot Journal</h1> 
     <ul class="timeline"> 
      <div th:each="entry,status : ${journal}" > 
       <li th:attr="class=${status.odd}?'timeline-inverted':''" > 
        <div class="tl-circ"></div> 
        <div class="timeline-panel"> 
         <div class="tl-heading"> 
          <h4> <span th:text="${entry.title}">TITLE</span> </h4> 
          <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i> 
            <span th:text="${entry.createdAsShort}">CREATED</span> </small></p> 
         </div> 
         <div class="tl-body"> 
          <p> <span th:text="${entry.summary}">SUMMARY</span> </p> 
         </div> 
        </div> 
       </li> 
      </div> 
     </ul> 
    </div> 
</body> 

на теге HTML я имею ошибку: атрибут с локальным именем «Xmlns: ой не сериализации в XML 1.0. Если я пытаюсь запустить проект и перейти на страницу http://localhost:8080/ У меня есть Whitelabel Error Page и в консоли Netbeans я есть org.springframework.expression.spel.SpelEvaluationException: EL1008E: Свойство или поле «createdAsShort» не может можно найти на объекте типа «com.example.Journal» - может быть, не публично?

ответ

1

Ошибка самообслуживания достаточно: нет такого поля createdAsShort в классе com.example.Journal. Согласно тому, что вы показали определенно, в вашем классе нет такого поля.

+0

Спасибо, я следовал примеру из книги, я удалил эту строку, и она работает, но из файла .html у меня всегда есть «Атрибут с локальным именем» xmlns: th не является сериализуемым как XML 1.0 »в html и в каждом th :, также я не могу использовать предложения в th: теги, подобные i, в jsf xhtml с «xmlns: h =» http://xmlns.jcp.org/jsf/html ». Это должно произойти? Это проблема NetBeans? Потому что работа без предложений/автозаполнения может быть проблемой для меня. – Maver