[
https://issues.apache.org/jira/browse/WW-4585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksandr Mashchenko updated WW-4585:
-
Description:
If a url with DMI and with a JSESSIONID is sent to a Struts2 action, a failure
will result
see this modified unit test from the plugin unit test:
{code:java}
public void testGetJsessionIdSemicolonMappingWithMethod() throws Exception {
req.setRequestURI("/myapp/animals/dog/fido!update;jsessionid=29fefpv23do1g");
req.setServletPath("/animals/dog/fido");
req.setMethod("GET");
mapper.setAllowDynamicMethodCalls("true");
ActionMapping mapping = mapper.getMapping(req, configManager);
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
assertEquals("update", mapping.getMethod());
}
{code}
was:
If a url with a JSESSIONID is sent to a struts2 action, a failure will result
see this modified unit test from the plugin unit test:
{code:java}
public void testGetJsessionIdSemicolonMapping() throws Exception {
req.setRequestURI("/myapp/animals/dog/fido;jsessionid=29fefpv23do1g");
req.setServletPath("/animals/dog/fido");
req.setMethod("GET");
ActionMapping mapping = mapper.getMapping(req, configManager);
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
assertEquals("show", mapping.getMethod());
}
{code}
> Struts2 Rest plugin doesn't handle JSESSIONID with DMI
> --
>
> Key: WW-4585
> URL: https://issues.apache.org/jira/browse/WW-4585
> Project: Struts 2
> Issue Type: Bug
> Components: Plugin - REST
>Affects Versions: 2.3.24
> Environment: tomcat
>Reporter: Rich P Peters, II
>Assignee: Aleksandr Mashchenko
>Priority: Blocker
> Fix For: 2.3.25, 2.5
>
> Attachments: RestActionMapper.java
>
>
> If a url with DMI and with a JSESSIONID is sent to a Struts2 action, a
> failure will result
> see this modified unit test from the plugin unit test:
> {code:java}
> public void testGetJsessionIdSemicolonMappingWithMethod() throws
> Exception {
>
> req.setRequestURI("/myapp/animals/dog/fido!update;jsessionid=29fefpv23do1g");
> req.setServletPath("/animals/dog/fido");
> req.setMethod("GET");
> mapper.setAllowDynamicMethodCalls("true");
> ActionMapping mapping = mapper.getMapping(req, configManager);
> assertEquals("/animals", mapping.getNamespace());
> assertEquals("dog", mapping.getName());
> assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
> assertEquals("update", mapping.getMethod());
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)