[
https://issues.apache.org/jira/browse/WW-3694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13135767#comment-13135767
]
Lukasz Lenart commented on WW-3694:
-----------------------------------
@Maurizio I made a simple mistake during refactoring :-(
The patch looks good for me as well :-)
> JSONResult - buildSMDObject method is never called internally
> -------------------------------------------------------------
>
> Key: WW-3694
> URL: https://issues.apache.org/jira/browse/WW-3694
> Project: Struts 2
> Issue Type: Bug
> Components: Plugin - JSON
> Affects Versions: 2.2.3.1
> Environment: Tomcat on windows, JDK1.5
> Reporter: Alex Yavorskiy
> Attachments: WW-3694.patch
>
>
> Pre version 2.2.3.1 JSONResult object used to have a protected method that
> allowed us to have a subclass that could modify URL of the SMD command being
> sent in the response right before it was sent. That method was "writeSMD". In
> version 2.2.3.1 of Struts there is no more method named "writeSMD", but there
> appears to be equivalent protected method named "buildSMDObject". However, we
> observed that buildSMDObject is never called by the infrastructure, so there
> is no use overriding it.
> After inspecting source for JSONResult, it looks like line 180 in the
> readRootObject function is really intended to call buildSMDObject. However,
> instead of calling the protected method in question, it creates SMD object
> right there.
> if (enableSMD) {
> return new SMDGenerator(root, excludeProperties,
> ignoreInterfaces).generate(invocation);
> }
> Fixing line 180 to call buildSMDObject should fix the issue. We had to
> significantly re-write our subclass for JSONResult to work around the
> deficiency. Hope this can be fixed in a future release.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira