TP05 - lancement de startServer.bat

Modérateurs : graffion, jmdouin, agoncal, mlebihan

Michel_l
Messages : 7
Inscription : 22 nov. 2010 18:35

TP05 - lancement de startServer.bat

Message par Michel_l » 22 nov. 2010 18:45

Bonjour,

Lorsque je lance startServer.bat dans un autre fenêtre DOS, j'ai l'erreur suivante :
GRAVE: Petstore services couldn't be registered

Trace du lancement :

"C:\Program Files\Java\jdk1.6.0_18"\bin\java -cp ..\build\server.jar;..\build\common.jar;\lib\mysql-connector-java-5.1.5-bin.jar -Djava.util.logging.config.file=mylogging.properties com.yaps.petstore.server.RegisterServices

22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPEndpoint <clinit>
FIN: main: localHostKnown = true, localHost = 88.164.188.66
22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPTransport <init>
FIN: main: Version = 2, ep = [88.164.188.66:0]
22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPEndpoint getLocalEndpoint
FIN: main: created local endpoint for socket factory null on port 0
22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPTransport listen
FIN: main: (port 0) create server socket
22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPEndpoint setDefaultPort
FIN: main: default port for server socket factory null and client socket factory null set to 60513
22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPTransport$AcceptLoop executeAcceptLoop
FIN: RMI TCP Accept-0: listening on port 60513
22 nov. 2010 18:30:56 sun.rmi.server.UnicastRef newCall
FIN: main: get connection
22 nov. 2010 18:30:56 sun.rmi.transport.tcp.TCPChannel createConnection
FIN: main: create connection
22 nov. 2010 18:30:56 sun.rmi.transport.proxy.RMIMasterSocketFactory createSocket
FIN: main: host: 88.164.188.66, port: 1099
22 nov. 2010 18:30:57 com.yaps.petstore.server.RegisterServices main
GRAVE: Petstore services couldn't be registered


J'ai aussi l'erreur "Could not bind a service" à chaque exécution de classe Delegate

Merci d'avance

graffion
Messages : 662
Inscription : 21 juin 2005 14:05

Re: TP05 - lancement de startServer.bat

Message par graffion » 23 nov. 2010 11:20

2 pistes :
- essayer de tout reconstruire avant de relancer starServer :
> ant yaps-clean
> ant

