2015-11-24 3 views
0

У меня проблема с приложением Java Web Start. У меня есть приложение JavaEE, работающее в контейнере Wildfly 9. Я передаю файл свойств в приложение Web Start, которое содержит URL-адрес файла csv и URL-адрес файла шаблона.Wildfly возвращает кешированные значения для HTTP-запроса при развертывании из военного файла

Когда я запускаю приложение в первый раз, приложение загружает файл свойств, загружает URL-адрес из записей файла свойств и загружает файл csv и шаблонный файл и выполняет слияние с файлами.

Когда я запускаю приложение «Веб-запуск», второе, третье ... время, когда он всегда загружает файл свойств с первого запуска. Даже файл свойств перезаписывается каждый раз, когда пользователь запускает приложение Web Start.

Я обнаружил, что при развертывании моего приложения в Wildfly через «Полный публикация» из eclipse приложение Web Start работает нормально, но когда я развертываю свое приложение через «Project -> Export -> WAR file», и поместите файл .war в папку развертывания в моей установке Wildfly, я получаю описанное выше поведение.

Некоторые ДОПОЛНИТЕЛЬНО: Развертывание с помощью "файла WAR Экспорт" вывод на консоль, первый запуск:

Java Web Start 11.65.2.17 
JRE-Version verwenden 1.8.0_65-b17 Java HotSpot(TM) Client VM 
Benutzer-Home-Verzeichnis = C:\Users\arthurw 
c: Konsolenfenster löschen 
f: Objekte in Finalisierungs-Queue finalisieren 
g: Garbage Collect 
h: Diese Hilfemeldung anzeigen 
m: Speicherauslastung drucken 
o: Logging auslösen 
p: Proxykonfiguration neu laden 
q: Konsole ausblenden 
r: Policy-Konfiguration neu laden 
s: System- und Deployment-Eigenschaften ausgeben 
t: Threadliste ausgeben 
v: Threadstack ausgeben 
0-5: Traceebene auf <n> setzen 

