Java Servlet上的JQuery $ .get()不工作

时间:2016-10-17 16:55:37

标签: javascript java jquery jsp servlets

我有一个使用Servlets和JQuery的Java Web应用程序。我在servlet上使用$ .get()方法,该方法只是将对象转换为JSON并将其写回。这曾经工作,但由于某种原因它不再有效。我在调试中发现$ .get()方法根本没有被调用,但Javascript文件的其余部分是。它只是完全跳过$ .get()方法。但我似乎无法弄明白为什么。这是我的代码:

JavaScript的:

window.onload = function () {

$.get('OrdersToJSONServlet', function (responseText) {
// ...I use responseText to populate Google Charts
}

Java Servlet:

/**
 * <h1>Servlet implementation for converting order objects to JSON for use with JS</h1>
 */
@WebServlet("/OrdersToJSONServlet")
public class OrdersToJSONServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
/**
 * @see HttpServlet#HttpServlet()
 */
public OrdersToJSONServlet() {
    super();
    // TODO Auto-generated constructor stub
}

/**
 * @param request
 * @param response
 * @throws javax.servlet.ServletException
 * @throws java.io.IOException
 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
 *      response)
 */
    @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    Object orders = request.getSession().getAttribute("orders");
    String json = new Gson().toJson(orders);
    try {
        response.getWriter().write(json);
    } catch (IOException e) {
        System.out.println("problem parsing JSON");
    }
}

}

我认为JQuery引用的注释可能在某种程度上是不正确的,但我不确定这是怎么回事,也不确定。在此先感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

对于对这种情况感兴趣的其他人,我自己想出了这个问题。 $ .get方法位于window.onload中。我的Javascript在外部文件中,这两个不兼容。愚蠢的错误!