J'ai testé l'exécution du .jar directement à partir de la console putty et la il semblerai que j'ai un problème dans mon exécutable java : Exception indexOutOfBoundsException index: 0, size: 0
Donc pour essayé de débuggé ceci, j'ai bossé sur mon ordi en local pour être plus confort, avec eclipse et tout le toutime...
J'ai bien sur repris le même fichier pour tester et la, BIZZARE: aucun bug!!!
Plus d'Exception indexOutOfBoundsException !!!
La ça devient vraiment chelou...
Je remarque quelque chose, lorsque j'ai loué ce serveur chez OVH il y a un mois, il y avait une ancienne version de JAVA dessus (1.4) et mon programme nécessitait la version 1.6 pour être conforme...
Donc, j'ai suivi les conseils de quelqu'un pour me mettre à jour (car je n'y connais rien en mise à jour sous linux) en tapant la commande:
Code :
yum install java-1.6.0-openjdk
Et effectivement ça m'avait bien mis à jour et j'ai pu faire marcher mon exécutable.
Or il me semble que le openjdk n'est pas exactement le même que le jre fournit par sun
De plus chez moi en locale (là où il n'y a pas de bug), j'ai le JRE de Sun qui est installé...
Pensez-vous que ceci explique cela et qu'il faut que je me mette à changer et passer à la JRE de sun? ou avez-vous une autre idée ?
Merci
[EDIT]
je viens de voir que le bug que j'ai est reporté ici, dans la database des bugs de sun
[^] # Re: précisions
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 2.
C'était du au fait que dans mon applic java , y a un set time max au dela du quel si il ne trouve pas le calcul, il doit arreter...
J'ai augmenter ce set time limit et ca marche!
(mon serveur est plus lent que mon PC...)
pfiou tout ca pr ca!!!
Encore merci a vous :D
[^] # Re: précisions
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 0.
C'était du au fait que dans mon applic java , y a un set time max au dela du quel si il ne trouve pas le calcul, il doit arreter...
J'ai augmenter ce set time limit et ca marche!
(mon serveur est plus lent que mon PC...)
pfiou tout ca pr ca!!!
Encore merci a vous :D
# précisions
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 1.
ça marche chez moi en local avec le jdk de sun 1.6 mais sur mon serveur opendjdk 1.6 ça bug des fois...
[^] # Re: Des suites
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 1.
J'ai testé l'exécution du .jar directement à partir de la console putty et la il semblerai que j'ai un problème dans mon exécutable java : Exception indexOutOfBoundsException index: 0, size: 0
Donc pour essayé de débuggé ceci, j'ai bossé sur mon ordi en local pour être plus confort, avec eclipse et tout le toutime...
J'ai bien sur repris le même fichier pour tester et la, BIZZARE: aucun bug!!!
Plus d'Exception indexOutOfBoundsException !!!
La ça devient vraiment chelou...
Je remarque quelque chose, lorsque j'ai loué ce serveur chez OVH il y a un mois, il y avait une ancienne version de JAVA dessus (1.4) et mon programme nécessitait la version 1.6 pour être conforme...
Donc, j'ai suivi les conseils de quelqu'un pour me mettre à jour (car je n'y connais rien en mise à jour sous linux) en tapant la commande:
Code :
yum install java-1.6.0-openjdk
Et effectivement ça m'avait bien mis à jour et j'ai pu faire marcher mon exécutable.
Or il me semble que le openjdk n'est pas exactement le même que le jre fournit par sun
De plus chez moi en locale (là où il n'y a pas de bug), j'ai le JRE de Sun qui est installé...
Pensez-vous que ceci explique cela et qu'il faut que je me mette à changer et passer à la JRE de sun? ou avez-vous une autre idée ?
Merci
[EDIT]
je viens de voir que le bug que j'ai est reporté ici, dans la database des bugs de sun
# Des suites
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 1.
Finalement, je suis passé par un fichier...
Mais malheureusement, y a encore un problème !
En fait, c'est bizarre mais même en passant par un fichier, quand la chaine est trop longue ben la aussi ma fonction exec me plante !
voici ma commande dans mon script PHP:
Code :
unset($res);
exec ("java -Djava.endorsed.dirs=".PUBLIC_HTML_PATH."/java/ressource -jar ".PUBLIC_HTML_PATH."/java/executable.jar \"$completePathFileName\"", $res, $return_var);
Et bien figurez-vous que malgré cela, lorsque mon argument est trop grand ça ne passe pas alors que ça passe lorsqu'il est moins long...
D'ailleurs, $return_var renvoi 1 à ce moment là (alors que normalement, il me semble qu'il doit renvoyer 0 lorsque tout s'est bien déroulé)
Any idea?
[^] # Re: fichier ou mémoire partagée
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à -1.
Concretement, voila ce que je fais actuellement dans mon script PHP:
exec ("java -jar /var/www/executable.jar \"$arg1\" \"$arg2\"", $res, $return_var);
Et j'ai le resultat dans la variable $res.
Pouvez-vous me donner l'equivalent avec le "tube nomme" ?
Merci
[^] # Re: fichier ou mémoire partagée
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 1.
[^] # Re: fichier ou mémoire partagée
Posté par benthebest . En réponse au message Taille d'un argument passé en ligne de commande limité !. Évalué à 1.