FORUM Tom's Hardware » Programmation » C / C++ / Java » [JAVA] partage d'instance entre 2 machine
 

[JAVA] partage d'instance entre 2 machine

Il y a 410 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : [JAVA] partage d'instance entre 2 machine
 
Plus d'informations

Salut tout le monde.

Je suis étudiant en fin de cursus d'école d'ingénieur. J'ai fait beaucoup d'info, mais plus au niveau génie logiciel, ergonomie, etc. Maintenant je fais mon stage de fin d'étude et j'ai besoin de conseil...

Je vous explique tout:

-je fais une application de rendez-vous bancaire distant, en JAVA sous Eclipse.
-j'ai établi un cahier des charges de fonctionnalités, puis élaboré les classes à créer, leurs méthodes, les package, etc.
-j'ai implémenté les classes et... là gros problème...

En effet, mes Objets "client" et "conseiller" qui hérite de "personne" sont sensé se faire des appels entre eux. (Exemple --> le conseiller modifie une fenêtre du client, en faisant qqch du style client.etatInterface.setOnglet(Interface.PRINCIPAL); )

Malheureusement, il semble que les instances seront "hebergées" sur chacune des machines et pas le serveur. Ainsi, le conseiller, ne pourra pas agir sur l'instance "client".

Avez vous une idée pour résoudre cela?

J'ai pensé à plusieurs solutions:

1. faire tourner les instances sur le serveur <--pb de passage à l'échelle
2. faire "synchroniser" les instances à chaque changement (mais comment faire) entre celle présente chez le conseiller et le client
3. changer toutes les fonctions et mettre en place un système de flux texte, qui permette de suivre ce que fait l'autre. Mais là je dois tout reprendre à zéro...

merci

Profil : Pointeur
Plus d'informations

il faut que tu lui précise que un des deux objet existe mais sera implémenter ailleur
de tete (code pas juste, a adapter)

Code :
  1. class Client;
  2. class Conseiller {
  3.   Client c;
  4. }
  5. class Client {
  6.   Conseiller c;
  7. }


---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Plus d'informations

Est-ce possible, sachant que les deux processus sont à distance sur le réseau ?

Je connais pas du tout Java en termes de multithreading et réseau, mais il me semble que tu vas devoir creuser de ce côté pour ton problème... Ou alors passer par un serveur (ce que tu suggères toi-même)

Plus d'informations

oui, mais alors ce ne sera pas une applet, mais quoi? J'ai si peu d'expérience JAVA (le but du stage c'est l'étude de l'ergonomie, pas la programmation) que je ne sais pas trop ce que signifirai en pratique "faire tourner les instances sur le serveur". Une servlet? Meric de m'aider encore un peu :)

Plus d'informations

J'ai bossé sur un projet de plateforme Java il y a quelques années, il était organisé de la manière suivante :

- Un serveur avec des servlets (gérant l'équivalent de tes classes Client et Conseiller)

- côté client, des JSP (enfin, de l'HTML transformé par un service de formattage de JSP).

Donc on se retrouve avec un serveur qui gère tout, à savoir des sessions et des données. Pour ce qui est des logiciels et des outils, je n'ai aucune idée de ce qu'il faut installer (j'étais stagiaire DUT et c'était un gros projet d'entreprise). Il me semble qu'il faut un service pour les servlet, et un service pour la transfo des JSP, plus un service HTTP.

Y-a-t-il un spécialiste en mesure de donner plus d'infos dans la place ?


Message édité par Dumoria le 01-08-2005 à 11:14:49
Plus d'informations

merci de me rassurer, je me voyais mal mettre des stream partout et des copie d'objets en continu.

En gros, les JSP peuvent exister avec des classes implémentées sur un serveur? Si qqun sais, il peut m'envoyer un mail : olivier.schneider(at)enst-bretagne.fr

Je promet de partager en détail sur ce formum la solution trouvée :-)

Plus d'informations

Si vraiment tu galere tu peut aller faire un tour forum.hardware.fr il y a quelques spécialistes la bas ;)

Plus d'informations

Si ton application n'est pas orientée web, il est aseez inadapté de passer par des JSP ou des servlets. Une solution de Sun pour le "partage d'objets" en Java s'appelle RMI : "appel de méthode à distance"
un peu d'aide en français : http://membres.lycos.fr/tonysoueid [...] hap07.html

KangOl : des forward declaration en Java ? :heink:


Message édité par Anubis_ le 02-08-2005 à 11:21:55
Plus d'informations

si, je dois l'intégrer au site web de la banque chez qui je fait le stage

Plus d'informations

mais merci pour le lien, que je découvre avec intérêt. pour le prototype opérationnel je vais peut ^petre faire un truc comme ça...

Plus d'informations

Ca a l'air intéressant RMI, je jeterai un oeil
Merci pour le lien :)

Profil : Pointeur
Plus d'informations

a écrit :


KangOl : des forward declaration en Java ? :heink:


euh... :jesors:

je fait trop de cpp ces temps-ci [:kangol:1]


---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Plus d'informations

a écrit :

euh... :jesors:

je fait trop de cpp ces temps-ci [:kangol:1]



Ta bien raison de faire du cpp, s'pour l'elite :o :whistle:

Plus d'informations

Le C++ ? pour l'élite ?

on aura vraiment tout entendu !

Plus d'informations

Euh... En attendant, est ce que quelqu'un a une idée de solution pour moi? En fait, je voudrais simplement que les instances restent sur le serveur et puissent être invoquées indifféremment par chacune des 2 machines vurtuelles java (client/conseiller)

voilà

Plus d'informations

a écrit :

Le C++ ? pour l'élite ?

on aura vraiment tout entendu !



Attends, tu prétends que java c'est mieux ?

Comment tu fais un pointeur en java ? en plus Java ça rame et c'est pas franchement portable. De plus, il n'y a pas de #define en Java, ce qui cause bcp de contre-performances.

Non vraiment, faut rester un peu objectif parfois...

Plus d'informations

@obli : Java RMI.
@Anusbis : Le Java ça pue.

Plus d'informations

vraiment personne?

par rapport à votre débat, JAVA est plus clair et C++ plus performant, c'est évident...

Plus d'informations

ben écoute, on a été 2 à te dire Java RMI qui est de l'appel de méthode à distance. Je sais pas ce qu'il te faut de plus.

Si *jamais* les demandes entre les deux applis doivent traverser bcp de choses (firewall, internet, ...) du web service (XML-RPC ou SOAP) est conseillé car ils se basent sur du HTTP et le HTTP ça passe partout.

Profil : Pointeur
Plus d'informations

a écrit :

Ta bien raison de faire du cpp, s'pour l'elite :o :whistle:


on arrete les trolls stp :o

a écrit :

Le C++ ? pour l'élite ?

on aura vraiment tout entendu !



a écrit :

Attends, tu prétends que java c'est mieux ?

Comment tu fais un pointeur en java ? en plus Java ça rame et c'est pas franchement portable. De plus, il n'y a pas de #define en Java, ce qui cause bcp de contre-performances.

Non vraiment, faut rester un peu objectif parfois...


et on ne tombe pas dans le piege non plus :o


---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u
Plus d'informations

Pour revenir dans le sujet, à toi de voir si ton application est plutôt orientée web ou pas. Dans les deux cas tu as une solution.

Plus d'informations