Ajax调用未命中Tomcat8中的servlet
我有一个带有以下代码的servletAjax调用未命中Tomcat8中的servlet,ajax,servlets,Ajax,Servlets,我有一个带有以下代码的servlet @WebServlet(urlPatterns = "/attachmentUpload.do") @MultipartConfig public class AttachmentUploadServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws Servlet
@WebServlet(urlPatterns = "/attachmentUpload.do")
@MultipartConfig
public class AttachmentUploadServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
if (operationName != null && operationName.equalsIgnoreCase("attachToSNOW")) {
JSONArray runbookRows = new JSONArray(request.getParameter("runbook"));
LOGGER.log(Level.INFO, "runbook rows:{0}", runbookRows.toString());
}
}
}
来自jsp的ajax调用如下
$.ajax({
url: "attachmentUpload.do",
method: "post",
data: {"operationName": "attachToSNOW",
"runbook": JSON.stringify(rowArray)
},
success: function (data) {
console.log("ajax called");
},
error: function (msg) {
console.log("Couldn't attach file");
}
});
ajax调用似乎没有命中部署我的应用程序的servlet(Tomcat8),而同样的调用在连接到Netbeans的本地tomcat中有效
我完全不知道是什么问题
这件事已经坚持了好几个星期了
编辑
真正的问题是,当我从父jsp打开子jsp时。在child-JSP中,我将一些数据转储到一个临时文件中,该临时文件稍后将被推送到一个web服务,提到的ajax调用在child-JSP中。我在tomcat stdout中没有得到任何日志(也是临时文件创建),因此我知道部分代码没有被访问
当我将ajax调用更改为以下内容时,一切都开始起作用:)
async和cache似乎完成了神奇的工作添加async和cache解决了我的问题
$.ajax({
url: "attachmentUpload.do",
method: "post",
async: false,
cache: false,
data: {"operationName": "attachToSNOW",
"runbook": JSON.stringify(rowArray)
},
success: function (data) {
window.opener.log("ajax called");
},
error: function (msg) {
console.log("Couldn't attach file");
}
});
你试过你网站的绝对路径吗?绝对路径如中所示?我试过在本地tomcat上部署。效果很好。问题出在部署应用的服务器上。浏览器开发工具告诉你什么?添加了编辑,浏览器开发工具帮助调试,在ajax完成后,我看到了从子jsp中抽取的登录父jsp
$.ajax({
url: "attachmentUpload.do",
method: "post",
async: false,
cache: false,
data: {"operationName": "attachToSNOW",
"runbook": JSON.stringify(rowArray)
},
success: function (data) {
window.opener.log("ajax called");
},
error: function (msg) {
console.log("Couldn't attach file");
}
});