Avatar billede dennism Nybegynder
28. august 2007 - 11:03 Der er 16 kommentarer og
2 løsninger

Java: Client-server program

Jeg er interesseret i at lave et client-server program og har i den forbindelse fundet frem til denne side:
http://java.sun.com/docs/books/tutorial/networking/sockets/readingWriting.html

På denne side foregår alt kontalt mellem klient og server ved at sende tekst-bidder mellem dem. Er det den eneste mulighed man har for kontakt mellem klient og server?
Er det ikke muligt, at serveren f.eks har en metode som man kan kalde fra klienten?
Avatar billede sgaardbo Nybegynder
28. august 2007 - 11:22 #1
Jo, det er det da. Søg efter Java og RMI (Remote Method Invocation).

  Søren.
Avatar billede dennism Nybegynder
28. august 2007 - 11:31 #2
..og er det også den måde det normalt foregår på?
Avatar billede sgaardbo Nybegynder
28. august 2007 - 11:45 #3
Det kommer meget an på hvad det er for en løsning du er i gang med. Nogle gange vil du vælge at bruge RMI, andre gange vil du måske hellere have en servlet liggende på en webserver, eller bruge sockets, som du selv var inde på.

Man får en del forærende, når man bruger RMI, og jeg har selv brugt det, for år tilbage. Det fungerede fint, og er rimeligt let at gå til.

  Søren.
Avatar billede dennism Nybegynder
28. august 2007 - 13:53 #4
Jeg har forsøgt mig med denne vejledning, for at komme igang:
http://javabog.dk/OOP/kapitel19.jsp

Jeg kan sagtens få server-koden til at virke hvis jeg selv laver mine java-filer. Men hvis jeg istedet bruger netBeans og kører "rmic KontoImpl" fra "/build/classes/Server" får jeg denne fejl:

error: File ./KontoImpl.class does not contain type KontoImpl as expected, but type Server.KontoImpl. Please remove the file, or make sure it appears in the correct subdirectory of the class path.
error: Class KontoImpl not found.
2 errors

Ved du, hvordan det kan være?
Avatar billede dennism Nybegynder
28. august 2007 - 15:00 #5
Jeg synes det er meget besværligt, da jeg er nødt til at genstarte min computer hver gang jeg har kørt rmiregistry een gang :( Kan man lave om på det?
Avatar billede arne_v Ekspert
28. august 2007 - 18:27 #6
Der maa vaere en RMI option i NetBeans.

I nyere Java versioner behoeer man ioevrigt slet ikke at bruge rmic.

Fejlen skyldes at en klasse i en package ikke ligger i det rette subdir som skal
matche package.
Avatar billede sgaardbo Nybegynder
28. august 2007 - 18:28 #7
Det burde heller ikke være nødvendigt. Det er længe siden jeg arbejdede med det, men så vidt jeg husker, startede jeg rmiregistry'et fra en commandprompt under udviklingsfasen. Jeg kunne så blot trykke ctrl-c for at lukke registry'et, og starte den igen.

  Søren.
Avatar billede arne_v Ekspert
28. august 2007 - 18:28 #8
Du boer sagtens kunne have rmiregistry koerende og koere dit program igen og igen.

Hvad sker der ?

Du kan ogsaa embedde rmiregistry i din server.
Avatar billede dennism Nybegynder
28. august 2007 - 21:58 #10
Er der nogen af jer der ved, hvordan man får RMI til at køre i NetBeans? Det må vist være nemmere end det andet.
Avatar billede arne_v Ekspert
29. august 2007 - 02:09 #11
Forudsat at du undlader at bruge rmic, så skal du vel ikke lave noget specielt
i NetBeans skal du ?
Avatar billede dennism Nybegynder
30. august 2007 - 13:03 #12
Hvad er RMIC?
Avatar billede arne_v Ekspert
30. august 2007 - 13:57 #13
rmic er RMI compileren som genererer stub og skeleton i gamle java versioner
Avatar billede dennism Nybegynder
09. september 2007 - 11:44 #14
Nåhr, nu må vi vist hellere lukke her.. Smider I lige et svar?
Avatar billede arne_v Ekspert
09. september 2007 - 22:39 #15
Jeg synes at du skal give dem alle til sgaardbo - jeg kom ret sent ind i tråden og
uden at opnå nogle resultater.
Avatar billede sgaardbo Nybegynder
10. september 2007 - 08:39 #16
Jeg deler gerne pointene :-)

Fik du løst dit problem dennism?
Avatar billede dennism Nybegynder
10. september 2007 - 10:34 #17
Jeg synes I begge skal dele :)
Ja, jeg fik vist styr på sagerne :)
Avatar billede arne_v Ekspert
10. september 2007 - 15:40 #18
hvis du insisterer
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester