2011-01-27 2 views
2

내가 아래는 Ajax DWR 호출함으로써 자바 함수에 자바 스크립트에서 해시 맵 데이터의 문자열 통과하는 것을 시도하고있다 :수없는

var str11 = { 
      "78965":{"age":"34yrs","height":"4"}, 
      "44589":{"age": "32yrs", "height": "99yrs"} 
      }; 

person= 233453; 

Person.saveSelected(planOid, 
        str11, 
        { 
        callback:savedValues, 
        errorHandler:handleError 
        } 
        ); 

을 하지만 내 자바 클래스 즉 PersonService.java의 다른 끝에서, 나는 성공적으로 PARAMS의 모두를 수신하지만 해시 맵을 검사 할 때 아래와 같은 형식을 취 :

{ 
44589={age:reference:c0-e5, height:reference:c0-e6}, 
78965={age:reference:c0-e2, height:reference:c0-e3} 
} 

내가 왜 참조를 이해할 수 없습니다입니다. 대신 나는 적절한 hashMap을 기대하고있다. DWR 마샬링을 사용하여 문제를 해결할 수 있습니까?

+0

해시 맵 (나이와 높이가있는 자바 객체)에 배치 할 Java 코드를 게시 할 수 있습니까? –

답변

0

Map<String, Object>은 DWR이 인스턴스화 할 개체를 알기에 충분하지 않습니다. 따라서 Map<String, YourConcreteClass> (컬렉션을 소장해야 함)을 사용해야합니다.

즉, 맵에있는 값에 다른 유형을 사용할 수 없습니다 (이는 문제가되지 않음).