java 와 jsp 간 ajax 를 통해 json 데이터를 주고 받기가 잘 안됩니다...(1/2)
- 작성자 :
- 공*철
- 작성일 :
- 2013-11-22 07:09:35
- 조회수 :
- 1,668
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
java 와 jsp 간 ajax 를 통해 json 데이터를 주고 받기가 잘 안됩니다...
수고하십니다...
java 와 jsp 간 ajax 를 통해 json 데이터를 주고 받는 화면을 만들고 있는데요...
오류가 있어서 문의 드립니다.
물론 이곳 사이트의 ajax 예제도 보았는데요...
저는 그 방식을 사용하지 않고 아래처럼 하려고 하는데 잘 안되어서 그러니
해결 방안을 알려주시면 감사하겠습니다.
--- jsp 단 ---
$(document).on("click", "#field", function(){
$.ajax({
url : "<c:url value='/aaa/test.do'/>",
type : "post",
dataType : "json",
data : { "field" : $(this).val() },
contentType: "application/json; charset=utf-8",
error : function(err){
alert("에러 : "+err.status+" : "+err.statusText);
},
success : function(data) {
alert("성공 : "+data);
}
});
});
--- java 단 ---
@RequestMapping(value="/aaa/test.do", consumes="application/json", produces={"application/xml", "application/json"}, headers={"content-type=application/json"})
public @ResponseBody JSONObject selectTestList(
@RequestBody Map<String, String> map
)throws Exception {
System.out.println("############ 1");
System.out.println("############ field : "+map.toString());
// System.out.println("############ field : "+map.get("field").toString());
TestVO vo = null;
vo = new TestVO();
vo.setTestCode("1234");
List list = testService.selectTestList(vo);
JSONObject obj = new JSONObject();
obj.put("list", list);
System.out.println("############### obj : "+obj);
return obj;
}
--- egov-com-servlet.xml ---
<bean id="jsonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="jsonHttpMessageConverter"/>
</list>
</property>
</bean>
@ResponseBody, @RequestBody 를 사용하면 거추장스런 변환작업을 궂이 안해도
자동으로 되는것 같아서 사용하려는데요...
소스라인도 짧아질것같구요... 암튼...
소스는 위와 같은데요...
수고하십니다...
java 와 jsp 간 ajax 를 통해 json 데이터를 주고 받는 화면을 만들고 있는데요...
오류가 있어서 문의 드립니다.
물론 이곳 사이트의 ajax 예제도 보았는데요...
저는 그 방식을 사용하지 않고 아래처럼 하려고 하는데 잘 안되어서 그러니
해결 방안을 알려주시면 감사하겠습니다.
--- jsp 단 ---
$(document).on("click", "#field", function(){
$.ajax({
url : "<c:url value='/aaa/test.do'/>",
type : "post",
dataType : "json",
data : { "field" : $(this).val() },
contentType: "application/json; charset=utf-8",
error : function(err){
alert("에러 : "+err.status+" : "+err.statusText);
},
success : function(data) {
alert("성공 : "+data);
}
});
});
--- java 단 ---
@RequestMapping(value="/aaa/test.do", consumes="application/json", produces={"application/xml", "application/json"}, headers={"content-type=application/json"})
public @ResponseBody JSONObject selectTestList(
@RequestBody Map<String, String> map
)throws Exception {
System.out.println("############ 1");
System.out.println("############ field : "+map.toString());
// System.out.println("############ field : "+map.get("field").toString());
TestVO vo = null;
vo = new TestVO();
vo.setTestCode("1234");
List list = testService.selectTestList(vo);
JSONObject obj = new JSONObject();
obj.put("list", list);
System.out.println("############### obj : "+obj);
return obj;
}
--- egov-com-servlet.xml ---
<bean id="jsonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="jsonHttpMessageConverter"/>
</list>
</property>
</bean>
@ResponseBody, @RequestBody 를 사용하면 거추장스런 변환작업을 궂이 안해도
자동으로 되는것 같아서 사용하려는데요...
소스라인도 짧아질것같구요... 암튼...
소스는 위와 같은데요...
A
안녕하세요. 공현철님
관련 오류메시지를 보내주시면 확인 후 답변드리겠습니다.
고맙습니다.
관련 오류메시지를 보내주시면 확인 후 답변드리겠습니다.
고맙습니다.