#java #prefix #stackify
#java #префикс #stackify
Вопрос:
Вопрос из двух частей, которые могут быть или не быть связаны друг с другом.
Я использую Stackify с префиксом v3.0.28 для Java-приложения на Win10, и, как правило, кажется, что все работает нормально: я вижу следы различных действий в нашем приложении.
Часть 1:
При переходе на любую страницу нашего приложения я получаю два неудачных запроса на загрузку файлов JS:
http://127.0.0.1:2/scripts/sfclient.xhr.min.js
http://127.0.0.1:2/scripts/sfclient.perf.prefix.min.js
Оба этих запроса завершаются ошибкой ERR_CONNECTION_REFUSED. Этих ссылок на сценарии нет на моей странице JSP, поэтому я предполагаю, что они вводятся с помощью Prefix.
Вот необработанный HTML, который пытается загрузить 2 сценария:
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><script src="http://127.0.0.1:2/scripts/sfclient.xhr.min.js"></script>
<script>var SPerfLib = window.SPerfLib || {}; SPerfLib.RequestId = '54fd58d1-7f7e-d3a4-0001-331676a83598'; if(!SPerfLib.isAttached) { document.addEventListener('DOMContentLoaded', function() { var l = document.createElement('script'); l.src = 'http://127.0.0.1:2/scripts/sfclient.perf.prefix.min.js'; document.body.appendChild(l);}); SPerfLib.isAttached = true;}</script>
Я пытался искать параметры конфигурации, но не нашел ни одного. Я не был уверен, должны ли скрипты быть сервером с порта 2 или нет. Вывод трассировки префикса взят из порта 2012, и это кажется правильным.
Я попытался удалить и переустановить префикс, но с теми же результатами. Похоже, что не существует какой-либо более поздней версии Prefix, которую можно попробовать.
Как мне добиться успешной загрузки этих скриптов?
Часть 2:
На одной конкретной странице у нас есть XHR для извлечения некоторых данных JSON. Сервер возвращает данные правильно, но они каким-то образом удаляются до того, как они попадают в браузер. Заголовки ответа показывают статус 200, но 0 байт content-length
, что затем приводит к сбою некоторых наших JS на странице. Если я запускаю то же самое без префикса, все работает как ожидалось — статус по-прежнему равен 200, но content-length
равен 37, и видна полезная нагрузка JSON.
Это заголовок ответа для XHR, когда используется префикс (примечание content-length: 0
)
cache-control: no-cache, must-revalidate
content-language: en-US
content-length: 0
content-type: text/html
date: Mon, 31 Aug 2020 14:19:24 GMT
expires: Thu, 01 Jan 1970 00:00:00 GMT
last-modified: Mon, 31 Aug 2020 14:19:24 GMT
pragma: no-cache
server: WildFly/10
status: 200
x-powered-by: Undertow/1
x-powered-by: JSP/2.3
x-stackifyid: V1|8bbdce1c-a507-bbdc-0001-3378bff33740|
Если я удалю агент Stackify из параметров JVM и отключу профилировщик, тогда заголовок ответа будет выглядеть следующим образом:
cache-control: no-cache, must-revalidate
content-language: en-US
content-length: 37
content-type: text/html;charset=UTF-8
date: Mon, 31 Aug 2020 14:25:12 GMT
expires: Thu, 01 Jan 1970 00:00:00 GMT
last-modified: Mon, 31 Aug 2020 14:25:12 GMT
pragma: no-cache
server: WildFly/10
status: 200
x-powered-by: Undertow/1
Я благодарен за любые предложения!
Комментарии:
1. Можете ли вы показать нам эти проблемные страницы? Они развернуты где-нибудь?
2. @IgorKanshyn К сожалению, страницы недоступны онлайн, поэтому я добавил HTML, который загружает скрипты, а также заголовки ответов «плохие» И «хорошие».
Ответ №1:
Эти проблемы, с которыми вы сталкиваетесь с префиксом, являются известными проблемами с префиксом. Мы работаем над полной перезаписью префикса (причина, по которой произошла такая большая задержка с момента нашего последнего выпуска), и эти элементы мы исправляем в новой версии префикса. Мы очень близки к выпуску бета-версии для Prefix, если вы хотите быть в списке, чтобы попробовать бета-версию Prefix, напишите в службу поддержки Stackify support@stackify.com