<s:if test="canSubscribe == 'Y'">能 </s:if> <s:else>不能 </s:else> 单字符需加.toString() .

首先这样写是没错的:<s:if test="canSubscribe == 'Y'">能 </s:if>  
  <s:else>不能 </s:else>  


但是,问题在于在struts2中,如果你的==号右方就一个字母比如我的是'y',那么,Struts2会认为这是在对比一个char,会出现例外的,因为canSubscribe在anction中是String。解决方法是这样写:<s:if test="canSubscribe == 'Y'.toString()">能 </s:if>  
  <s:else>不能 </s:else>  
当然,如果你对比的是多个字母那就没问题了,比如:<s:if test="canSubscribe == 'Yes'">能 </s:if>  
  <s:else>不能 </s:else>  
就不用写.toString()了。

原文地址:https://www.cnblogs.com/LLLONG/p/2814224.html