I think I'm running into an error that appears strange. The code below is 
in a Callback. I'm receiving a JSON from server and need to interrogate it. 
Here's the client side code segment in onReponseReceived(...) 
 ...
 String json = response.getText();
 SearchResponseJson responseJson = SearchResponseJson.build(json);
 String primaryMoleculeId = responseJson.gerPrimaryMatchingId();

 if (primaryMoleculeId != null) {
     String tId = molecule.gettId() + "";
     HashMap<String, String> idMap = responseJson.getIdMap();
     String id = idMap.get(tId); // <-- affending line
     molecule.setId(id);
 }
 ...

The line String id = idMap.get(tId) throws an exception with the message 
"Exception 
name: JavaScriptException(TypeError) : idMap_0_g$.get_107_g$ is not a 
function?. Strangely if String tId = molecule.gettId() + "" line is changed 
to this - Integer tId = molecule.gettId() it still compiles (I expected 
String id = idMap.get(tId) to fail, having the key declared Integer in the 
map). Both lines compile but neither works. In super dev debug mode the 
content of the map entry I'm trying to get appears as 
894830631:"AVaFi4md0u8eNTTDvmDv". 
Please notice the lack of quotes around the number; that's how it appeared.

Method responseJson.gerPrimaryMatchingId(); is implemented as -

    public final native HashMap<String, String> getIdMap() /*-{
        return this.idMap;
    }-*/;

And the JSON is 
{  
   "primaryMatchingId":"AVaFi4md0u8eNTTDvmDv",
   "idMap":{  
      "894830631":"AVaFi4md0u8eNTTDvmDv" // <-- notice the quotes around 
the key
   },
   "identicalMatchingIds":[  

   ],
   "matchingIds":[  
      "AVaFi4md0u8eNTTDvmDv"
   ],
   "messageMap":{  

   },
   "statusMap":{  
      "894830631":1
   }
}

I'm using java.util.HashMap.

Any help would be greatly appreciated.
Velu


-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

Reply via email to