2012-01-31 5 views
0

내 JAVA 컨트롤러 클래스에 Ext.Ajax.request를 사용하여 전달하는 매개 변수를 검색하는 데 문제가 하나 있습니다.Java 컨트롤러에서 Ext.Ajax.request에서 매개 변수를 가져 오는 방법

내가 요청을 수신하는 코드 아래

Ext.Ajax.request({ 
      url : 'projecttask/GetprojectTasks.action', 
      method: 'POST', 
      jsonData: { 
       sampledata: record.data 
      }, 
      type: 'json', 
      scope: this, // add the scope as the controller 
      callback : function(options, success, response) { 
       console.log('RESPONSE FROM SERVER :'+response); 
      } 
      }); 

내 자바 컨트롤러 메소드를 사용하여 내 컨트롤러에 요청을 보내고 것은

@RequestMapping(value="/projecttask/GetprojectTasks.action") 
    public @ResponseBody Map<String, ? extends Object> getprojectTasks(HttpServletRequest request, 
      HttpServletResponse response,@RequestBody Project project) throws Exception { 
     try { 
      System.out.println("PROJECT ::"+project); 
      System.out.println("RPOJECT DATA ::"+request.getParameter("sampledata")); 
      Object data = request.getParameter("sampledata"); 
      Project prj = (Project) data; 
      System.out.println("CREATE TASK DATA IS ::"+prj.getProjectid());    
      return null;    
     }catch(Exception e) { 
      return getModelMapError("Error trying to create contact"); 
     } 
    } 

하지만 그것은 나를

org.codehaus.jackson.map.JsonMappingException: Unrecognized field "sampledata" (Class com.kintu.projectmgt.model.Project), not marked as ignorable 
아래 설명한 오류 제공

그래서 내가 뭘하고있어 내 함수가 허용되지 않는 잘못하고있다 sampledata 파 전달 ameters. 어떻게 매개 변수 전달 된 값을 얻을 수 있습니까?

내 방화 글 (firebug)은 sampledata에 모든 값이 있음을 보여줍니다. 가능한 빨리 문제를 찾아 해결하도록 도와주세요.

내 서버 측 기술로 Ext JS 4.0.2a 및 JAVA를 사용하고 있습니다.

+0

미안하지만 내 AJAX 요청에서 jsonData 및 형식을 제거하여 내 오류를 해결했습니다. 대신 ** params : { 'id': record.get ('id')} **를 추가하고 서버 측에서 ** request.getParameter ("id") ** 값을 얻습니다. –

답변

0

당신은

String postParamsJSON = request.getReader().readLine(); 

는 POST 데이터를 얻을 수 있습니다.

관련 문제