2017-06-01 41 views
0

沒有與隱藏的值字段的表單:Thymeleaf:不能通過隱藏理論值的預定義的值:字段

<input type = "hidden" th:field="*{key}" value="keyapp" /> 
<input type = "hidden" th:field="*{secret}" value="supersecret" /> 

的問題是,這些字段爲控制器空通過。有沒有一種方法可以通過預定義的HTML值傳遞thymeleaf字段?

感謝和親切的問候, Deniss

更新時間:

th:object定義:

<form th:action="@{..//do-login}" method="POST" modelAttribute="authEntity" th:object="${authEntity}"> 

AuthEntity.class

public class AuthEntity { 

    private String key; 
    private String secret; 
    private String scope; 
    private String grantType; 
    private String username; 
    private String password; 
    ... // getters & setters omitted // ... 

* Controller.class

@RequestMapping(value = "/do-login", method = RequestMethod.POST, produces = "application/json") 
    public void doLogin (@ModelAttribute("authEntity") final AuthEntity authEntity, 
         final Model model, 
         HttpServletResponse servletResponse, HttpSession httpSession) throws IOException { 
     log.info("Application Key: {}, Secret: {}", authEntity.getKey(), authEntity.getSecret()); 
+0

您如何定義表單?你定義了什麼'th:object'?而且這個對象有一個'key'和'secret'屬性?如果你已經把這些值放入ModelMap中,那麼你應該用'$ {key}'和'$ {secret}'引用它們' –

+0

@ThomasPawlitzki看到上面的帖子已經更新。另請注意,所有其他參數只需使用'th:field'即可正確傳遞。 –

+0

您是否設置了字段'key'和'secret'?你如何嘗試檢索MVC Handler中的值? –

回答

1

我碰到隱藏輸入同樣的問題,並沒有發現任何解決方案,但是,而是採用日:字段中,設置「ID」和「名稱」屬性手動和省略場:場。

+0

但是,通過的價值呢? –

+0

如果你保留'value'屬性,它會被傳遞(至少對我來說:))。 IIRC在提交時傳遞一個名稱形式的所有內容,但我可能會在這裏混合使用名稱和標識。 – N4zroth

+0

春天和百里香?你確定嗎?)) –