我正在尝试发送POST AJAX请求以重新加载index.xhtml中的数据 但是servlet从未接收过请求。
这是我的ajax电话:
function changeStep(sub_step_id)
{
console.log('ok');
$.ajax({
type:"POST",
headers: {
'Authorization':'Basic xxxxxxxxxxxxx',
'X_CSRF_TOKEN':'xxxxxxxxxxxxxxxxxxxx',
'dataType': 'json',
'Content-Type':'application/json'
},
data:{"sub_step_id":sub_step_id},
url:'Shop',
success : function(data){
console.log("sucess");
location.href = url;
},
error:function(e){
// Error
}
});
}
在我的servlet中,实现了doGET和doPOST方法,但是当请求到达我的服务器时,它们都没有被调用。
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
process(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
process(request,response);
}
我的Servlet映射到web.xml中 这是它的摘录:
<servlet>
<servlet-name>Shop</servlet-name>
<servlet-class>com.kino.front.homeManager</servlet-class>
</servlet>
请求调用
答案 0 :(得分:0)
这是因为您没有映射该servlet的url。将此代码添加到您的web.xml。
<servlet-mapping>
<servlet-name>Shop</servlet-name>
<url-pattern>/shop</url-pattern>
</servlet-mapping>
希望这能解决您的问题