Search code examples
extjssencha-touch-2

Sencha Touch Mapping


I have a the following JSON returned from a webservice. but i need only three fields to be displayed in my Sencha touch grid. is there any way to get it

My Json

    {
  "@timestamp": "2013-6-27_183319",
  "@protocol": "SAML2.0",
  "@title": "Some radom Message ",
  "#text": "Some radom Message",
  "description": "Some radom Message",
  "chart": "ReportGeneration_default.jpg",
  "validations":   [
        {
      "@filename": "authnrequest1_2013-6-27_183319.xml",
      "links": {"messagelink": "},
      "protocol":       {
        "version": "2.0",
        "inference": "passed"
      },
      "validationtype":       {
        "@method": "deployment specific validation",
        "category":         {
          "@name": "Authentication Request",
          "rules":           [
                        {
              "@name": "Destination",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "ID",
              "inference": "passed",
              "messagevalid": "_cc9a8360-c156-0130-2d3f-00304834ee22"
            },
                        {
              "@name": "Version",
              "inference": "passed",
              "messagevalid": "2.0"
            },
                        {
              "@name": "IssueInstant",
              "inference": "passed",
              "messagevalid": "2013-06-27T12:55:42Z"
            },
                        {
              "@name": "Issuer",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "Issuer Format",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "AllowCreate",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "NameIDPolicy Format",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            }
          ],
          "summary":           {
            "validationpassed": "8",
            "validationfailed": "0",
            "passpercentage": "100"
          }
        }
      }
    },
        {
      "@filename": "assertion2_2013-6-27_183319.xml",
      "links": {"messagelink": ""},
      "protocol":       {
        "version": "2.0",
        "inference": "passed"
      },
      "validationtype":       {
        "@method": "deployment specific validation",
        "category":         {
          "@name": "Response",
          "rules":           [
                        {
              "@name": "Response is signed (Optional)",
              "inference": "passed",
              "messagevalid": "false"
            },
                        {
              "@name": "Assertion is signed",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "Assertion is encrypted",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "Signing Certificate is valid",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "Version is present",
              "inference": "passed",
              "messagevalid": "2.0"
            },
                        {
              "@name": "Destination is present",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "IssueInstant is present",
              "inference": "passed",
              "messagevalid": "2013-06-27T12:52:54Z"
            },
                        {
              "@name": "Issuer is present",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "Issuer is a URL reference to the partner entity-ID",
              "inference": "passed",
              "messagevalid": "urn:oasis:names:tc:SAML:2.0:nameid-format:entity"
            },
                        {
              "@name": "Number of Subject elements is 1",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "SubjectConfirmation element contains confirmation Method of urn:oasis:names:tc:SAML:2.0:cm:bearer",
              "inference": "passed",
              "messagevalid": "urn:oasis:names:tc:SAML:2.0:cm:bearer"
            },
                        {
              "@name": "NameID is present",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "NameID format attribute Value is urn:oasis:names:tc:SAML:2.0:nameid-format:persistent or urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "SubjectConfirmationData includes InResponseTo",
              "inference": "passed",
              "messagevalid": "_cc9a8360-c156-0130-2d3f-00304834ee22"
            },
                        {
              "@name": "SubjectConfirmationData includes NotOnOrAfter",
              "inference": "passed",
              "messagevalid": "2013-06-27T21:13:54Z"
            },
                        {
              "@name": "SubjectConfirmationData includes Recipient",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "Conditions NotBefore is present",
              "inference": "passed",
              "messagevalid": "2013-06-27T04:32:54Z"
            },
                        {
              "@name": "Conditions NotOnOrAfter is present",
              "inference": "passed",
              "messagevalid": "2013-06-27T21:13:54Z"
            },
                        {
              "@name": "AudienceRestriction is present",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "Audience is present",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "Number of AuthnStatement elements is 1",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "AuthnStatement includes AuthnInstant",
              "inference": "passed",
              "messagevalid": "2013-06-27T12:52:53Z"
            },
                        {
              "@name": "AuthnStatement includes SessionIndex",
              "inference": "passed",
              "messagevalid": "N3zGHc711KOX0gfhH6Ce/4MrLV8=jY/Ixg=="
            },
                        {
              "@name": "AuthnStatement includes SessionNotOnOrAfter",
              "inference": "passed",
              "messagevalid": "2013-06-27T21:13:54Z"
            },
                        {
              "@name": "Number of AttributeStatement elements is 1",
              "inference": "passed",
              "messagevalid": "true"
            },
                        {
              "@name": "ID is present",
              "inference": "passed",
              "messagevalid": "_a86b41c1d7153b8d71b722a81b559b55df6d"
            },
                        {
              "@name": "InResponseTo",
              "inference": "passed",
              "messagevalid": "_cc9a8360-c156-0130-2d3f-00304834ee22"
            },
                        {
              "@name": "AuthnContextClassRef is present",
              "inference": "passed",
              "messagevalid": "urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport"
            },
                        {
              "@name": "AttrName",
              "inference": "passed",
              "messagevalid": "email"
            },
                        {
              "@name": "AttrValue",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "NameFormat",
              "inference": "passed",
              "messagevalid": "urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
            },
                        {
              "@name": "AttrName",
              "inference": "passed",
              "messagevalid": "guid"
            },
                        {
              "@name": "AttrValue",
              "inference": "passed",
              "messagevalid": "4658701f7440dc53e3d2a0ef36b0cf96"
            },
                        {
              "@name": "NameFormat",
              "inference": "passed",
              "messagevalid": "urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
            },
                        {
              "@name": "AttrName",
              "inference": "passed",
              "messagevalid": "display_name"
            },
                        {
              "@name": "AttrValue",
              "inference": "passed",
              "messagevalid": "Some radom Message"
            },
                        {
              "@name": "NameFormat",
              "inference": "passed",
              "messagevalid": "urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
            }
          ],
          "summary":           {
            "validationpassed": "36",
            "validationfailed": "0",
            "passpercentage": "100"
          }
        }
      }
    }
  ]
}

I tried Store Mapping

in the JSON value i need @name, interference and message field to be displayed. I tried mapping function but it dint work well , any other ideas ?


Solution

  • Does this help? Looks like there's an issue with mapping property if you don't use a JSONReader.

    http://www.sencha.com/forum/showthread.php?130134-CLOSED-Field-mapping-property-ignored-when-creating-Model-instance