- regarder le fichier de log créé bin/applicationLog0.xml. (Il doit contenir le détail de l'exception levée par Naming.rebind)

Code : Tout sélectionner

    public static void main(final String[] args) {
        final String mname = "main";

        try {
            Naming.rebind(CATALOG_SERVICE, new CatalogService());
            Naming.rebind(CUSTOMER_SERVICE, new CustomerService());
            Naming.rebind(ORDER_SERVICE, new OrderService());
            Trace.info(_cname, mname, "Petstore services are registered.");
        } catch (Exception e) {
            Trace.severe(_cname, mname, "Petstore services couldn't be registered");
            Trace.throwing(_cname, mname, e);
        }
    }

Michel_l
Messages : 7
Inscription : 22 nov. 2010 18:35

Re: TP05 - lancement de startServer.bat

Message par Michel_l » 23 nov. 2010 22:01

Bonjour,

J'ai relancé ant et ensuite startServer.
La même erreur apparait.

Dans le fichier bin/applicationLog0.xml, j'ai l'exception :

<record>
<date>2010-11-23T22:49:20</date>
<millis>1290548960262</millis>
<sequence>31</sequence>
<logger>com.yaps.petstore</logger>
<level>FINER</level>
<class>com.yaps.petstore.server.RegisterServices</class>
<method>main</method>
<thread>10</thread>
<message>THROW</message>
<exception>
<message>java.rmi.ConnectException: Connection refused to host: 88.164.188.66; nested exception is:
java.net.ConnectException: Connection refused: connect</message>
<frame>
<class>sun.rmi.transport.tcp.TCPEndpoint</class>
<method>newSocket</method>
<line>601</line>
</frame>
<frame>
<class>sun.rmi.transport.tcp.TCPChannel</class>
<method>createConnection</method>
<line>198</line>
</frame>
<frame>
<class>sun.rmi.transport.tcp.TCPChannel</class>
<method>newConnection</method>
<line>184</line>
</frame>
<frame>
<class>sun.rmi.server.UnicastRef</class>
<method>newCall</method>
<line>322</line>
</frame>
<frame>
<class>sun.rmi.registry.RegistryImpl_Stub</class>
<method>rebind</method>
</frame>
<frame>
<class>java.rmi.Naming</class>
<method>rebind</method>
<line>160</line>
</frame>
<frame>
<class>com.yaps.petstore.server.RegisterServices</class>
<method>main</method>
</frame>
</exception>
</record>

Merci d'avance

graffion
Messages : 662
Inscription : 21 juin 2005 14:05

Re: TP05 - lancement de startServer.bat

Message par graffion » 23 nov. 2010 22:34

Essayez de désactiver votre pare-feu (à partir du panneau de configuration).

Xander
Messages : 5
Inscription : 16 nov. 2013 23:19

Re: TP05 - lancement de startServer.bat

Message par Xander » 16 nov. 2013 23:22

Bonjour,

j'ai exactement le même problème et j'ai désactivé le pare-feu mais ça ne change rien.
Est-ce que quelqu'un qui a eu le même problème a su le résoudre ?

Merci d'avance.

uwabamisu
Messages : 32
Inscription : 04 janv. 2013 1:24

Re: TP05 - lancement de startServer.bat

Message par uwabamisu » 20 nov. 2013 1:40

Cela n'aurait pas un quelconque rapport avec le fichier security.policy ? Moi je l'ai mis dans un répertoire /lib dans /Yaps

Code : Tout sélectionner

grant{
permission java.security.AllPermission;
}; 
Voir cours sur RMI de NSY102 p .24
vidéos du cours
Conception de logiciels Intranet - Remote Method Invocation
http://deptmedia.cnam.fr/phpBB2/viewtop ... a7a4640c7a


Sinon je voulais signaler que les fichiers startServer.sh et startClient.sh ne fonctionne pas toujours sous linux. J'ai du reprendre une à une les variables d'environnement qui y sont définies à partir du répertoir Yaps/bin.
Pour le Server :

Code : Tout sélectionner

export JUNIT_HOME=/home/uwabamisu/Documents/JAVA/JUNIT/junit4.4
export MYSQL_HOME=~/Documents/JAVA/mysql
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386
export JAVA=$JAVA_HOME/bin/java
export RMIREGISTRY=$JAVA_HOME/bin/rmiregistry

export DEPLOY_DIR=../build
export LIB_DIR=../lib


export CLASSPATH=$DEPLOY_DIR/server.jar:$DEPLOY_DIR/common.jar:$MYSQL_HOME/lib/mysql-connector-java-5.1.26-bin.jar


ce qui me donne comme classpath :
../build/server.jar:../build/common.jar:/home/uwabamisu/Documents/JAVA/mysql/lib/mysql-connector-java-5.1.26-bin.jar

Je lance RMI avec la ligne de commande suivante:

Code : Tout sélectionner

rmiregistry &
Je vérifie quels sont les services disponibles avec la commande jps:

Code : Tout sélectionner

3688 RegistryImpl
10725 Jps
Ce qui signifie que RMI a bien été lancé et il a pour identifiant de processus 3688.

Je lance le serveur depuis le répertoire Yaps/bin avec la commande suivante :

Code : Tout sélectionner

$JAVA -classpath "$CLASSPATH" com.yaps.petstore.server.RegisterServices
J'obtiens la réponse suivante :

Code : Tout sélectionner

nov. 20, 2013 12:38:13 AM com.yaps.petstore.server.RegisterServices main
INFO: Petstore services are registered.

Je vérifie quels sont les services disponibles avec la commande jps:
J'obtiens :

Code : Tout sélectionner

3688 RegistryImpl
10921 
11017 Jps                                                                                                                                                                                                                               
10998 RegisterServices   
À ce stade les classes de tests devraient toutes passer sous Eclipse.



Pour le client, à partir d'une autre fenetre j'initialise une à une chacune des variables d'environnement nécessaires :

Code : Tout sélectionner


export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386
export JAVA=$JAVA_HOME/bin/java
export DEPLOY_DIR=../build
export CLASSPATH=$DEPLOY_DIR/clientOrder.jar:$DEPLOY_DIR/common.jar
Ce qui me donne le CLASSPATH suivant :

Code : Tout sélectionner

../build/clientOrder.jar:../build/common.jar
Je lance le client avec la ligne de commande suivante :

Code : Tout sélectionner


$JAVA -classpath "$CLASSPATH" com.yaps.petstore.client.ui.swing.Menu
Voir aussi ce post qui m'a été bien utile:
http://deptmedia.cnam.fr/phpBB2/viewtop ... 74&start=0

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité