JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Java SE 討論區  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友   
reply to postflat modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 請問Applet 呼叫 RMI
chinkaiw





發文: 140
積分: 1
於 2004-12-28 23:11 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
這個是server端RMI部分
1
2
3
4
5
6
7
8
9
10
11
 public static void main(String args[]) {
        try{
            POServerImpl server = new POServerImpl();
            LocateRegistry.createRegistry(1099);//啟動registry server
            Naming.rebind("//192.168.1.11/POServer",server);
        }catch(Exception e){
            System.out.println(e.toString());
            e.printStackTrace();
        } 
        System.setSecurityManager(new RMISecurityManager());
    }

我看其他範例是把System.setSecurityManager(new RMISecurityManager());
放在最上面,但我放在那邊,會出現下面錯誤,所以只能放最後面
1
java.security.AccessControlException: access denied (java.net.SocketPermission 192.168.1.11:1099 connect,resolve)

但是在把那段放後面的情況下,client端執行會出現下面錯誤訊息
1
java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is: java.io.EOFException........

client端RMI部分如下
1
2
3
4
5
6
        try{
            server = (POServer) Naming.lookup ("//" + this.getCodeBase().getHost() + "/POServer");
       }catch(Exception e){
            javax.swing.JOptionPane.showMessageDialog(this,"連線有問題" + e.toString());
            e.printStackTrace();
        } 

如果server不放security manager那段,則可以順利執行
但真正放到tomcat裡去用,就不行了,會有access denied的問題

該怎麼辦才好
對了,我是用netbean


reply to postreply to post
話題樹型展開
人氣 標題 作者 字數 發文時間
1754 請問Applet 呼叫 RMI chinkaiw 1265 2004-12-28 23:11
» JWorld@TW »  Java SE 討論區

reply to postflat modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8