Carsten Dimmek created TOBAGO-2121:
--------------------------------------

             Summary: AuthorizationHelper fails which composite component 
attribute as method parameter
                 Key: TOBAGO-2121
                 URL: https://issues.apache.org/jira/browse/TOBAGO-2121
             Project: MyFaces Tobago
          Issue Type: Bug
          Components: Core
    Affects Versions: 5.0.0
            Reporter: Carsten Dimmek


I have a custom component which uses  cc.attrs.value as method argument

 

 
{code:java}
<cc:interface>
<cc:attribute name="value" type="String"/>
</cc:interface>

<cc:implementation>
<tc:link action="#{someController.viewDetails(cc.attrs.value, facesContext)}" />
...
{code}
 

 

The AuthorizationHelper fails with an StringIndexOutOfBoundsException

 
{noformat}
java.lang.StringIndexOutOfBoundsException: begin 39, end 38, length 60
    at java.base/java.lang.String.checkBoundsBeginEnd(Unknown Source) ~[na:na]
    at java.base/java.lang.String.substring(Unknown Source) ~[na:na]
    at 
org.apache.myfaces.tobago.internal.util.AuthorizationHelper.getSecurityAnnotation(AuthorizationHelper.java:166)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
org.apache.myfaces.tobago.internal.util.AuthorizationHelper.isAuthorized(AuthorizationHelper.java:81)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
org.apache.myfaces.tobago.internal.component.AbstractUICommandBase.isAllowed(AbstractUICommandBase.java:128)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
org.apache.myfaces.tobago.internal.component.AbstractUICommandBase.isDisabled(AbstractUICommandBase.java:120)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
org.apache.myfaces.tobago.internal.renderkit.renderer.CommandRendererBase.encodeBeginInternal(CommandRendererBase.java:67)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
org.apache.myfaces.tobago.internal.renderkit.renderer.CommandRendererBase.encodeBeginInternal(CommandRendererBase.java:59)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
org.apache.myfaces.tobago.renderkit.RendererBase.encodeBegin(RendererBase.java:87)
 ~[tobago-core-5.0.0.jar!/:5.0.0]
    at 
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:597) 
~[myfaces-api-2.3.9.jar!/:2.3.9]
    at 
javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:527) 
~[myfaces-api-2.3.9.jar!/:2.3.9]
    at 
javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:551) 
~[myfaces-api-2.3.9.jar!/:2.3.9]{noformat}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to