С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/40: Рейтинг темы: голосов - 40, средняя оценка - 4.73
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789

Ошибка синтаксического анализа XML: корневой элемент не найден

06.06.2019, 15:35. Показов 8174. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
у меня приходит от клиента запрос на удаления пакета id (то есть удаление нескольких записей в базе данных).

rest endpoint
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
    @PostMapping("users/delete")
    public ResponseEntity<Object> deleteUserListByIds(
            @Valid @RequestBody List<UserDto> ids,
            BindingResult bindingResult) {
 
        if (bindingResult.hasErrors()) {
            throw new RuntimeException("Invalid Input Parameters");
        }
 
        usersDeleteService.deleteListUsersByIds(ids);
 
        return ResponseEntity.ok().build();
    }
dto

Java
1
2
3
4
5
6
public class UserDto {
 
    private String id;
 
    private String firstName;
...
метод сервиса занимается обработкой задачи

Java
1
2
3
4
5
6
7
    @Transactional
    @Override
    public void deleteListUsersByIds(List<UserDto> ids) {
 
        List<User> usersIds = userMapper.convertUserDtoListToUserList(ids);
        userRepository.deleteInBatch(usersIds);
    }
маппер четко без ошибок преобразует long в string и обратно.

Java
1
2
3
4
5
6
7
8
9
/*A table for users*/
@Entity
@Table(name = "users")
public class User {
 
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
...
Запрос обрабатывается и я получаю от сервера ответ 200 если пользуюсь для отладки Postman.


Когда я использую для удаления выбранных строк браузер, то ответ сначала получаю 200.

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*Отправка данных на сервер, методом POST
        * sourceDataJson - источник данных, в формате JSON;
        * uri - адрес ресурса;
        * processingValueOfUri(uri) - проверяет, что введен url, если
        * url отсутствует, тогда выбрасывается exception */
        function sendDataWithAjax(uri, sourceDataJson) {
 
            processingValueOfUri(uri);
            var jsonObj = JSON.stringify(sourceDataJson);
 
            $.ajax({
                type: "POST",
                url: uri,
                data: jsonObj,
                headers: {
                    'Content-Type': 'application/json'
                },
                success: function () {
 
                    getDataFromTable(options.urlGetData, '.' + nameTable);
                },
                error: function (error) {
 
                    //applyStyleForHeadContainerOfErr('.' + divErrMessage);
                    messageErr(error, '.' + divErrMessage);
                }
            });
        }
но во время работы с Ajax , когда отработает свойство success, данные запрашиваются и спокойно снова рисуется таблица.

Но в этот момент появляется ошибка

Ошибка синтаксического анализа XML: корневой элемент не найден
Адрес: http://localhost:8080/api/users/delete
Строка 1, символ 1:
переход по ссылке показывает json , который отправлен сервером

JavaScript
1
{"errorCode":400,"errorMessage":"Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'; nested exception is java.lang.NumberFormatException: For input string: \"delete\""}
как эту ошибку можно исправить и что это такое

Миниатюры
Ошибка синтаксического анализа XML: корневой элемент не найден   Ошибка синтаксического анализа XML: корневой элемент не найден  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.06.2019, 15:35
Ответы с готовыми решениями:

Ошибка синтаксического анализа XML: неопределённая сущность
DTD файл &lt;!ELEMENT contacts (contact*)&gt; &lt;!ATTLIST contacts version CDATA #FIXED &quot;1.0&quot;&gt; &lt;!ATTLIST contacts source CDATA...

Ошибка синтаксического анализа
Здравствуйте! строка $select*=*isset($_GET)*&amp;&amp;*($id*=*(int)$_GET)*?*'WHERE*id='.$id*:*null; выдает ошибку. Parse error: in...

Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный в T_STRING
здравствуйте!,я здесь совсем (чайник), новичек, помогите!!!,я взял код на admitad вставил ( в заголовок header.php перед закрытием тега ...

7
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
06.06.2019, 15:38  [ТС]
Свойство error, в данной ajax-функции во время данных запросов не срабатывает, проверено, кто формирует ошибку не знаю.
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
06.06.2019, 15:41
ну так посомтри че там тебе в ответ приходит
0
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
06.06.2019, 15:44  [ТС]
Цитата Сообщение от xoraxax Посмотреть сообщение
ну так посомтри че там тебе в ответ приходит
куда приходит ?

на сервере вообще никаких ошибок не видно, все четко работает.

в отладчике проверял также и серверную часть.

JavaScript
1
{"errorCode":400,"errorMessage":"Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'; nested exception is java.lang.NumberFormatException: For input string: \"delete\""}
Эту ошибку может только сервер отправить, вопрос кто и почему ?

Что значит не могу сконвертировать 'java.lang.String в требуемый тип java.lang.Long, был бы exception в StackTrace ?
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
06.06.2019, 16:17
ощибку браузер генерирует скорее всего, руками запрос отправь и на ответ посмотри, curlом например
0
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
07.06.2019, 21:39  [ТС]
Цитата Сообщение от xoraxax Посмотреть сообщение
curlом например
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
curl -d "[{\"id\":2},{\"id\":3}]" -H "Content-Type: application/json"  http://localhost:8080/api/users/delete -v
*   Trying ::1:8080...
* TCP_NODELAY set
* Connected to localhost (::1) port 8080 (#0)
> POST /api/users/delete HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.65.1
> Accept: */*
> Content-Type: application/json
> Content-Length: 19
>
* upload completely sent off: 19 out of 19 bytes
* Mark bundle as not supporting multiuse
< HTTP/1.1 200
< X-Content-Type-Options: nosniff
< X-XSS-Protection: 1; mode=block
< Cache-Control: no-cache, no-store, max-age=0, must-revalidate
< Pragma: no-cache
< Expires: 0
< X-Frame-Options: DENY
< Content-Length: 0
< Date: Fri, 07 Jun 2019 18:35:45 GMT
<
* Connection #0 to host localhost left intact
вообще не показывает ошибки, так что же ее генерирует, ведь явно кто-то отправляет JSON, и ошибка появляется в Firefox, Chrome и Internet Explorer
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
07.06.2019, 22:22
ну браузер и генерирует очевидно же
0
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
11.06.2019, 20:29  [ТС]
Все же ошибка была в том, что тип id ранее у меня был Long.
Даже когда я поменял класс dto и id стало с типом Stirng ошибка сразу не ушла.
После полной чистки кэша, ошибка исчезла, я полностью удалил проект и заново пересобрал.

Больше ошибки нет.

решено.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.06.2019, 20:29
Помогаю со студенческими работами здесь

Отложение синтаксического анализа JavaScript
как решить траблу?? пробовал через defer=&quot;defer&quot; и async=&quot;async&quot; трабла решается но скрипты не работают

Технологии синтаксического анализа и интерпретации команд
Составить программу, которая проверяет корректность арифметических выражений, в которых могуть быть скобки трех типов &quot;()&quot;,...

Программная реализация алгоритмов лексического и синтаксического анализа
В общем, есть вот такое задание: разработать язык и порождающую грамматику для выбранного варианта задания. Выполнить программную...

Как называется алгоритм для синтаксического анализа?
Всем добрый вечер :) Ищу, значит, алгоритм, который разбирает математическое выражение на токены, а потом вычисляет. Помню, что там...

Как исправить ошибку : В документе XML (0, 0) присутствует ошибка." ( корневой каталог)?
Как исправить ошибку В документе XML (0, 0) присутствует ошибка.&quot; (XmlException: Отсутствует корневой элемент)? Здравствуйте! Прошу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru