2017-07-07 88 views
2

我有一個以jsp爲視圖的spring mvc項目項目。我現在需要使用百里香。如果我不將管理器對象放到ModelMap中,舊的jsp項目將自動忽略管理器對象。如何讓thymeleaf忽略空對象?

<form class="form-horizontal" method="post" action="<c:url value=" /${action} " />"> 
<input type="hidden" name="id" value="${manager.id}"> 
.... 
<div class="form-group"> 
    <label class="col-sm-2 control-label">email</label> 
    <div class="col-sm-8"> 
     <input type="text" name="email" value="${manager.email}" class="form-control1" placeholder="Email"> 
    </div> 
</div> 
<div class="form-group"> 
    <label class="col-sm-2 control-label">phone</label> 
    <div class="col-sm-8"> 
     <input type="text" name="mobile" value="${manager.mobile}" class="form-control1" placeholder="phone number"> 
    </div> 
</div> 
... 
<div class="form-group"> 
    <div class="col-sm-8 col-sm-offset-2 "> 
     <button class="btn btn-success1 btn-block">sumbit</button> 
    </div> 
</div> 

</form> 

但是,如果我寫的

 <input type="text" name="email" th:value="${manager.email}" class="form-control1" placeholder="Email"> 

Thymeleaf會給出一個錯誤,我知道我們可以檢查對象

<input type="text" name="mobile" th:value="${manager? manager.mobile : ''}" class="form-control1" placeholder="phone number"> 

我必須軟件寫檢查每個人的?

回答

2

有一個安全的導航&春季EL,你可以在Thymeleaf中使用的elvis操作符。這是描述它的docs 。在你的情況下,像下面一樣使用它,它將返回null而不是拋出異常。

${manager?.email} 
+0

謝謝,它解決了問題 – shuan