Я новичок в install4j и stackoverflow, поэтому извиняюсь, если мой запрос не структурирован должным образом.
Мы используем install4j версии 6.1.2 (сборка 6275). Когда наше приложение запускается, автообновление install4j получает следующую ошибку, когда проверяет наличие обновлений, а обновление не выполняется (приложение запускается со старой версией):
[ERROR] com.install4j.runtime.beans.actions.update.CheckForUpdateAction [ID 322]: could not download file
java.io.IOException
java.io.IOException
at com.install4j.runtime.installer.helper.XmlHelper.createIoException(XmlHelper.java:307)
at com.install4j.runtime.installer.helper.XmlHelper.parse(XmlHelper.java:90)
at com.install4j.runtime.installer.helper.XmlHelper.parseFile(XmlHelper.java:44)
at com.install4j.runtime.installer.helper.XmlHelper.parseFile(XmlHelper.java:40)
at com.install4j.runtime.installer.config.update.UpdateDescriptorImpl.read(UpdateDescriptorImpl.java:73)
at com.install4j.runtime.beans.actions.update.CheckForUpdateAction.execute(CheckForUpdateAction.java:38)
at com.install4j.runtime.beans.actions.SystemInstallOrUninstallAction.install(SystemInstallOrUninstallAction.java:29)
at com.install4j.runtime.installer.ContextImpl$7.executeAction(ContextImpl.java:1668)
at com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1659)
at com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1656)
at com.install4j.runtime.installer.helper.comm.actions.FetchObjectAction.execute(FetchObjectAction.java:14)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionDirect(HelperCommunication.java:272)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionInt(HelperCommunication.java:247)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionChecked(HelperCommunication.java:185)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.fetchObjectChecked(HelperCommunication.java:168)
at com.install4j.runtime.installer.ContextImpl.performActionIntStatic(ContextImpl.java:1656)
at com.install4j.runtime.installer.InstallerContextImpl.performActionInt(InstallerContextImpl.java:151)
at com.install4j.runtime.installer.ContextImpl.performAction(ContextImpl.java:1103)
at com.install4j.runtime.installer.controller.Controller.executeAction(Controller.java:367)
at com.install4j.runtime.installer.controller.Controller.executeActions(Controller.java:333)
at com.install4j.runtime.installer.controller.Controller.handleCommand(Controller.java:194)
at com.install4j.runtime.installer.controller.Controller.start(Controller.java:94)
at com.install4j.runtime.installer.Application.runApplication(Application.java:71)
at com.install4j.runtime.installer.Application.runApplicationInProcess(Application.java:52)
at com.install4j.runtime.installer.helper.apiimpl.ApplicationLauncherImpl$1.run(ApplicationLauncherImpl.java:39)
at com.install4j.runtime.installer.helper.apiimpl.ApplicationLauncherImpl.launchApplicationInProcess(ApplicationLauncherImpl.java:46)
at com.install4j.api.launcher.ApplicationLauncher.launchApplicationInProcess(ApplicationLauncher.java:58)
at com.install4j.runtime.launcher.LauncherIntegration$2.run(LauncherIntegration.java:110)
at com.install4j.runtime.launcher.LauncherIntegration.processLauncherIntegration(LauncherIntegration.java:114)
at com.install4j.runtime.launcher.LauncherIntegration.processLauncherIntegrations(LauncherIntegration.java:58)
at com.install4j.runtime.launcher.LauncherIntegration.processLauncherIntegrations(LauncherIntegration.java:51)
at com.install4j.runtime.launcher.LauncherIntegration.checkIntegrations(LauncherIntegration.java:38)
at com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:25)
Caused by: org.xml.sax.SAXParseException; systemId: file:/C:/Users/.../AppData/Local/Temp/i4jupd5100269909742792694.xml; lineNumber: 1; columnNumber: 50; White spaces are required between publicId and systemId.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at com.install4j.runtime.installer.helper.XmlHelper.parse(XmlHelper.java:88)
... 31 more
Execute action not successful after 61 ms
[INFO] com.install4j.runtime.beans.screens.CustomizableProgressScreen [ID 320]: Canceled
Наши обновления. xml начинается файл со следующей строкой:
<?xml version="1.0" encoding="UTF-8"?>
У нас есть несколько сред развертывания, которые используют одну и ту же версию install4j для одного и того же приложения, но используют разные места назначения и номера версий. Автоматические обновления работают правильно в большинстве этих сред, и обновления. xml файлы в этих средах начинаются с той же строки, что и среда, в которой возникла эта проблема.
Я не думал, что это связано , но на всякий случай правильно работающие среды используют внутренние сайты. Среда, в которой произошел сбой, - это размещенный сайт AWS.
Изменить:
Файл, указанный в журнале, не существует. Но похоже, что другие попытки оставили после себя файлы i4jupd *. xml, каждый из которых имеет формат HTML, указывающий на обновления. xml файл был перемещен «сюда»
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="https://.../updates.xml">here</a>.</p>
</body></html>
Спасибо за ваш время!