@Test
public void tabularTypeInFullRepresentation() throws OpenDataException, MalformedObjectNameException {

    TabularType type = getSampleTabularTypeForComplexTabularData();
    String json = "{ \"indexNames\" : [ \"user\", \"street\" ], " +
                  "  \"values\" : [ " +
                  "      { \"user\" : { \"name\" : \"roland\", \"age\" : 44 }, " +
                  "        \"street\" : \"homestreet\", " +
                  "        \"oname\" : \"java.lang:type=Memory\" " +
                  "      }]" +
                  "}";
    TabularData data = (TabularData) converter.convertToObject(type,json);
    assertNotNull(data);
    Set keySet = data.keySet();
    assertEquals(keySet.size(), 1);
    List keys = (List) keySet.iterator().next();
    assertEquals(keys.size(),2);
    assertTrue(keys.contains("homestreet"));
    CompositeData cd = checkCompositeKey(keys);
    CompositeData row = data.get(new Object[] { cd, "homestreet"});
    assertEquals(row.get("user"),cd);
    assertEquals(row.get("street"),"homestreet");
    assertEquals(row.get("oname"),new ObjectName("java.lang:type=Memory"));
}