Connexion a distance avec un server [Résolu]

aboubakr664 - 25 sept. 2017 à 11:43 - Dernière réponse : KX 15089 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 14 décembre 2017 Dernière intervention
- 26 sept. 2017 à 18:50
Bonjour,
j'ai fait un programme client server en java et comme bd sql server.
quand je compile en locale cela marche sans probleme mais quand je teste avec un client distant sa reste sans reponse.
j'utilise le port 1433 et le client et le server sont connecter sur le meme reseau .
votre aide serait la bien venu .

Ma classe db


private void getConnection () throws Exception{ //Pour Etablir la connection
if(cnx==null || cnx.isClosed()){
try{
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://10.10.10.140:1433;databaseName=GestionJournaliers;user=ABOUBAKR;password=passer@1";

cnx = DriverManager.getConnection(url);
stmt=cnx.createStatement();
} catch(Exception ex){

throw ex;
}
}
}





public class Utils {
private static My_Interface i;

public static My_Interface getIClass() {
return i;
}
public static void init(){
try {
Registry registry=LocateRegistry.getRegistry("10.10.10.140",1000);
i=(My_Interface)registry.lookup("userRemote");
} catch (Exception ex) {

ex.printStackTrace();
}
}

}

le main de mon server est la :


public static void main(String[] args) {
// TODO code application logic here
System.setSecurityManager(new SecurityManager());

try {

Registry registry= LocateRegistry.createRegistry(1000);
My_Interface i = new Implementation();
registry.bind("userRemote", i);
System.out.println("le server a demmarrer sur le port 1000");


} catch (Exception ex) {
ex.printStackTrace();
}
}
Afficher la suite 

5 réponses

Répondre au sujet
KX 15089 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 14 décembre 2017 Dernière intervention - 25 sept. 2017 à 12:16
0
Utile
Bonjour,

"avec un client distant sa reste sans reponse"
Est-ce que tu as des exceptions côté client et/ou serveur ?
Si ça tourne indéfiniment, à quelle ligne de code est-ce que c'est bloqué ?
Tu peux éventuellement rajouter des logs dans ton programme pour tracer toutes les actions faites et voir celles qui ne sont pas faites.

Exemple :
Logger.getGlobal().info("Class.forName"); // import java.util.logging.Logger
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://10.10.10.140:1433;databaseName=GestionJournaliers;user=ABOUBAKR;password=passer@1";
Logger.getGlobal().info("getConnection: "+url);
cnx = DriverManager.getConnection(url);
Logger.getGlobal().info("Connexion réussie");

NB. Tu dis utiliser le port 1433 mais ça c'est juste pour la base de données, pour le RMI tu utilises le port 1000 et c'est sûrement là le problème de connexion entre ton client et ton serveur.
Commenter la réponse de KX
aboubakr664 - 25 sept. 2017 à 18:16
0
Utile
3
Merci Bien .
ben le port 1433 cest le port par efault pour se connecter a sql server et si jele change rien ne marche et pour le rmi si je met le 1433 il me signal que ce port est deja utilise.
KX 15089 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 14 décembre 2017 Dernière intervention - 25 sept. 2017 à 23:08
Je ne dis pas qu'il faut mettre tout à 1433 ou l'enlever cette valeur pour sr connecter à la base de données.
Au contraire, ce que je dis c'est que ton problème de connexion concerne sûrement le RMI sur le port 1000, c'est à dire la détection par le serveur qu'il y a un appel client.
Mais comme tu ne nous as toujours pas dit où était le blocage on ne peut que jouer aux devinettes...
Bonjour, effectivement j'ai bien saisi ce que vous avez dit .
vraiment la a mon niveau je vois pas l'erreur pour l'instant c'est la raison pour laquelle je suis venu vers vous pour voir pourquoi sa ne marche pas .
sa ne renvoi aucun message d'erreur ??????
KX 15089 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 14 décembre 2017 Dernière intervention > aboubakr664 - 26 sept. 2017 à 18:50
Si ça ne renvoie pas de message d'erreur c'est que ça fait des choses... il faudrait savoir quoi, et c'est pour ça que je te demandais de rajouter des logs pour savoir ce que le programme faisait et ce qu'il ne faisait pas...
Commenter la réponse de aboubakr664

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.