Linux下部署RMI的問題與解決方案

來源:互聯網
上載者:User

package cn.edu.ynu.sei.atm.server;

import cn.edu.ynu.sei.atm.loginProcess.AvailableAccount;
import cn.edu.ynu.sei.atm.loginProcess.Verification;
import cn.edu.ynu.sei.atm.transactions.Transaction;
import cn.edu.ynu.sei.atm.account.CurrentAccount;
import cn.edu.ynu.sei.atm.account.DepositAccount;
import cn.edu.ynu.sei.atm.account.CreditAccount;

import java.rmi.Naming;
import java.io.IOException;
import java.rmi.AlreadyBoundException;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;

/**
 * ATM服務端<br>
 * 該類提供了ATM系統的基本服務物件
 * @author 88250
 */
public class ATMServer
{
    /**
     * 服務端程式進入點
     * @param args 命令列參數,這裡為<code>null</code>
     */
    public static void main(String[] args)
    {
    try
    {
        Verification verification= new Verification();
        AvailableAccount availableAccountInfo = new AvailableAccount(); 
        Transaction transaction = new Transaction();
        CurrentAccount currentAccount = new CurrentAccount();
        DepositAccount depositAccount = new DepositAccount();
        CreditAccount creditAccount = new CreditAccount();
     
        System.setProperty("java.rmi.server.hostname", "192.168.110.87");
        LocateRegistry.createRegistry(1099);
        
        Naming.bind("rmi://192.168.110.87:1099/CurrentAccount", currentAccount);
        System.out.println("CurrentAccount ready!");
        Naming.bind("rmi://192.168.110.87:1099/DepositAccount", depositAccount);
        System.out.println("DepositAccount ready!");
        Naming.bind("rmi://192.168.110.87:1099/CreditAccount", creditAccount);
        System.out.println("CreditAccount ready!");
        Naming.bind("rmi://192.168.110.87:1099/Transaction", transaction);
        System.out.println("Transaction ready!");
        Naming.bind("rmi://192.168.110.87:1099/Verification", verification);
        System.out.println("Verification ready!");
        Naming.bind("rmi://192.168.110.87:1099/AvailableAccount", availableAccountInfo);
        System.out.println("AvailableAccount ready!");
        System.out.print("ATM services ready....");
    }
    catch (RemoteException re)
    {
        re.printStackTrace();
    }
    catch (AlreadyBoundException abe)
    {
        abe.printStackTrace();
    }
    catch (IOException ioE)
    {
        ioE.printStackTrace();
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
    }
================

 

sudo gedit /etc/hosts

添加:

192.168.110.87  daniel-laptop #即 IP hostname

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.