Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите с rmi, создать и запустить HelloWorld 
:(
    Опции темы
muzikka1
Дата 14.6.2004, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 14.6.2004

Репутация: нет
Всего: нет



Буду очень благодарен, курсовой стоит.
PM MAIL   Вверх
Domestic Cat
Дата 14.6.2004, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 50
Всего: 172



Interface Hello:

Код

import java.rmi.Remote;
import java.rmi.RemoteException;

public interface Hello extends Remote
{
   public String helloWorld () throws RemoteException;
}


class HelloImpl

Код

import java.rmi.server.UnicastRemoteObject;
import java.rmi.RemoteException;

public class HelloImpl extends UnicastRemoteObject implements Hello
{
   public HelloImpl() throws RemoteException
   {
       // empty but must throw RemoteException
   }
   
   public String helloWorld () throws RemoteException
   {
           return "Hello world";
   }
}



class Server
Код

import java.rmi.Naming;
import java.rmi.server.UnicastRemoteObject;
import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry;
import java.rmi.RemoteException;
import java.rmi.NotBoundException;

public class Server
{
   private static final String SERVER_NAME = "Server";
   private static final String HOST = "localhost";
   
   private String  port;
   
   public Server(String port)    
   {
       this.port = port;
   }
   
   public void runServer() throws  IllegalArgumentException,
                                   NotBoundException,
                                   RemoteException
   {
       HelloImpl helloImpl = new HelloImpl();
       Registry registry = LocateRegistry.createRegistry(Integer.parseInt(port, 10));
       String url = "//" + HOST + ":" + port + "/" + SERVER_NAME;
       registry.rebind(SERVER_NAME, helloImpl);
   }
}


Class Start

Код

import java.rmi.Naming;
import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry;
import java.rmi.RemoteException;
import java.rmi.NotBoundException;

public class Start
{
   public static final String SERVER_NAME = "Server";
   // use : server <port> - start server
   // client <host> <port> - start client
   public static void main (String[] args) throws Exception  
   {
       if (args[0].equals("server"))
       {
           Server server = new Server(args[1]);
           server.runServer();
           System.out.println("Server started on port " + args[1]);
       }
       else
       {
           String lookupString = "//" + args[1] + ":" + args[2] + "/" + SERVER_NAME;
           Hello hello = (Hello) Naming.lookup(lookupString);
           System.out.println("RMI object found");
           System.out.println(hello.helloWorld());
       }
   }
}


1. javac *.java
2. rmic HelloImpl (poluchatsa 2 faila - _stub i _skel)
3. Zapustit' server: java Start server 2000 // lyuboy port > 1023
4. Vo vtoroy JVM zapustit' clienta:
java Start client xxx.xxx.xxx.xxx 2000 // vash host

Uchtite, chto cherez firewall eto rabotat' ne budet (skoree vsego) esli ne otkryt' sootvetstv. port.


--------------------

PM   Вверх
muzikka1
Дата 14.6.2004, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 14.6.2004

Репутация: нет
Всего: нет



Спа-си-бо!
PM MAIL   Вверх
Sun
Дата 15.6.2004, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 8
Всего: 48



Пример от Domestic Cat включен в FAQ. Domestic Cat награжден очередным повышением репутации smile.gif


--------------------
Account removed
PM MAIL   Вверх
Domestic Cat
Дата 15.6.2004, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 50
Всего: 172



Spasiba smile.gif adv/jump.gif




--------------------

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0441 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.