sto cercando di distribuire un'applicazione che utilizza il nativo attuazione Tibrv attraverso il biblioteca TibrvJ utilizzando Java Web Start.Java Web Start con Tibco nativi Libs
ho confezionato su tutte le finestre DLL dall'interno c:\tibco\tibrv\bin
in un file JAR e hanno aggiunto questi all'elemento nativelib
nel file di JNLP.
Speravo che webstart avrebbe preso il dll file dal file tibco-7.5.1-nativelibs.jar
e consentire loro di essere caricati tramite System.loadLibrary
che viene chiamato da Tibrv.open()
. Tuttavia non sembra voler funzionare correttamente.
mio JNLP di file è simile al seguente:
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE jnlp PUBLIC "-//Sun Microsystems, Inc//DTD JNLP Descriptor 6.0//EN" "http://java.sun.com/dtd/JNLP-6.0.dtd">
<jnlp spec="6.0+"
codebase="http://somewhere:8080/my-gui/application"
href="launch.jnlp">
<information>
<title>My GUI</title>
<vendor>Technology</vendor>
<description>Dashboard</description>
<description kind="short">Dashboard</description>
<icon href="icon/Stocks-128x128.png" />
<offline-allowed />
<shortcut online="true">
<desktop />
<menu submenu="Dashboard" />
</shortcut>
</information>
<security>
<all-permissions />
</security>
<update check="always" policy="prompt-update" />
<resources>
<j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"
java-vm-args="-Xmx120M -ea />
<property name="log4j.configuration" value="live/log4j.xml" />
<property name="swing.aatext" value="true" />
<jar href="tibrvj-7.5.1.jar" />
<jar href="dashboard-gui.jar" main="true" />
</resources>
<resources>
<nativelib href="nativelib/tibco-7.5.1-nativelibs.jar" />
</resources>
<application-desc main-class="com.somewhere.Main">
<argument>classpath:/live/client.xml</argument>
<argument>/live/live.properties</argument>
</application-desc>
</jnlp>
Viene avviata l'applicazione, ma non appena viene effettuata una chiamata per aprire TIB poi cade a pezzi con un errore lungo le linee di:
[Root exception è TibrvException [errore = 22, messaggio = Versione non corrispondente: libtibrv versione 7.4 non corrisponde alla versione di libreria condivisa di tibrvj 7.5]]
TibrvException [errore = 901, message = Biblioteca non trovato: tibrvj]]
Gli utenti hanno una varietà di Tib installazioni già sul proprio PC da Tib 7.2 fino alla 7.5. L'applicazione Webstart funziona correttamente solo su una macchina con 7.5 installato che corrisponde al file Jar all'interno del pacchetto. Quindi non sembra fare nulla con il vaso nativelib.
Vorrei evitare di dover distribuire 3 versioni dell'applicazione Web Start per le diverse versioni di Tib installate dagli utenti.
Qualcun altro è riuscito a ottenere questa combinazione di TibrvJ e Webstart di lavoro?
Hai risolto il problema? – pjp