Я только что столкнулся с ситуацией, для решения которой потребовалось много времени, когда в моей среде разработки все работало нормально, но в производственной среде оно умирало тихо .
Сначала я подумал, что это может быть проблема с пространством имен XML в файле каталога, но это был тупик.
Оказывается, что наличие объявления DOCTYPE для one файлов catalog.xml в иерархии каталогов было виновником.Разница между средой разработки и производством, которую я упустил из виду, заключалась в том, что последняя (VDI в закрытой интрасети) не имеет доступа к открытому интернету.Поэтому преобразователю каталога не удалось открыть системный идентификатор файла catalog.dtd (т. Е. URL-адрес http:
).Как только я удалил декларацию DOCTYPE, все заработало как положено.
Очень расстраивает.То, что распознаватель каталога молчал об этом, можно было бы считать ошибкой - он должен пропустить ошибку такого рода хотя бы в журналы или, предпочтительно, выдать исключение.
Как правило, вывероятно, может обработать ваш catalog.xml как правильно сформированный XML, так что, как правило, можно пропустить объявление DOCTYPE.