本文中描述的内容在本文发表前未获得运行成功,其中原因复杂,比如本人下载的是JavaFX for Eclipse 3.2.2的plugin,但实际使用的是更高版本。但很多其他用户也同时遇到了这样的问题。据广大使用人群解释,可暂定为“JavaFX Complier”的BUG。但因JavaFX Script尚未正式release,所以我们相信在不久的将来这段代码就能够获得成功运行。
回归正文。JavaFX作为RIA的解决方案之一,最重要的功能之一就是要具备和服务器端的异步通信能力。如何获取与服务器端的通信能力呢?JavaFX有多种解决方案。我们今天在这里介绍的是其中的一种,使用RMI(远程方法调用)。
JavaFX Script与Java是进行了全面整合了的(不过现在compiler还有bug,要不然这个程序就能运行成功),所以使用JavaFX和Java的联合能够很方便地与服务器交互。
关于RMI的种种概念,在此就不多说了。先看服务器端的代码:
ServerInterface接口(Java代码):
package server;
import java.rmi.Remote; import java.rmi.RemoteException;
public interface ServerInterface extends Remote {
public String ping(String fileName) throws RemoteException;
}
ServerImpl类(Java代码):
package server;
import java.io.*; import java.r