CacheEntry[http://localhost:8080/browser/resources/webstart/715.jnlp]: updateAvailable=true,lastModified=Tue Nov 24 12:23:01 CET 2015,length=831 
CacheEntry[http://localhost:8080/browser/resources/webstart/Textverwaltungsschnittstelle.jar]: updateAvailable=true,lastModified=Tue Nov 24 12:21:14 CET 2015,length=2728463 
Missing Permissions manifest attribute in main jar: http://localhost:8080/browser/resources/webstart/Textverwaltungsschnittstelle.jar 
CacheEntry[http://localhost:8080/browser/resources/webstart/715.properties]: updateAvailable=true,lastModified=Tue Nov 24 12:23:34 CET 2015,length=298 
Content-Type = application/octet-stream 
Content-Disposition = null 
Content-Length = 298 
fileName = 715.properties 
File downloaded 
Content-Type = application/octet-stream 
Content-Disposition = null 
Content-Length = 2823 
fileName = 715_2015_11_24_12_26_16.csv 
File downloaded 
Content-Type = application/octet-stream 
Content-Disposition = null 
Content-Length = 37405 
fileName = 715_2015_11_24_12_26_16.DOCX 
File downloaded 
The Library been loaded, and an activeX component been created 

второй прогон:

Java Web Start 11.65.2.17 
JRE-Version verwenden 1.8.0_65-b17 Java HotSpot(TM) Client VM 
Benutzer-Home-Verzeichnis = C:\Users\arthurw 
---------------------------------------------------- 
c: Konsolenfenster löschen 
f: Objekte in Finalisierungs-Queue finalisieren 
g: Garbage Collect 
h: Diese Hilfemeldung anzeigen 
m: Speicherauslastung drucken 
o: Logging auslösen 
p: Proxykonfiguration neu laden 
q: Konsole ausblenden 
r: Policy-Konfiguration neu laden 
s: System- und Deployment-Eigenschaften ausgeben 
t: Threadliste ausgeben 
v: Threadstack ausgeben 
0-5: Traceebene auf <n> setzen 
---------------------------------------------------- 
Missing Permissions manifest attribute in main jar: http://localhost:8080/browser/resources/webstart/Textverwaltungsschnittstelle.jar 
Content-Type = application/octet-stream 
Content-Disposition = null 
Content-Length = 298 
fileName = 715.properties 
File downloaded 
Content-Type = application/octet-stream 
Content-Disposition = null 
Content-Length = 2823 
fileName = 715_2015_11_24_12_26_16.csv 
File downloaded 
Content-Type = application/octet-stream 
Content-Disposition = null 
Content-Length = 37405 
fileName = 715_2015_11_24_12_26_16.DOCX 
File downloaded 
The Library been loaded, and an activeX component been created 

И это JNLP-файл

<?xml version="1.0" encoding="utf-8"?> 
<jnlp spec="1.0+" codebase="http://localhost:8080/browser/resources/webstart" href="715.jnlp"> 
    <information> 
      <title>Textverwaltung Schnittstelle</title> 
      <description>automatisierte Serienbriefbefüllung mithilfe Ihrer Textverwaltung</description> 
    </information> 
    <security> 
      <all-permissions/> 
    </security> 
    <resources> 
      <j2se version="1.6+" /> 
      <jar href="Textverwaltungsschnittstelle.jar" main="true"/> 
    </resources> 
    <update check="always" policy="always"/> 
    <application-desc main-class="mm.Textverwaltungsschnittstelle"> 
     <argument>http://localhost:8080/browser/resources/webstart/715.properties</argument> 
    </application-desc> 
</jnlp> 

Мне нужно заставить его работать с развертыванием через «Экспорт WAR-файла». Кто-нибудь знает, в чем проблема?

------------------------------ ИЗОБРАЖЕНИЕ --------------- ----------------------

Это процесс загрузки файла свойств, здесь все хорошо, я могу вручную открыть файл свойств и контент правильный.

Properties clientprops=new Properties(); 
clientprops.put("modus", modus); 
clientprops.put("templatepath", templateUrl); 
clientprops.put("csvpath", csvUrl); 
String propertypath=jnlpdir + user + ".properties"; 
File fp = new File(propertypath); 
OutputStream out; 
try { 
    out = new FileOutputStream(fp); 
    clientprops.store(out, "Benötigte Attribute für die Aktivierung der Textverwaltungsschnittstelle"); 
} catch (IOException e2) { 
    e2.printStackTrace(); 
} 

То, как я загрузить файл свойств

File proppath = new File(tmpdir + "prop.properties"); 
URL url; 
try { 
    url = new URL(args[0]); 
    FileUtils.copyURLToFile(url, proppath); 
} catch (IOException e) { 
    showFehler("Properties konnten nicht kopiert werden"); 
} 

copyURLToFile (URL, proppath) является методом из appache FileUtils. Загруженный файл свойств имеет недопустимый контент. Это каждый раз контент с первого запуска.

Sincerly Артур

+0

Привет, Jan, 715.properties отлично, только его содержимое меняется каждый раз, но загруженные 715.properties в веб-старте имеют содержимое с первого запуска, что неверно. Я отредактирую свое сообщение, чтобы показать вам код, который обрабатывает загрузку и загрузку. –

+0

Привет, Ян, я понял, что когда я открываю файл свойств с firefox, я получаю все то же содержимое с первого запуска. Но когда я перехожу к папке с помощью проводника окон и открываю файл свойств там, он имеет правильный контент.Я думаю, что wildfly дает мне кешированную версию файла 715.properties, когда я делаю HTTP-запрос для этого ресурса. –

+0

Привет, Ян, действительно, файл свойств не был обновлен в файле войны. Я сделал обходной путь, создав новый файл свойств с уникальным именем файла и сделав запрос на этот новый файл. спасибо за помощь –

ответ

0

Как обсуждался:

Файл свойств, загруженный в ред приложении WebStart необходимо обновить и включен в опубликованном .WAR работать. Так что это не WebStart или wildfly или JNLP вообще, а что-то, что нужно учитывать во время процесса сборки.

 Смежные вопросы

  • Нет связанных вопросов^_^