2013-07-31 7 views
0

반환 콘솔에jQuery를 서블릿 호출이 나는 간단한 jQuery를 서블릿 호출 할 오류

jQuery:

$.ajax("LoginServlet") 
    .done(function() { alert("success"); }) 
    .fail(function() { alert("error"); }); 

Servlet:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    System.out.println("Posting"); 
} 

를, 나는 서블릿이 호출 될 수 있도록, Posting를 참조하십시오. 그러나 여전히 '오류'알림이 표시됩니다.

다른 누군가가 '크로스 사이트 스크립팅'문제에 대해 언급했습니다. 그것이 문제일까요? 당신이 당신의 서블릿 그냥 콘솔에 인쇄 아무것도하지 않는 요청을 할 때, 당신은 사이클 요청/응답의 응답을 관리해야 localhost:8080/Test/LoginServlet

+0

브라우저의 자바 스크립트 콘솔과 네트워크 탭에서 오류가 있는지 확인하십시오. –

+0

조언 해 주셔서 감사합니다. 도움이되었습니다. 당연히 콘솔을 이미 확인 했어야합니다. 처음에 호출을 유발 한 버튼은 '제출'버튼이었으며 페이지가 다시로드되었습니다. '버튼'버튼으로 변경되었습니다. 이제는 모든 것이 매력처럼 작동합니다. – UnOriginalToo

+0

대안으로 이벤트 핸들러 함수에'e' 매개 변수를 넣고'e.preventDefault()'를 호출하여 새로 고침을 막을 수 있습니다. '$ ('button')과 같은 것입니다. (function (e) {e.preventDefault();}), ' –

답변

0

:에

내 서블릿이다.

그래서 다음과 같이하십시오 :

// Obtain the out writer stream from the response 
// object for send a response to the client (the web page) 
PrintWriter out = response.getWriter(); 
// Print as response of request Posting 
out.println("Posting"); 
// Close the out stream 
out.close(); 

는 이제 JQuery와 요청이 응답을 얻을 것이다.

+0

이 질문에 대한 답변을 제공하지 않습니다. 비평하거나 저자의 설명을 요청하려면 게시물 아래에 의견을 남겨 둡니다. – bmargulies

+0

나는 대답을 향상시켰다. @bmargulies –