Мой класс в проекте находится в пакете com.project.controller, а имя класса сервлета - UpdateDatabaseController. Соответствующий код файла web.xml:

<servlet>
    <servlet-name>UpdateDatabaseController</servlet-name>
    <servlet-class>com.project.controller.UpdateDatabaseController</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>UpdateDatabaseController</servlet-name>
    <url-pattern>/UpdateDB</url-pattern>
  </servlet-mapping>

На странице html у меня есть кнопка, вызывающая функцию updateDatabase (). И код скрипта:

$scope.updateDatabase = function(){
        $http.get('/UpdateDB').success(function(data) {
            alert("Controller hit");
        });
    };

Каждый раз, когда я нажимаю кнопку, в журнале браузера отображается ошибка: "NetworkError: 404 Not Found - http: // localhost: 8080 / UpdateDB"

Я хочу, чтобы при нажатии кнопки вызывался метод POST класса сервлета. Но ошибка фиксируется в журнале браузера. Я не могу решить эту ситуацию.

0
Prateek Gangopadhyay 5 Мар 2015 в 11:55

2 ответа

Лучший ответ

Вы пропустили название проекта в своем URL localhost:8080/ProjectName/UpdateDB

0
Ahmed Adel 5 Мар 2015 в 09:28
$scope.updateDatabase = function(){
        $http.get('http://localhost/YourProject/UpdateDB').success(function(data) {
            alert("Controller hit");
        });
    };

У меня была та же проблема, и я решил ее, добавив http:// перед ссылкой.

1
petre 3 Дек 2015 в 08:28