You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Carsten Dimmek (Jira)" <de...@myfaces.apache.org> on 2022/03/24 17:10:00 UTC

[jira] [Created] (TOBAGO-2121) AuthorizationHelper fails which composite component attribute as method parameter

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)