1
我想用JavaFX小程序寫一些頁面。我想要小程序上的內容依賴於用戶登錄。JavaFX小程序與服務器通信
我知道我可以從JFX調用Web服務,但那麼登錄和會話如何?除了我認爲可能存在一些比這些通信更好的解決方案,而不是從小應用程序調用坐在機器小程序上的web服務來。
我該怎麼辦?
我想用JavaFX小程序寫一些頁面。我想要小程序上的內容依賴於用戶登錄。JavaFX小程序與服務器通信
我知道我可以從JFX調用Web服務,但那麼登錄和會話如何?除了我認爲可能存在一些比這些通信更好的解決方案,而不是從小應用程序調用坐在機器小程序上的web服務來。
我該怎麼辦?
您可以構建一個返回登錄用戶名稱的servlet。
然後在javafx中,您可以使用javafx.io.http.HttpRequest類來調用servlet並讀出用戶名。 (API還對如何使用一些examples HttpRequest中)
以下JavaFX代碼打印出一個Servlet的返回字符串:
var response: String;
def myRequest: HttpRequest = HttpRequest {
location: "http://localhost:8080/demo/foo.do";
method: HttpRequest.GET;
onInput: function(is: java.io.InputStream) {
var buff: StringBuffer = new StringBuffer();
var reader: BufferedReader
= new BufferedReader(new InputStreamReader(is));
var data: String;
while ((data = reader.readLine()) != null) {
buff.append(data);
}
response = buff.toString();
reader.close();
println(response);
}
};
myRequest.start();
編輯:你也應該看看這篇文章: http://blogs.oracle.com/warren/entry/authenticating_a_javafx_application_using,它顯示瞭如何從駐留在文檔上的小程序中訪問html文檔和cookie。這應該是一個非常有趣的認證方法。
你可以說你的服務器端有什麼?一個servlet? 我認爲javafx沒有什麼特別之處。它正常的applet-server通信。你可以調用所需的java代碼來從你的javafx進行通信 – 2009-07-03 05:58:18
我不知道服務器端有什麼。這個項目還沒有開始:)可能我會把servlets放在那裏。我知道這是普通的applet-server,但是javaFX對web服務有一些額外的支持,我只是認爲它也可以用於這個applet-server通信。 – amorfis 2009-07-04 21:07:43