Я пытаюсь получить данные из сервлета и вызвать такой сервлет из углового контроллера. Однако контроллер, похоже, не достигает сервлета.
Я установил пару сообщений об ошибках (вместо отладки) и вижу, что функция выполняется, но сервлет не достигнут (всегда получая сообщение «неспособен найти»).
Возможно ли, что путь, который я использую, неверен? Я тестировал с / в начале, а также используя полный путь (localhost / project / servlet).
Угловой контроллер
app.controller("userController", function($scope, $http){
$scope.error = "NOT EXECUTED";
var onSuccess = function(response){
$scope.users = response.data;
$scope.error = "EXECUTED BUT NOT PROPERLY";
};
var onError = function(response){
$scope.error = "unable to find the record";
}
var con = $http.get("UserListServlet");
con.then(onSuccess, onError);
})
Servlet
package servlets;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONArray;
import com.google.gson.Gson;
import elementos.Usuario;
@WebServlet(value="/UserListServlet")
public class UserListServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public UserListServlet() {
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Database db = Database.getInstance();
ArrayList<Usuario> usersList = db.getUsuarios();
JSONArray arrayObj = new JSONArray(usersList);
String jObj = new Gson().toJson(arrayObj);
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(jObj);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
Моя цель - получить данные из сервлета, чтобы их можно было легко отобразить на моей домашней странице.
UPDATE:
Из браузера я могу получить доступ к другим сервлетам (Логин, процесс) через имя "сопоставления" (@WebServlet (value = "/ login"), но не это. Я также создал это с другим именем и не работает Я не могу найти различий между теми, кто работает, и теми, кто не работает.