Defect #6136
closedJSON API holds less information than XML API
0%
Description
Currently the JSON API provides less information than the XML API. E.g. custom fields (resolution) isn't accessible by the JSON API.
Example:
http://svn.jdownloader.org/issues/1531.json
http://svn.jdownloader.org/issues/1531.xml
(1.0.0.stable.3936)
Files
Related issues
       Updated by Adam Soltys about 15 years ago
      Updated by Adam Soltys about 15 years ago
      
    
    This appears to be happening because the issue show action has a custom view (show.builder.xml) that is including the issue's relations, custom fields, etc. whereas the JSON format uses default to_json method on the issue model which doesn't include those things.
I'm going to tackle this by moving the XML builder code into the issue model's to_xml method instead of a view file. Then I'll make the issue's to_json method just call the to_xml method and convert the XML to JSON so we only need to maintain the serialization code in one place.
       Updated by Adam Soltys about 15 years ago
      Updated by Adam Soltys about 15 years ago
      
    
    
    I think this patch addresses the issue. The changes are also available at http://github.com/asoltys/redmine/tree/issue_serialization
       Updated by Eric Davis about 15 years ago
      Updated by Eric Davis about 15 years ago
      
    
    - Target version set to Unplanned backlogs
This is a real problem with using the XML views.  Instead of overriding to_xml, I'm wondering if there is a common method we can make so both XML and JSON formats are always the same.  Example:
def to_xml
  self.to_api_format(:xml)
end
def to_json
  self.to_api_format(:json)
end
def to_api_format(renderer)
  {
    :id => self.id,
    :subject => self.subject,
    # ....
  }
  # ...
end
       Updated by Jean-Philippe Lang almost 15 years ago
      Updated by Jean-Philippe Lang almost 15 years ago
      
    
    - Status changed from New to Closed
- Target version changed from Unplanned backlogs to 1.1.0
- Resolution set to Fixed
Fixed in r4458. xml and json responses now use the same template.