CORBA probleme avec Linux - Java - Programmation
Marsh Posté le 16-07-2004 à 09:56:38
Ton NamingService tourne sur la même machine que ton appli ?
Il est bien lancé ? Les ports sont corrects ainsi que le nom de machine ?
Y'a pas de firewall ?
Marsh Posté le 16-07-2004 à 15:09:52
y a pas de firewall. Le Naming service tourne sur la mme machine.
Les ports et la machine sont corrects à 200%.
Up
Marsh Posté le 16-07-2004 à 15:34:09
Tu le lances via orbd ?
P-e un pb de JAVA_HOME/CLASSPATH.
Sinon, ok pour com. .. .corba, mais le ORB.resolve...() est bizarre.
L'idee du firewall me plaisait bien.
Marsh Posté le 16-07-2004 à 15:49:46
Ben poste nous le bout code qui fait la connexion au NamingService.
Tu as bien mis les mêmes nom de machine et de port dans ton appli et quand tu lances le NamingService ?
Marsh Posté le 16-07-2004 à 15:58:05
les démos fournis avec ton ORB tournent-elles ?
genre la démo du NS ?
Marsh Posté le 16-07-2004 à 16:39:38
JE lance via ORBD
mon classpath est ok
mon java_home n'existe pas, je vais checker avec ça
Marsh Posté le 16-07-2004 à 16:48:34
Je repete que mon ORBD est sur la mme machine que moin appli servant. et ça semble poser un pb sous linux (alors que sous Winxp non).
Marsh Posté le 16-07-2004 à 16:52:53
Ben ca peut quand même être un problème lié aux paramètres que tu passes au NamingService et à ton appli.
Tu ne veut pas nous donner les paramètres de lancement ?
Marsh Posté le 16-07-2004 à 17:07:23
mm les scripts :
L'orbd :
/usr/java/j2re1.4.2_04/bin/orbd -ORBInitialPort 1050 -ORBInitialHost localhost
L'appli :
export CLASSPATH=$CLASSPATH:.:Pricer.jarusr/java/j2re1.4.2_04/lib/rt.jarusr/java/j2re1.4.2_04/lib/extusr/java/j2re1.4.2_04/lib
export JAVA_HOME=$JAVA_HOMEusr/java/j2re1.4.2_04
/usr/java/j2re1.4.2_04/bin/java -Djava.security.policy=Vol.policy VolatilityServer -ORBInitialPort 1050 -ORBInitialHost localhost
Marsh Posté le 10-08-2004 à 10:19:44
mon fichier /etc/hosts :
127.0.0.1 localhost.otcex localhost
10.0.0.93 einstein.otcex einstein
le code des .sh pour lancer l'orb et le servant vous avez déja, mais j'ai tt essayé :
export CLASSPATH=$CLASSPATH:.:Pricer.jarusr/java/j2re1.4.2_04/lib/rt.jarusr/java/j2re1.4.2_04/lib/ext
export JAVA_HOME=$JAVA_HOMEusr/java/j2re1.4.2_04
/usr/java/j2re1.4.2_04/bin/orbd -ORBInitialPort 1050 -ORBInitialHost 10.0.0.93
et
export CLASSPATH=$CLASSPATH:.:Pricer.jarusr/java/j2re1.4.2_04/lib/rt.jarusr/java/j2re1.4.2_04/lib/extusr/java/j2re1.4.2_04/lib
export JAVA_HOME=$JAVA_HOMEusr/java/j2re1.4.2_04
/usr/java/j2re1.4.2_04/bin/java VolatilityServer -ORBInitialPort 1050 -ORBInitialHost 10.0.0.93
le code du servant :
Properties props = new Properties();
props.put("org.omg.CORBA.ORBInitialPort", args[1]);
props.put("org.omg.CORBA.ORBInitialHost", args[3]);
orb = ORB.init(args,props);
POA rootpoa = POAHelper.narrow(orb.resolve_initial_references("RootPOA" ));
rootpoa.the_POAManager().activate();
VolatilityServer monserveur = new VolatilityServer();
org.omg.CORBA.Object ref = rootpoa.servant_to_reference(monserveur);
serverVolatility.server href = serverHelper.narrow(ref);
org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService" );
NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
String name = "MyServer";
NameComponent path[] = ncRef.to_name(name);
ncRef.rebind(path, href);
orb.run();
Marsh Posté le 10-08-2004 à 10:20:30
je répete que ça fonctionne parfaitement sous Windows Xp.
Marsh Posté le 10-08-2004 à 10:29:47
Si tu remplace
Code :
|
par:
Code :
|
Ca t'affiche quoi ?
Marsh Posté le 10-08-2004 à 10:41:02
ça mne m'affiche rien d'autre que l'erreur :
[root@einstein ServeurVol]# ./Lancementserv.sh
Erreur ds le main rg.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
at com.sun.corba.se.internal.iiop.ConnectionTable.getConnection(Unknown Source)
at com.sun.corba.se.internal.iiop.ConnectionTable.getConnection(Unknown Source)
at com.sun.corba.se.internal.iiop.GIOPImpl.getConnection(Unknown Source)
at com.sun.corba.se.internal.corba.ClientDelegate.createRequest(Unknown Source)
at com.sun.corba.se.internal.corba.ClientDelegate.createRequest(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.getInitialServices(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.cachedServices(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.list_initial_services(Unknown Source)
at com.sun.corba.se.internal.corba.ORB.list_initial_services(Unknown Source)
at VolatilityServer.main(VolatilityServer.java:99)
Marsh Posté le 10-08-2004 à 10:46:13
Code :
|
ça me donne
Code :
|
Marsh Posté le 11-08-2004 à 16:56:53
Oups, désolé pour le message précédent, je pensais pouvoir éditer...
J'ai eu le même problème avec OpenOrb 1.3.1 en passant sous la 1.4.0 beta 2 j'ai résolu mon problème !
Marsh Posté le 11-08-2004 à 16:59:24
Un truc tout con
tu as essayé ça:
/usr/java/j2re1.4.2_04/bin/orbd -ORBInitialPort 1050 -ORBInitialHost 127.0.0.1
au lieu de ça: /usr/java/j2re1.4.2_04/bin/orbd -ORBInitialPort 1050 -ORBInitialHost localhost ??
Marsh Posté le 21-08-2004 à 15:56:45
C est pas une question de droit de root ?
Je dis ca mais je debute seulement sous java et linux je suis se qu on appelle un utilisateur en pleine decouverte ( seulement 1 ans d utilisation )
Marsh Posté le 25-08-2004 à 14:01:01
Good news : Le serveur se lance il fallait rajouter :
-ORBServerHost 10.0.0.93 dans le lancement de l'appli serveur.
Cela ne fontionne que si je me connecte avec un client windows, et si je bascule mon appli cliente sur un Linux (RedHat 8.0) cela ne marche pas !
Je vais craquer
Marsh Posté le 25-08-2004 à 15:03:36
Le problème sur la machine Linux
Code :
|
Marsh Posté le 25-08-2004 à 15:04:25
Hors 10.0.0.93 est bien l'adresse de l'application Serveur (et mon client windows s'y connecte et utilise ses fonctions parfaitement)
Marsh Posté le 25-08-2004 à 16:21:36
Avec vi j'obtiens :
Code :
|
c'est koi ce caractere ^M ??? comment je le vire ? c normal ?
Marsh Posté le 25-08-2004 à 16:33:27
Comment tu bascules ton appli de Windows à Linux ? Par FTP ?
Marsh Posté le 25-08-2004 à 17:22:36
Keski peut rajouter ce caractere ? je pense que c'est ça qui fait chier.
Marsh Posté le 25-08-2004 à 18:06:06
avec vi, tu peux essayer de le virer via
%s/CtrlV-CtrlM//
enfin, tu tapes pas textuellement CtrlV-CtrlM mais tu fais
CtrlV-CtrlM qui affiche en general ^M
Sinon, c'est la commande "tr".
Marsh Posté le 26-08-2004 à 09:09:42
Mais c'est pas le pb de le virer ! ça sert a rien de le virer du fichier de log ...
Petit historique : Je compile mon idl (idlj -fall gnagna.idl) sur une machine windows, ensuite j'exporte les .class sur ma machine linux.
Comme je l'ai déja dit : client linux server windows ça marche.
client linux server linux ça marche pas.
ça peut venir du fa
Marsh Posté le 26-08-2004 à 09:10:59
Keski peut rajouter ce caractere ? je pense que c'est ça qui fait chier.
Récapitulatif : Je compile mon idl sur une machine Windows et je transfer sur la machine linux de prod mes .class.
Client linux et server linux ça fonctionne.
Client linux et serveur linux ça marche pas.
ça peut venir de ça d'apres vous ?
Marsh Posté le 26-08-2004 à 10:49:45
t'as essayé d'utiliser les interfaces générées par le précompilo idl de linux sous linux ?
ou de compiler tout simplement tes sources sous linux plutot qu'exporter les .class ?
On a parfois des surprises ...
Marsh Posté le 15-07-2004 à 17:38:59
Salut evreybody,
J'ai une appli CORBA (java Sun 1.4.2) qui tourne a merveille sous WinXP, je doit le foutre sur une @#"{##) de machine Linux.
Or je n'arrive pas me connecter au service de nommage. et j'obtiens :
org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
at com.sun.corba.se.internal.iiop.ConnectionTable.getConnection(Unknown Source)
at com.sun.corba.se.internal.iiop.ConnectionTable.getConnection(Unknown Source)
at com.sun.corba.se.internal.iiop.GIOPImpl.getConnection(Unknown Source)
at com.sun.corba.se.internal.corba.ClientDelegate.createRequest(Unknown Source)
at com.sun.corba.se.internal.corba.ClientDelegate.createRequest(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.resolve(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.resolveUsingBootstrapProtocol(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.cachedInitialReferences(Unknown Source)
at com.sun.corba.se.internal.corba.InitialNamingClient.resolve_initial_references(Unknown Source)
at com.sun.corba.se.internal.corba.ORB.resolve_initial_references(Unknown Source)
at VolatilityServer.main(VolatilityServer.java:115)
J'ai parcouru tt les forum essayer toutes les solutions (sauf la bonne apparement). mon /etc/hosts et correct avec 127.0.0.1 localhost
Bref au secours...