[ https://issues.apache.org/jira/browse/WW-3193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lukasz Lenart updated WW-3193: ------------------------------ Fix Version/s: 7.1.0 (was: 7.0.0) > Form action always inherits parent extension > -------------------------------------------- > > Key: WW-3193 > URL: https://issues.apache.org/jira/browse/WW-3193 > Project: Struts 2 > Issue Type: Improvement > Affects Versions: 2.1.8 > Reporter: Jasper Rosenberg > Priority: Minor > Fix For: 7.1.0 > > Attachments: WW-3193.patch > > > Here is the basic issue. I have an url that has no extension, eg. > /Overview-Mustang-c1234 > On that page, I have a form tag that I want to have submit to action > "changeCar.action", and so the "action" attribute is set to "changeCar". > This used to work. However, task WW-2267 changed the behavior so that the > form's action gets the parent mapping's extension > [DefaultActionMapper.getUriFromActionMapping() called from > ServletUrlRenderer.renderFormUrl()], in this case the empty string, so the > generated action ends up as just "changeCar" rather than "changeCar.action" > Because we have some special handling for our mappings, this url ends up as a > 404. It just doesn't seem desirable in general however that the same form > included on different pages with different extensions will generate posts to > two differently named urls. > I understand the concept behind this change, but I wonder if it would be > safer to revert it, and instead add support for an attribute on the form > which is "extension" which if present overrides the default, but otherwise > the default is used. Alternatively, it could be an mutli-value such as > "inherit" (new behavior), "default" (old behavior), or ".ext" (a specific > extension). With the default value being "default" so as to maintain > backwards compatibility to the 2.0 branch. -- This message was sent by Atlassian Jira (v8.20.10#820010)