2014-08-28 3 views
0

getThreadLocalRequest가 null 반환하기 때문에 나는이 내 RemoteServiceServletRemoteServiceServlet은 getThreadLocalRequest로 null을 반환()

userID = getThreadLocalRequest().getRemoteUser(); 

의 생성자 라인하지만 던지는 NullPointerException이 있습니다.

RemoteServiceServlet은 HttpServlet에서 상속되므로 HttpReuest 객체가 이미 있어야합니다. GWT의 경우 getThreadLocalRequest()를 호출하기 전에 무엇인가를 설정해야합니까?

+0

'getThreadLocalRequest()'를 아무 문제없이 사용합니다. 문제는 다른 곳에서 발생합니다. –

+0

나는이 문제에 직면 한 사람이 아니라는 인상을 받았다. 빠른 Google 검색은 같은 문제 (https://www.google.com/search?q=gwt+getthreadlocalrequest+returns+null)가있는 몇 개의 게시물을 던집니다. 그러나 이들 중 어느 것도 명확한 해결책이 없었습니다. – Raj

+0

무슨 뜻입니까? 문제는 공유 한 코드 행에 없습니다. 물론 David의 제안이 이미 문제를 해결하지 않았다면 더 많은 코드를 공유해야합니다. –

답변

2

문제점은 서블릿 생성자에서 해당 메소드를 사용하려고하는 것일 수 있습니다. 새 서블릿 인스턴스는 각 요청에 대해 생성되지 않습니다. 서블릿 인스턴스는 여러 요청을 통해 재사용됩니다. 대신 서비스 메소드에서 getThreadLocalRequest()를 호출 해보십시오.

관련 문제