volosied commented on PR #1096:
URL: https://github.com/apache/myfaces/pull/1096#issuecomment-6041910739
Hey, this is more of an edge-case scenario.
Most of our testing currently uses relatively small IDs (or auto-generated
defaults), so we aren't likely to encounter this in our test coverage.
My concern is around large enterprise applications with deeply nested naming
containers and very large Facelets views. In those environments, developers are
more likely to use fairly verbose component IDs, so a structure like the
following wouldn't be unexpected:
```
<h:form id="customerAccountManagementForm">
<h:dataTable id="regionalCustomerPortfolioContainer"
value="#{[1]}"
var="portfolio">
<h:column>
<h:dataTable id="enterpriseBusinessRelationshipContainer"
value="#{[1]}"
var="relationship">
<h:column>
<h:dataTable
id="strategicAccountOperationalHierarchyContainer"
value="#{[1]}"
var="hierarchy">
<h:column>
<h:commandButton
id="asynchronousCustomerProfileSynchronizationButton"
value="Submit">
<f:ajax
execute="@this"
render="@form"/>
</h:commandButton>
</h:column>
</h:dataTable>
</h:column>
</h:dataTable>
</h:column>
</h:dataTable>
</h:form>
```
In this case, the AJAX request would submit the following value:
`javax.faces.partial.execute:
"customerAccountManagementForm:regionalCustomerPortfolioContainer:0:enterpriseBusinessRelationshipContainer:0:strategicAccountOperationalHierarchyContainer:0:asynchronousCustomerProfileSynchronizationButton"
`
Which is 206 characters, and not far off from 256 limit.
My concern is less about extremely large IDs, but those just over the 256
threshold.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]