2013-03-13 2 views
2

스프링 MVC 비동기 처리를 사용하고 있지만 컨트롤러가 웹 브라우저에서 뷰를 반환하지 않습니다.스프링 비동기 처리가 돌아 오지 않음

@RequestMapping(value = "/generateGM", method = RequestMethod.POST) 
    public Callable<ModelAndView> generateGMReport(@RequestParam("countryCode") int countryCode, ModelAndView mv) { 

     Callable<ModelAndView> c = new GenericCallable(countryCode, reportDao, mv); 

     return c; 
    } 

@Override 
    public ModelAndView call() throws Exception { 

     List<CostReport> gmList = reportDao.generateGrossMarginReport(countryCode); 

     mv.setViewName("gmReport"); 
     mv.addObject("gmList", gmList); 

     return mv; 
    } 

호출 가능을 반환하도록 코드를 수정하려고했지만 여전히 지정된보기 이름으로 돌아 가지 않습니다.

저는 JBoss 7.1을 사용하고 있습니다.

배포 중에 있습니다 경고한다 :

WARN [org.jboss.as.ee] (MSC service thread 1-7) 

JBAS011006: Not installing optional component 

org.springframework.web.context.request.async.StandardServletAsyncWebRequest 
due to exception: org.jboss.as.server.deployment.DeploymentUnitProcessingException: 
JBAS011054: 
Could not find default constructor for class 
org.springframework.web.context.request.async.StandardServletAsyncWebRequest 

이유 : 아마도 스프링 MVC 프레임 워크 (AsynContext)에서 응답 객체를 설정할 수 없습니다 통해 Sitemesh는.

이유가 무엇입니까?

도와주세요.

감사합니다.

+0

지침을 제공하십시오. 추가 정보가 필요하면 알려주십시오. – peterwkc

+0

sitemesh filer를 비활성화하려고 시도했지만 결과가 반환되었지만 sitemesh fileter enable을 사용하여 반환 HTML이 없습니다. 설치하지 않는 임의 성분 예외로 인한 org.springframework.web.context.request.async.StandardServletAsyncWebRequest : 또한, [org.jboss.as.ee] WARN (MSC 서비스 스레드 1-7) JBAS011006있다 : org.jboss.as.server.deployment.DeploymentUnitProcessingException : JBAS011054 : 이 org.springframework.web.context.request.async.StandardServletAsyncWebRequest – peterwkc

답변

1

Sitemesh 필터는 요청이 끝날 때 약간의 사후 처리를 수행하므로이 기능을 사용하려면 Servlet 3 비동기 요청 기능을 지원해야합니다. 초기 서블릿 컨테이너 스레드가 종료되고 응답이 열린 상태로 유지됩니다. Sitemesh 필터가이를 인식하지 못하면 Sitemesh 처리를 조기에 완료하려고 시도합니다.

+0

어떤 구체적인 솔루션 클래스 에 대한 기본 생성자를 찾을 수 없습니다? 나는 최신 sitemesh 3 병을 시도 할 수 있습니다. – peterwkc

-1

도움이 될 수 있습니다. ModelAndView 대신 문자열로 반환하십시오.

+0

비동기 서블릿을 사용하고 있습니다. – peterwkc

1

나는 sitemesh에 기대하지 않는다. 그러나 서블릿이기도하므로 명령의 "체인"패턴을 따르므로 필요한 올바른 URL을 전송하지 못할 수도 있습니다. web.xml에 async spring 및 sitemesh config 구성을 게시 할 수 있습니까?

관련 문제