A voir également:
- Java.security.accesscontrolexception: access denied ("java.net.socketpermission" "127.0.0.1:1099" "connect,resolve")
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java itel football - Télécharger - Jeux vidéo
- Jeux java itel 5360 ✓ - Forum Mobile
- Java jre - Télécharger - Langages
45 réponses
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
28 déc. 2003 à 18:29
28 déc. 2003 à 18:29
Salut,
Il me semble que le port que tu utilises n'est pas le même dans le fichier HelloImpl (port 1000) et le fichier java.policy (port 1024 et suivant) ...
De plus, le port normalement utilisé par RMI est le 1099 ...
As-tu essayé le port par defaut (1099) à la fois dans le fichier java.policy et la classe HelloImpl ?
De plus, tu écris que le fichier qui gère les permissions s'appelle java.policy et dans la ligne de commande qui démarre le serveur, tu as écris 'policy' et non java.policy ...
Et n'oublie pas d'arrêter et de redemarrer le rmiregistry à chaque fois que tu modifies et donc recompile tes classes (de même si tu modifies le fichier java.policy)
J'espere que ça t'aideras ...
sfx
Il me semble que le port que tu utilises n'est pas le même dans le fichier HelloImpl (port 1000) et le fichier java.policy (port 1024 et suivant) ...
De plus, le port normalement utilisé par RMI est le 1099 ...
As-tu essayé le port par defaut (1099) à la fois dans le fichier java.policy et la classe HelloImpl ?
De plus, tu écris que le fichier qui gère les permissions s'appelle java.policy et dans la ligne de commande qui démarre le serveur, tu as écris 'policy' et non java.policy ...
Et n'oublie pas d'arrêter et de redemarrer le rmiregistry à chaque fois que tu modifies et donc recompile tes classes (de même si tu modifies le fichier java.policy)
J'espere que ça t'aideras ...
sfx
donc j'ai essayé en lancant rmiregistry sur le port 1000
C:\TEST>java -Djava.security.policy=policy rmidemo.HelloImpl
HelloServer enregistrÚ dans le registry
c'est bien ce que j'avais mis dans HelloImpl
public static void main(String args[])
{
//
//cré et installe un security manager
//
if (System.getSecurityManager() == null) {
System.setSecurityManager(new SecurityManagerPermissif());
}
try{
HelloImpl obj = new HelloImpl("HelloServer");
Naming.rebind("//192.168.0.5:1000/HelloServer", obj);
System.out.println("HelloServer enregistré dans le registry");
}
catch (Exception e){
System.out.println("HelloImpl err: " + e.getMessage());
e.printStackTrace();
}
}
} alors après je lance index.html parce que c'est fait avec un applet
//HelloApplet.java
//
package rmidemo;
import java.awt.Graphics;
import java.rmi.Naming;
public class HelloApplet extends java.applet.Applet {
String message = "";
public void init() {
try {
Hello obj = (Hello)Naming.lookup("//" +
getCodeBase().getHost() + "/HelloServer");
message = obj.sayHello();
} catch (Exception e) {
System.out.println("HelloApplet exception: " +
e.getMessage());
e.printStackTrace();
}
}
public void paint (Graphics g) {
g.drawString(message, 25, 50);
}
}
Il me dit que l'applet est démarré mais ya rien qui s'affiche et là ya une console java qui lance et dedans j'ai un msg d'erreur :
HelloApplet exception: Connection refused to host: 192.168.0.5; nested exception is:
java.net.ConnectException: Connection refused: connect
java.rmi.ConnectException: Connection refused to host: 192.168.0.5; nested exception is:
java.net.ConnectException: Connection refused: connect
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at java.rmi.Naming.lookup(Unknown Source)
at rmidemo.HelloApplet.init(HelloApplet.java:10)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Tu me dis "De plus, tu écris que le fichier qui gère les permissions s'appelle java.policy et dans la ligne de commande qui démarre le serveur, tu as écris 'policy' et non java.policy ... "...euh..faudrait que j'écive quoi alors?????
Gaëlle
C:\TEST>java -Djava.security.policy=policy rmidemo.HelloImpl
HelloServer enregistrÚ dans le registry
c'est bien ce que j'avais mis dans HelloImpl
public static void main(String args[])
{
//
//cré et installe un security manager
//
if (System.getSecurityManager() == null) {
System.setSecurityManager(new SecurityManagerPermissif());
}
try{
HelloImpl obj = new HelloImpl("HelloServer");
Naming.rebind("//192.168.0.5:1000/HelloServer", obj);
System.out.println("HelloServer enregistré dans le registry");
}
catch (Exception e){
System.out.println("HelloImpl err: " + e.getMessage());
e.printStackTrace();
}
}
} alors après je lance index.html parce que c'est fait avec un applet
//HelloApplet.java
//
package rmidemo;
import java.awt.Graphics;
import java.rmi.Naming;
public class HelloApplet extends java.applet.Applet {
String message = "";
public void init() {
try {
Hello obj = (Hello)Naming.lookup("//" +
getCodeBase().getHost() + "/HelloServer");
message = obj.sayHello();
} catch (Exception e) {
System.out.println("HelloApplet exception: " +
e.getMessage());
e.printStackTrace();
}
}
public void paint (Graphics g) {
g.drawString(message, 25, 50);
}
}
Il me dit que l'applet est démarré mais ya rien qui s'affiche et là ya une console java qui lance et dedans j'ai un msg d'erreur :
HelloApplet exception: Connection refused to host: 192.168.0.5; nested exception is:
java.net.ConnectException: Connection refused: connect
java.rmi.ConnectException: Connection refused to host: 192.168.0.5; nested exception is:
java.net.ConnectException: Connection refused: connect
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at java.rmi.Naming.lookup(Unknown Source)
at rmidemo.HelloApplet.init(HelloApplet.java:10)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Tu me dis "De plus, tu écris que le fichier qui gère les permissions s'appelle java.policy et dans la ligne de commande qui démarre le serveur, tu as écris 'policy' et non java.policy ... "...euh..faudrait que j'écive quoi alors?????
Gaëlle
Salut,
Tu doit aller dans MSDOS
vas dans demrrer/excuter/et tape command puis click ok
pour aller à la racine tape cd.. quand tu est dans la racine
soit C:\tape edit autoexec.bat editeur apparait en bleu
et faut rajouter un ligne de code qui est :
path=C:\JDK ou SDK autre\bin puis enregistrer le fichier
et redamarrer l'ordinateur.
toto.java compiler avec javac.toto.java
pour le fichier class.
Joyeux noël et bonne année vlt
Tu doit aller dans MSDOS
vas dans demrrer/excuter/et tape command puis click ok
pour aller à la racine tape cd.. quand tu est dans la racine
soit C:\tape edit autoexec.bat editeur apparait en bleu
et faut rajouter un ligne de code qui est :
path=C:\JDK ou SDK autre\bin puis enregistrer le fichier
et redamarrer l'ordinateur.
toto.java compiler avec javac.toto.java
pour le fichier class.
Joyeux noël et bonne année vlt
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
27 déc. 2003 à 09:28
27 déc. 2003 à 09:28
Salut,
Est-ce que le serveur et le client sont une seule et même machine ?
Si non, le serveur est-il derrière un firewall ?
sfx
Est-ce que le serveur et le client sont une seule et même machine ?
Si non, le serveur est-il derrière un firewall ?
sfx
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut et merci à tous,
vlt, j'ai déjà ajouter les cmd java dans la variable d'environnement PATH. Pour "toto.java compiler avec javac.toto.java
pour le fichier class. " je ne vois pas le rapport.
sfx, le client et le serveur sont sur la même machine, mais le but de ce programme car c'est du java avec RMI c'est que n'importe quel client puisse y accéder .
idsp23, pour compiler un programme java, en ligne de commande tu tapes javac repertoireparent.nomduprogramme
Sinon est ce que quell'un a réussi à décoder la soluce de mon probleme que j'ai trouvé sur le net?
Gaëlle
vlt, j'ai déjà ajouter les cmd java dans la variable d'environnement PATH. Pour "toto.java compiler avec javac.toto.java
pour le fichier class. " je ne vois pas le rapport.
sfx, le client et le serveur sont sur la même machine, mais le but de ce programme car c'est du java avec RMI c'est que n'importe quel client puisse y accéder .
idsp23, pour compiler un programme java, en ligne de commande tu tapes javac repertoireparent.nomduprogramme
Sinon est ce que quell'un a réussi à décoder la soluce de mon probleme que j'ai trouvé sur le net?
Gaëlle
rameur
Messages postés
135
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
21 janvier 2009
21
27 déc. 2003 à 20:08
27 déc. 2003 à 20:08
configurer les variables d env sous windows :
tu ouvres c:\autoexec.bat
tu ajoutes les lignes
set path = %path%;= $jdk_home$\bin
set classpath = $jdk_home$\lib\tools.jar;. ($jdk_home$=
rep ou java est installe et . le rep courant)
tu redemarre ensuite et maintenant tu peux compiler ou excuter tes classes a partir de n importe quel rep
pour compiler ton prg a partir de msdos tu te places dans le rep qui contient tes classes par ex toto.java et tu tapes
javac toto.java
pour executer
java toto (pas d extension !)
tu peux utiliser un editeur de texte comme textpad (fait 1 recherche sur le web)qui est gratuit et vachement pratique pour deboguer et executer tes prg (tu regardes dans le menu tools\run tu changes le rep courant et les champs adequats)
la ligne de commande est fastidieuse surtout quand tu fais trop d erreur
tu ouvres c:\autoexec.bat
tu ajoutes les lignes
set path = %path%;= $jdk_home$\bin
set classpath = $jdk_home$\lib\tools.jar;. ($jdk_home$=
rep ou java est installe et . le rep courant)
tu redemarre ensuite et maintenant tu peux compiler ou excuter tes classes a partir de n importe quel rep
pour compiler ton prg a partir de msdos tu te places dans le rep qui contient tes classes par ex toto.java et tu tapes
javac toto.java
pour executer
java toto (pas d extension !)
tu peux utiliser un editeur de texte comme textpad (fait 1 recherche sur le web)qui est gratuit et vachement pratique pour deboguer et executer tes prg (tu regardes dans le menu tools\run tu changes le rep courant et les champs adequats)
la ligne de commande est fastidieuse surtout quand tu fais trop d erreur
bonsoir tout le monde et merci pour toutes vos réponses,
mais jevais devoir recentrer le sujet...je n'ai pas de probleme de varaible d'environnement et ttou et tout.
je viens de créer mon 1er prog en java - rmi, point d'erreur à la compile ..mais une au lancement du serveur (tous les fichiers se trouvent sur la meme machine) :
java.security.AccessControlException: access denied
(java.net.SocketPermission 127.0.0.1:1099 connect,resolve)
j'ai donc trouvé sur le net ce qui pourrait etre la solution mais du haut de mes 5 jours de java (c'est pour un projet pour mon école) je ne trouve pas ce que j'ai trouvé très claire..je demandais donc si quelqu'un saurait mexpliquer ce qui est dit dans le 1er msg de ce sujet en gras de façon claire. Si quelqu'un connait RMI (remote method invocation) merci de me faire un grand signe!! merci à tous et bisous
Gaëlle
mais jevais devoir recentrer le sujet...je n'ai pas de probleme de varaible d'environnement et ttou et tout.
je viens de créer mon 1er prog en java - rmi, point d'erreur à la compile ..mais une au lancement du serveur (tous les fichiers se trouvent sur la meme machine) :
java.security.AccessControlException: access denied
(java.net.SocketPermission 127.0.0.1:1099 connect,resolve)
j'ai donc trouvé sur le net ce qui pourrait etre la solution mais du haut de mes 5 jours de java (c'est pour un projet pour mon école) je ne trouve pas ce que j'ai trouvé très claire..je demandais donc si quelqu'un saurait mexpliquer ce qui est dit dans le 1er msg de ce sujet en gras de façon claire. Si quelqu'un connait RMI (remote method invocation) merci de me faire un grand signe!! merci à tous et bisous
Gaëlle
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
28 déc. 2003 à 08:29
28 déc. 2003 à 08:29
Salut,
Ton problème vient du security manager que tu as mis en place ...
Est-ce que tu lui précises quel fichier policy utiliser ? Pour être plus précis, est-ce que tu lui donne, dans ta ligne de commande, le fichier policy à utiliser ?
(tu as un mot clé à utiliser dans ta ligne de commande)
@+
sfx
Ton problème vient du security manager que tu as mis en place ...
Est-ce que tu lui précises quel fichier policy utiliser ? Pour être plus précis, est-ce que tu lui donne, dans ta ligne de commande, le fichier policy à utiliser ?
(tu as un mot clé à utiliser dans ta ligne de commande)
@+
sfx
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
28 déc. 2003 à 09:05
28 déc. 2003 à 09:05
Salut,
Il faut rajouter, dans ta ligne de commande qui démarre ton serveur, le texte suivant :
-Djava.security.policy=<chemin relatif ou absolu de ton fichier java.policy>
@+
sfx
Il faut rajouter, dans ta ligne de commande qui démarre ton serveur, le texte suivant :
-Djava.security.policy=<chemin relatif ou absolu de ton fichier java.policy>
@+
sfx
Salut,
merci à tous pour vos réponses, sfx je vais essayer ce que tu m'as dit ...idsp23 je ne connais pas la solution à ton problème...
Merci également à la personne (désolée j'ai oublié le pseudo) qui m'as mit un lien vers un problème similaire.
Je me penche dessus et je vous tiens au courant.
A bientot
Gaëlle
merci à tous pour vos réponses, sfx je vais essayer ce que tu m'as dit ...idsp23 je ne connais pas la solution à ton problème...
Merci également à la personne (désolée j'ai oublié le pseudo) qui m'as mit un lien vers un problème similaire.
Je me penche dessus et je vous tiens au courant.
A bientot
Gaëlle
Re les jeunes,
alors voilà j'ai effectué quelques modifications en fonction de ce que j'ai trouvé sur Internet mais j'ai toujours un problème....
j'ai modifié le java.policy avec la ligne
permission java.net.SocketPermission "192.168.0.5:1024-", "listen,connect,resolve";
J'ai créé dans mon package le fichier SecurityManagerPermissif.java
package rmidemo
import java.rmi.*;
import java.security.*;
public class SecurityManagerPermissif extends RMISecurityManager {
public void checkPermission(Permission p) {
//ne fait rien
}
}
Je l'ai compilé sans difficulté.
Et j'ai modifié le main de mon fichier HelloImpl.java
public static void main(String args[])
{
if (System.getSecurityManager()== null) {
System.setSecurityManager(new SecurityManagerPermissif());
}
try{
HelloImpl obj = new HelloImpl("HelloServer");
Naming.rebind("//192.168.0.5:1000/HelloServer", obj);
System.out.println("HelloServer enregistré dans le registry");
}
catch (Exception e){
System.out.println("HelloImpl err: " + e.getMessage());
e.printStackTrace();
}
}
}
Quand je lance la commande:
java -Djava.security.policy=policy rmidemo.SecurityManagerPermissif
j'ai l'erreur suivante :
Exception in thread "main" java.lang.NoSuchMethodError: main
Je ne sais vraiment plus quoi faire...
Un coup de main serait vraiment le bienvenu
Gaëlle
alors voilà j'ai effectué quelques modifications en fonction de ce que j'ai trouvé sur Internet mais j'ai toujours un problème....
j'ai modifié le java.policy avec la ligne
permission java.net.SocketPermission "192.168.0.5:1024-", "listen,connect,resolve";
J'ai créé dans mon package le fichier SecurityManagerPermissif.java
package rmidemo
import java.rmi.*;
import java.security.*;
public class SecurityManagerPermissif extends RMISecurityManager {
public void checkPermission(Permission p) {
//ne fait rien
}
}
Je l'ai compilé sans difficulté.
Et j'ai modifié le main de mon fichier HelloImpl.java
public static void main(String args[])
{
if (System.getSecurityManager()== null) {
System.setSecurityManager(new SecurityManagerPermissif());
}
try{
HelloImpl obj = new HelloImpl("HelloServer");
Naming.rebind("//192.168.0.5:1000/HelloServer", obj);
System.out.println("HelloServer enregistré dans le registry");
}
catch (Exception e){
System.out.println("HelloImpl err: " + e.getMessage());
e.printStackTrace();
}
}
}
Quand je lance la commande:
java -Djava.security.policy=policy rmidemo.SecurityManagerPermissif
j'ai l'erreur suivante :
Exception in thread "main" java.lang.NoSuchMethodError: main
Je ne sais vraiment plus quoi faire...
Un coup de main serait vraiment le bienvenu
Gaëlle
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
28 déc. 2003 à 17:06
28 déc. 2003 à 17:06
Salut Gaelle,
La méthode main n'est pas dans ta classe SecurityManagerPermissif mais dans la classe HelloImpl ....
Tu dois donc executer le fichier rmidemo.HelloImpl et non SecurityManagerPermissif (qui est appelé par HelloImpl)
sfx
La méthode main n'est pas dans ta classe SecurityManagerPermissif mais dans la classe HelloImpl ....
Tu dois donc executer le fichier rmidemo.HelloImpl et non SecurityManagerPermissif (qui est appelé par HelloImpl)
sfx
Re sfx, merci encore pour toutes réponses, ça me panique un peu moins , je me sens moins seule ;)
Alors j'ai donc éxecuter ceci
C:\TEST>java -Djava.security.policy=policy rmidemo.HelloImpl
et voici l'erreur (nouvelle )
Exception in thread "main" java.lang.Error: ProblÞme de compilation non rÚsolu :
Erreur de syntaxe sur le mot clÚ "import"; ";" attendu
at rmidemo.SecurityManagerPermissif.<init>(SecurityManagerPermissif.java
:3)
at rmidemo.HelloImpl.main(HelloImpl.java:21)
pour la premier erreur à propos de import c'est bien rédigé je comprends pas, je te mets ci dessous le SecurityManagerPermissif
package rmidemo
import java.rmi.*;
import java.security.*;
public class SecurityManagerPermissif extends RMISecurityManager {
public void checkPermission(Permission p) {
//ne fait rien
}
}
Poiur l'autre erreur dans le main, il est dans mon msg précédent mais je vois pas non plus pourquoi ça coinceet ce qu'il faut faire.
Gaëlle
Alors j'ai donc éxecuter ceci
C:\TEST>java -Djava.security.policy=policy rmidemo.HelloImpl
et voici l'erreur (nouvelle )
Exception in thread "main" java.lang.Error: ProblÞme de compilation non rÚsolu :
Erreur de syntaxe sur le mot clÚ "import"; ";" attendu
at rmidemo.SecurityManagerPermissif.<init>(SecurityManagerPermissif.java
:3)
at rmidemo.HelloImpl.main(HelloImpl.java:21)
pour la premier erreur à propos de import c'est bien rédigé je comprends pas, je te mets ci dessous le SecurityManagerPermissif
package rmidemo
import java.rmi.*;
import java.security.*;
public class SecurityManagerPermissif extends RMISecurityManager {
public void checkPermission(Permission p) {
//ne fait rien
}
}
Poiur l'autre erreur dans le main, il est dans mon msg précédent mais je vois pas non plus pourquoi ça coinceet ce qu'il faut faire.
Gaëlle
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
28 déc. 2003 à 17:45
28 déc. 2003 à 17:45
Salut,
Il faut un ';' à la fin de la ligne
package rmidemo
@+
sfx
Il faut un ';' à la fin de la ligne
package rmidemo
@+
sfx
Merci sfx ,
bon après avoir corrigé cette erreur, voilà on msg qui revient :
C:\TEST>java -Djava.security.policy=policy rmidemo.HelloImpl
HelloImpl err: Connection refused to host: 192.168.0.5; nested exception is:
java.net.ConnectException: Connection refused: connect
java.rmi.ConnectException: Connection refused to host: 192.168.0.5; nested excep
tion is:
java.net.ConnectException: Connection refused: connect
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown S
ource)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown S
ource)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
at java.rmi.Naming.rebind(Unknown Source)
at rmidemo.HelloImpl.main(HelloImpl.java:25)
retour à la case départ on dirait! :(
Gaëlle
bon après avoir corrigé cette erreur, voilà on msg qui revient :
C:\TEST>java -Djava.security.policy=policy rmidemo.HelloImpl
HelloImpl err: Connection refused to host: 192.168.0.5; nested exception is:
java.net.ConnectException: Connection refused: connect
java.rmi.ConnectException: Connection refused to host: 192.168.0.5; nested excep
tion is:
java.net.ConnectException: Connection refused: connect
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown S
ource)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown S
ource)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
at java.rmi.Naming.rebind(Unknown Source)
at rmidemo.HelloImpl.main(HelloImpl.java:25)
retour à la case départ on dirait! :(
Gaëlle
en tapant
java -Djava.security.policy=java.policy rmidemo.HelloImpl
la meme erreur qu'au msg ci-dessus... ;(
Merci pour ton attention sfx...je commence à désespérer là!
Gaëlle
java -Djava.security.policy=java.policy rmidemo.HelloImpl
la meme erreur qu'au msg ci-dessus... ;(
Merci pour ton attention sfx...je commence à désespérer là!
Gaëlle
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
29 déc. 2003 à 08:48
29 déc. 2003 à 08:48
Salut Gaelle,
Essaie de changer le numéro de port ... essaie avec 1099 ( les ports en dessous de 1024 posent un problème quelque fois ...)
sfx
Essaie de changer le numéro de port ... essaie avec 1099 ( les ports en dessous de 1024 posent un problème quelque fois ...)
sfx
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
29 déc. 2003 à 11:07
29 déc. 2003 à 11:07
Resalut,
Tu peux aussi modifier ton fichier java.policy en mettant comme unique permission celle-ci :
grant {
permission java.security.AllPermission;
};
Ce qui donne tous les droits pour n'importe quel port ... c'est juste un test ... A ne surtout pas utiliser dans le cadre d'une appli réelle ... ;-))
@+
sfx
Tu peux aussi modifier ton fichier java.policy en mettant comme unique permission celle-ci :
grant {
permission java.security.AllPermission;
};
Ce qui donne tous les droits pour n'importe quel port ... c'est juste un test ... A ne surtout pas utiliser dans le cadre d'une appli réelle ... ;-))
@+
sfx
Salut,
ça fonctionne en faisaint tout passer par le port 1099, merci :)
Mais maintenant j'ai un autre problème, moi j'ai fait ça avec un applet mais en fait il faut un client applicatif tout court parce que le but c'est qu'à partir d'un autre poste et bien ça m'affiche Hello World...Je me mets sur le client de suite et je vous teins au courant, car je pense rencontrer (encore!!) des difficultées.
Gaëlle
ça fonctionne en faisaint tout passer par le port 1099, merci :)
Mais maintenant j'ai un autre problème, moi j'ai fait ça avec un applet mais en fait il faut un client applicatif tout court parce que le but c'est qu'à partir d'un autre poste et bien ça m'affiche Hello World...Je me mets sur le client de suite et je vous teins au courant, car je pense rencontrer (encore!!) des difficultées.
Gaëlle
Resalut,
voilà j'ai fait un client, enfin on m'avait fourni le code mais j'ai des petites erreurs dedans :
//HelloMain.java
//
package rmidemo;
import java.rmi.Naming;
public class HelloMain {
public static void main(String[] args) {
try {
Hello obj = (Hello)Naming.lookup("//"+args[0]+"/HelloServer");
message = obj.sayHello();
System.out.println("Le message est: "+message);
} catch (Exception e) {
System.out.println("HelloMain exception: "+e.getMessage());
e.printStackTrace();
}
}
}
Les erreurs sont à aux lignes suivantes:
message = obj.sayHello();
System.out.println("Le message est: "+message);
on me dit que message ne peut pas être résolu :(
Gaëlle
voilà j'ai fait un client, enfin on m'avait fourni le code mais j'ai des petites erreurs dedans :
//HelloMain.java
//
package rmidemo;
import java.rmi.Naming;
public class HelloMain {
public static void main(String[] args) {
try {
Hello obj = (Hello)Naming.lookup("//"+args[0]+"/HelloServer");
message = obj.sayHello();
System.out.println("Le message est: "+message);
} catch (Exception e) {
System.out.println("HelloMain exception: "+e.getMessage());
e.printStackTrace();
}
}
}
Les erreurs sont à aux lignes suivantes:
message = obj.sayHello();
System.out.println("Le message est: "+message);
on me dit que message ne peut pas être résolu :(
Gaëlle
Resalut,
voilà j'ai fait un client, enfin on m'avait fourni le code mais j'ai des petites erreurs dedans :
//HelloMain.java
//
package rmidemo;
import java.rmi.Naming;
public class HelloMain {
public static void main(String[] args) {
try {
Hello obj = (Hello)Naming.lookup("//"+args[0]+"/HelloServer");
message = obj.sayHello();
System.out.println("Le message est: "+message);
} catch (Exception e) {
System.out.println("HelloMain exception: "+e.getMessage());
e.printStackTrace();
}
}
}
Les erreurs sont à aux lignes suivantes:
message = obj.sayHello();
System.out.println("Le message est: "+message);
on me dit que message ne peut pas être résolu :(
Gaëlle
voilà j'ai fait un client, enfin on m'avait fourni le code mais j'ai des petites erreurs dedans :
//HelloMain.java
//
package rmidemo;
import java.rmi.Naming;
public class HelloMain {
public static void main(String[] args) {
try {
Hello obj = (Hello)Naming.lookup("//"+args[0]+"/HelloServer");
message = obj.sayHello();
System.out.println("Le message est: "+message);
} catch (Exception e) {
System.out.println("HelloMain exception: "+e.getMessage());
e.printStackTrace();
}
}
}
Les erreurs sont à aux lignes suivantes:
message = obj.sayHello();
System.out.println("Le message est: "+message);
on me dit que message ne peut pas être résolu :(
Gaëlle
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
29 déc. 2003 à 14:59
29 déc. 2003 à 14:59
Salut,
Une bonne chose de faite ... Les ports en dessous de 1024 sont (en général) réservés pour d'autres protocoles et uniquement accessibles par des processus systèmes (sous Unix ... sous Windows, je suppose que c'est plus ou moins la même chose)
Peux-tu donner le message d'erreur (complet) que tu as maintenant ?
sfx
Une bonne chose de faite ... Les ports en dessous de 1024 sont (en général) réservés pour d'autres protocoles et uniquement accessibles par des processus systèmes (sous Unix ... sous Windows, je suppose que c'est plus ou moins la même chose)
Peux-tu donner le message d'erreur (complet) que tu as maintenant ?
sfx
RE tout le monde et surtout toua sfx ;)
pour windows aussi les ports jusqu'à 1024 sont en général réservés mais je n'y avais pas pensé ;)
En fait, c'était une erreur , j'ai trouvé, il fgallait mettre
String message = obj.sayHello(); y'avait pas le String.
Par contre maintenant je sais pas comment me connecter avec le client...j'ai lancé le registry, le serveur tout passe..
mais alors et pour le client?? dans un premier temps à partir de mon poste où il y a le serveur qui tourne, et puis bien sur à partir d'un autre pc connecté sur le même Lan? Tu sais comment je dois faire?
Gaëlle
pour windows aussi les ports jusqu'à 1024 sont en général réservés mais je n'y avais pas pensé ;)
En fait, c'était une erreur , j'ai trouvé, il fgallait mettre
String message = obj.sayHello(); y'avait pas le String.
Par contre maintenant je sais pas comment me connecter avec le client...j'ai lancé le registry, le serveur tout passe..
mais alors et pour le client?? dans un premier temps à partir de mon poste où il y a le serveur qui tourne, et puis bien sur à partir d'un autre pc connecté sur le même Lan? Tu sais comment je dois faire?
Gaëlle
re,
en lançant le client comme ça ( à partir du pc où il y a tout)
C:\TEST>java rmidemo.HelloMain
voilà l'erreur :
HelloMain exception: null
java.lang.ArrayIndexOutOfBoundsException
at rmidemo.HelloMain.main(HelloMain.java:10)
Gaëlle
en lançant le client comme ça ( à partir du pc où il y a tout)
C:\TEST>java rmidemo.HelloMain
voilà l'erreur :
HelloMain exception: null
java.lang.ArrayIndexOutOfBoundsException
at rmidemo.HelloMain.main(HelloMain.java:10)
Gaëlle
silfaxu
Messages postés
102
Date d'inscription
jeudi 18 décembre 2003
Statut
Contributeur
Dernière intervention
6 février 2008
11
29 déc. 2003 à 15:20
29 déc. 2003 à 15:20
Salut Gaelle,
C'est normal ... tu dois donner en paramètre le serveur à contacter ... (c'est args[0] de ton client) ....
java demormi.HelloMain localhost
ou
java demormi.HelloMain 127.0.0.1
sfx
C'est normal ... tu dois donner en paramètre le serveur à contacter ... (c'est args[0] de ton client) ....
java demormi.HelloMain localhost
ou
java demormi.HelloMain 127.0.0.1
sfx