Hi,
Not sure if this is a bug in clay but the clay documentation states
"If the result of the substitution is a zero length string, a null value
is returned and the value is not apply to a property"
I have a clay config file using acegijsf it is configured as follows
<component jsfid="acegijsf:authorize"
componentType="net.sf.jsfcomp.acegijsf.Authorize" allowBody="true">
<attributes>
<set name="ifAllGranted" value="@ifAllGranted"/>
<set name="ifAnyGranted" value="@ifAnyGranted"/>
<set name="ifNotGranted" value="@ifNotGranted"/>
</attributes>
</component>
If in my html I use
<span jsfid="acegijsf:authorize" ifAnyGranted="ROLE_ADMIN" >
ADMIN ONLY STUFF........
</span>
When the page is rendered the Authorize class is having its methd
public void setIfAllGranted(String ifAllGranted)
set to "@ifAllGranted"
and
public void setIfNotGranted(String ifNotGranted)
set to "@ifNotGranted"
Now I believe these should be set to null and its causing the acegijsf
to work incorrectly as it expects null values for these attributes if
they`re not set.
If I replace the symbols with el the same problem occurs.
I have a temporary work around which is to create separate widgets for
each of the attribute options but wondered if any body else had
experienced this?
So work around is
<component jsfid="acegijsf:ifAnyAuthorize"
componentType="net.sf.jsfcomp.acegijsf.Authorize" allowBody="true">
<attributes>
<set name="ifAnyGranted" value="@ifAnyGranted"/>
</attributes>
</component>
Regards
Darran White
Senior Developer
Mobile: +44 (0) 7795577076
Skype: darran.white Email: [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>
www.opsera.com <http://www.opsera.com>
Opsera Limited | Unit 69 Suttons Business Park
Reading | Berkshire | RG6 1AZ | UK
This e-mail is confidential, intended only for the named recipient(s)
above and may contain information that is privileged and confidential.
If you receive this message in error, or are not the named recipient(s),
please notify the sender at the phone number above, do not copy this
message, do not disclose its contents to anyone, and delete this e-mail
message from your computer. Although Opsera routinely screens for
viruses, addressees should scan this e-mail and any attachments for
viruses. Opsera makes no representation or warranty as to the absence of
viruses in this e-mail or any attachments.