Erreur java ?
#1
Bonjour,

J'ai installé Crème 1.2 sur un serveur Ubuntu 10.24 en 64 bits. Apparemment cela fonctionnait bien.
J'ai essayé de faire un update sur Crème 1.3... et ça s'est mal passé. D'abord je n'avais pas dans /creme le fichier manage.py... J'ai essayé de récupérer celui de la version 1.2, mais ça n'a pas marché...
Je suis revenu en arrière, en faisant un downgrad de django en 1.3.7 (entre autres) et tout refonctionne ou presque. Quand j'essaie un logout j'obtiens une erreur 500. Et en mettant en mode debug j'obtiens
Citation :ViewDoesNotExist at /creme_core/clean/
Could not import activesync.views.sync. Error was: /usr/local/lib/python2.7/dist-packages/Crypto/Cipher/AES.so: wrong ELF class: ELFCLASS32
Le reste semble fonctionner à part le menu qui apparaît à gauche qui a parfois du mal à disparaître.
En allant chercher sur google, il semble que cela pourrait être une erreur java liée à la machine tournant en 64 bits alors qu'il faudrait du 32 bits.
Une idée comment supprimer cette erreur ?
Merci
René
  Répondre
#2
Concernant le passage de 1.2 à 1.3, l'architecture des fichiers de Crème a changé, pour suivre les changements mis en place avec Django 1.4.

Le fichier manage.py est maintenant à la racine de Crème.

Concernant votre erreur niveau Java, je n'ai pour l'instant pas d'idée, nous allons essayer de chercher de notre coté.
  Répondre
#3
Bonjour,

Merci pour votre message. En cherchant sur google, il semble bien que le message d'erreur que j'obtiens provienne d'un problème de 32/64 bits sur la machine virtuelle Java.
Voilà un exemple de ce que j'ai trouvé (l'application n'a rien à voir, mais le message d'erreur est similaire).
Citation : You guessed it correctly - you cannot load 32-bit shared object into the 64-bit process. There are two ways to fix this:

a) You could install and use a 32-bit JVM. You will have to get the JVM from the Sun web site and install it yourself; do not use your distro's package manager (as far as I know, all of it's JVMs will be 64-bit if the OS is 64-bit).)

b) You need to get a 64-bit shared object. This means checking with the shared object's vendor to see if they have one for 64-bit.
dans le forum http://www.coderanch.com/t/421574/JBoss/...s-ELFCLASS

Pour le passage en 1.3, je vais regarder, mais peut-être sur un nouveau serveur pour éviter les interactions... Effectivement, je n'avais pas vu le manage.py... au temps pour moi.

René
  Répondre
#4
Oui effectivement c'est bien un problème de java.
Mais à priori installer un java 32 bits sur votre serveur devrait résoudre les problèmes.
  Répondre
#5
Bonsoir,

J'ai installé et activé une JVM en 32 bits, et cela ne change rien. J'obtiens strictement la même erreur.
Dans la mesure où le message d'erreur faisait allusion au paquet crypto-cypher, j'ai mis à jour ce paquet pour du 64 bits et j'ai reactivé la JVM en 64 bits. Toujours la même erreur, avec le même message...
  Répondre
#6
Même si c'est une méthode non optimale, vous pouvez temporairement mettre en commentaire le contenu de ROOT_MEDIA_FILTERS dans votre local_settings.py

Code :
ROOT_MEDIA_FILTERS = {
    #'js':  'mediagenerator.filters.yuicompressor.YUICompressor',
    #'css': 'mediagenerator.filters.yuicompressor.YUICompressor',
}

Java ne devrait plus être appelé, mais les scripts Javascript et les fichiers CSS ne seront alors plus 'minifiés', ce qui entraînera sûrement une baisse des performances, mais elle sera je pense assez minimale. Il existe des minifieurs en pur Python, qui permettraient de se débarrasser de la dépendance à Java (avec sans doute un résultat légèrement inférieur), mais je n'ai pas encore pu me pencher sur la question et tester lesdits minifieurs.
  Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 4 visiteur(s)