2
我不知道爲什麼這不起作用。基本上下面的代碼片段工作正常,除非c:if
爲真。重置JSTL值
如果if語句爲true,那麼clientId應該手動設置爲1.這確實有效,但出於某種原因,它不會獲取clientProps。
如果ClientId = 1從會話變量'user'中獲取,ClientId = 1會正常工作。所以clientProps應該有一些東西在現貨1. 任何線索?如果用戶對象存在
<c:set var="clientId" value="${sessionScope['user'].client.clientId}"/>
<c:if test="${empty sessionScope['user'].client.clientId}">
True
<c:set var="clientId" value="1" />
</c:if>
<c:set var="clientProperties" value="${clientProps[clientId]}"/>
<c:set var="clientLogo" value="${clientProperties.clientLogo}"/>
<c:set var="clientURL" value="${clientProperties.clientWebURL}" />
clientId = ${clientId}
clientLogo = ${clientLogo}
clientURL = ${clientURL}
結果:
clientId = 1 clientLogo = /images/logos/Logo1.png clientURL = http://www.xxx.xxx
結果如果用戶對象沒有按存在:
True clientId = 1 clientLogo = clientURL =
在這兩種情況下'clientId'的類型是否相同? –
這是從'用戶'對象中獲取的Long。它是什麼時候我手動設置它我不知道.. – user829237
你嘗試設置它很長?不知道它是否能解決這個問題。 –