В eXist-DB 4.4 я столкнулся с проблемой, я не знаю, как продолжить диагностику после исчерпания различных вариантов отладки в течение нескольких часов. Исходные файлы в редактировании внизу.
Я знаю, что это длинный пример, но я надеюсь, что кто-то мог сталкиваться с этой проблемой раньше в eXist-DB. Или, по крайней мере, знаете другие инструменты для подробного отслеживания этого - я использую eXide для написания XQuery и т. Д. В eXist-DB.
Среда eXist app
, которую я настроил, довольно проста, и каждая страница использует один и тот же механизм. До сих пор на каждой странице выводился штраф.
Но я боролся в течение нескольких часов, чтобы понять, почему я получаю вывод в браузер (в Chrome, Firefox и Safari), буквально вырезая средний элемент, как показано ниже , но только из одного HTML шаблон
<!DOCTYPE html>
<html class="no-js">
<head>
<meta charset="utf-8">
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<meta conten
Каждая страница использует одну и ту же систему шаблонов через страницу HTML, проблема в этом случае place.html
. Я уменьшил его до ничего, кроме div
и вызова templates:surround
:
<div data-template="templates:surround"
data-template-with="templates/site_wrapper.html"
data-template-at="content">
<div><p>Finally, an output!</p></div>
</div>
Вышеуказанное вызывает templates:surround
= site_wrapper.html
, который используется любой другой страницей сайта без сбоев или ошибок. Этот шаблон site_wrapper.html
не получает параметров, хотя он вызывает другие шаблоны в форме функций XQuery (опять же, без параметров).
Когда я смотрю в инструментальные средства мониторинга eXist, я вижу, что view
едва регистрирует какое-либо время обработки (по сравнению с другими страницами).
Что касается возможных источников проблем:
controller.xql
... нет, потому что часть страницы является выплевывающейся?
вид ... нет, потому что я не затронул там ничего, кроме того, что работал в течение нескольких недель?
шаблон site_wrapper.html
.... нет, он такой же, как и на любой другой странице, и поэтому не должен создавать проблем?
Я сбит с толку.
РЕДАКТИРОВАТЬ:
Файл XAR находится в https://www.dropbox.com/s/cj2vqo1bkarci46/deheresi-2018-11-06.xar?dl=0 Глобальная системная переменная настроена в globalvar.xql
Можно сравнить place.html
(который не работает) с person.html
(который работает), поскольку они имеют идентичные структуры. Это можно увидеть в действии, открыв exist/apps/deheresi/doc/MS609-0001
и нажав на ссылки в тексте. Любая ссылка, содержащая /deheresi/place/foo_person_name
, дает вышеуказанный результат.