inici | jclic | PMF | webstart en Linux

Java WebStart i Linux amb glibc 2.3.3+

Sun Microsystems reconeix una incompatibilitat entre les seves versions de Java WebStart i el component glibc de GNU/Linux, versions 2.3.3 i posteriors. El problema s'explica en aquesta pàgina:

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6188963

Aquest error afecta greument el funcionament del JClic en les versions més recents de Linux, com ara Suse 9.2 o Fedora Core 3. TOTES les aplicacions basades en Java WebStart DEIXEN DE FUNCIONAR en aquests sistemes si es fa servir la plataforma Java de Sun, tant en la versió 1.4 com en la 5.0.

Per comprovar si esteu afectats per aquest problema obriu una cònsola i escriviu:

> /lib/libc.so.6

Si la versió de la GNU C Library que es mostra és 2.3.3 o superior, us aconsellem llegir la resta del document.

Tal com es pot veure a la pàgina indicada, Sun ha etiquetat el problema com a "closed - fixed". Això significa que es considera tancat i solucionat. La solució, diu el document, vindrà amb la segona revisió del nou Java 5.0, que encara no està disponible. En tot cas, caldrà reinstal·lar totalment la plataforma Java amb un canvi de versió principal que pot provocar algun problema de compatibilitat. No s'ofereix cap alternativa als usuaris actuals de Java 1.4 (com no sigui tornar a una versió anterior de GNU/Linux).

En les intervencions dels usuaris que han participat en la discussió provocada per aquest bug s'apunten dues solucions:

  1. Prescindir de la plataforma Java de Sun i instal·lar la distribució alternativa de Blackdown, que va corregir aquest problema immediatament en ser detectat. Aquesta versió es pot descarregar des de:
    http://www.blackdown.org
  2. Instal·lar una versió anterior de Java WebStart i fer-la servir en comptes de l'actual. Sun ja no ofereix descàrregues d'aquest producte, en considerar que ve totalment integrat en les versions més modernes de Java, però afortunadament algú en guardava una còpia. Els passos a seguir són aquests:
    1. Localitzeu on teniu instal·lada la màquina virtual Java. Podeu obrir una consola i escriure:

      > whereis javaws

      Si no disposem de "whereis" caldrà cercar als directoris on el nostre sistema acostuma a emmagatzemar els programes. Busqueu un fitxer anomenat "javaws" que es troba dins d'una carpeta del mateix nom.

      La instal·lació per defecte es realitza a:

      Versió d'usuari (JRE): /usr/java/javaws
      Paquet de desenvolupament (JDK): /usr/java/jre/javaws
      Suse Linux: /usr/lib/jvm/java/jre/javaws

      La màquina virtual Java es troba just un pas per sota, a:

      Versió d'usuari (JRE): /usr/java
      Paquet de desenvolupament (JDK): /usr/java/jre
      Suse Linux: /usr/lib/jvm/java/jre

      En aquest document farem servir l'expressió $JRE_HOME per referir-nos a aquest directori. Podeu optar entre crear una variable d'entorn amb el nom JRE_HOME o simplement substituir totes les aparicions de $JRE_HOME que trobeu pel nom complet del directori. A Suse Linux aquesta variable ve ja definida pel sistema.
    2. Descarregar en aquesta carpeta aquest fitxer: javaws-1_2_0_06-linux-i586-i.zip (801 Kb).
    3. Obrir una consola i accedir al compte de root escrivint su i la contrasenya.
    4. Desplaçar-nos a la carpeta on haguem descarregat el fitxer indicat al punt 2 i crear una carpeta nova, que podríem anomenar instal_javaws:

      > cd xxxx
      > mkdir instal_javaws
    5. Entrar a aquesta nova carpeta i descomprimir el contingut del fitxer, amb:

      > cd instal_javaws
      > unzip ../javaws-1_2_0_06-linux-i586-i.zip
    6. Executar el programa “install.sh”:

      > ./install.sh

      Apareixerà una informació de llicència, a la que cal respondre "yes", i tot seguit ens preguntarà la ubicació de la màquina virtual Java, que ja hem esbrinat al pas 1.

      En acabar pot ser que es posi en marxa la finestra de control de Java WebStart, o que aparegui un error (degut a que l'usuari root no pugui iniciar sessions gràfiques). No passa res. Si ha aparegut la finestra, tanqueu-la.
    7. Veureu que s'ha creat un directori anomenat javaws. Caldrà moure aquesta carpeta al directori de la màquina virtual Java, reemplaçant l'existent:

      > mv $JRE_HOME/javaws $JRE_HOME/javaws.bak
      > mv javaws $JRE_HOME

      En la primera línia canviem el nom de la carpeta “javaws” a “javaws.bak”, per si més endavant haguessim de recuperar el seu contingut.

      En la segona línia movem la carpeta “javaws” (acabada de crear) a la seva ubicació normal.
    8. Sortim de la carpeta d'instal·lació i esborrem el seu contingut:

      > cd ..
      > rm -r instal_javaws
    9. Tanquem la sessió de root amb "exit". Ara ja podem provar el funcionament del Java WebStart, escrivint:

      > $JRE_HOME/javaws/javaws

      Si tot va bé, s'hauria de posar en marxa la finestra de control.
    10. Com a darrer pas, configurem el navegador per tal que assigni l'extensió JNLP al Java WebStart. En el cas del Mozilla Firefox, anem a Edit – Preferences, activem la icona Downloads i, a la part inferior, afegim una entrada per als fitxers amb extensió JNLP (o editem l'existent, si eś que ja hi és). La línia d'ordres hauria d'apuntar a:

      $JRE_HOME/javaws/javaws

      (Nota: probablement aquí no podreu fer servir la variable d'entorn. Substituïu-la pel nom complet del directori)
    11. Comproveu si podeu posar en marxa el JClic des de la pàgina de descàrrega.

 

 
Xarxa Telemàtica Educativa de Catalunya