Struts2 / OGNL ページでは、条件に応じて任意のタイプの Bean をオブジェクトに割り当てることは可能ですか?
例えば、
<s:if test"%{customer != null}">
<s:set var="someobject" value="customer">
</s:if>
<s:else>
<s:set var="someobject" value="user">
</s:else>
Struts2 / OGNL ページでは、条件に応じて任意のタイプの Bean をオブジェクトに割り当てることは可能ですか?
例えば、
<s:if test"%{customer != null}">
<s:set var="someobject" value="customer">
</s:if>
<s:else>
<s:set var="someobject" value="user">
</s:else>
はい、できます。しかし、あなたは本当にすべきですか?
これはプレゼンテーションではなくビジネスのようです。したがって、なぜコントローラーではなくビューにあるのでしょうか?
それ以外の
<s:if test"%{customer != null}">
<s:set var="someobject" value="customer">
</s:if>
<s:else>
<s:set var="someobject" value="user">
</s:else>
SomeObject is of type : <s:property value="%{#someobject.class.name}" />
アクションで使用できます
public String getSomeobject(){
return (customer!=null) ? customer : user;
}
JSPのみ
SomeObject is of type : <s:property value="%{someobject.class.name}" />
アクションがオブジェクトについて何も知らない場合、ユースケースはより適していますが、ビューに多くのビジネスロジックを配置することになります...