簡體   English   中英

Spring Boot錯誤消息不起作用

[英]Spring Boot error message doesn't work

我正在編寫我的第一個春季啟動應用程序而且我遇到了這個問題。 我無法向用戶顯示錯誤消息。 沒有該數據的對象不會保存在數據庫中,這沒關系。 但顯示錯誤消息是問題所在。 當我調試我得到錯誤大小= 0

這是模特

@Size(min = 1, message = "Address is invalid.")
@NotNull
@Column
private String address;

調節器

@RequestMapping(value = "/create", method = RequestMethod.POST, consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
public String createNewBusiness(@Valid @ModelAttribute("business") Business business,
                                BindingResult result, Model model) {
    model.addAttribute("userEmail", getUserEmail());
    logger.info("/business/create:" + business.toString());
    LocationResponse locationResponse = geoService.getCoords(business.getAddress());

    if (locationResponse.getStatus().equals("OK")) {
        business.setLatitude(locationResponse.getResults().get(0).getGeometry().getLocation().getLat());
        business.setLongitude(locationResponse.getResults().get(0).getGeometry().getLocation().getLng());
        business.setUserId(getUserId());

        businessService.createNew(business);

        model.addAttribute("business", business);

    } else {
        business.setAddress(null);
        model.addAttribute("business", business);
    }

    if (result.hasErrors()) {
        List<FieldError> errors = result.getFieldErrors();
        for (FieldError error : errors ) {
            System.out.println (error.getObjectName() + " - " + error.getDefaultMessage());
        }
        return "newBusiness";
    }

    return "business";
}

Thymeleaf

<div class="input-field left m-0 w-100">
    <i class="fa fa-map-marker prefix grey-text" aria-hidden="true"></i>
    <input placeholder="Address" id="inputAddress" name="address" type="text" class="validate my-0" th:required="true">
    <label th:errors="*{address}" th:if="${#fields.hasErrors('address')}" >Invalid address</label>
</div>

您是否在@SpringBootApplication定義了Validator

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class);
    }

    @Bean
    public Validator validator() {
        return new LocalValidatorFactoryBean();
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM