2014-04-08 129 views
0

我有一個Java應用程序,必須使用其中的JavaScript代碼的HTML文件。如何在javascript中調用java函數?

我有一個Java類,它看起來像這樣

package myPackage.utils; 

public class ReturnDemo{ 

    public static double GetSumOfValues(double value1, double value2) 
    { 
     return value1+value2; 
    } 

} 

什麼,我想是能夠做這樣的事情:

//value1 and value2 are obtained dinamically 
var MyValue = ReturnDemo.GetSumOfValues(value1, value2) 

我已經在網上搜索,但不勝在客戶端應用程序中使用javascript以及在服務器中使用java的情況下的答案,因爲html是我的應用程序的一部分,並且不會部署在服務器上

+0

如果你的html沒有發送給客戶端,你的html的目的是什麼? – Remi878

+0

@ Remi878 html將出現在我的應用程序的窗口中,我的應用程序正在使用Google地圖,並且HTML和JavaScript似乎是要走的路。我真的很想離開它,因爲現在改變我的程序架構爲時已晚。 – ciprianr

+0

因此,html會顯示給客戶端(在您的應用程序的窗口中)。你不能做一個Ajax請求(用一個簡單的servlet來獲得你的結果)? – Remi878

回答

0

這聽起來像是一個非常糟糕的想法。 我有時通過使用com.sun.net.httpserver.HttpServer API啓動http服務器,然後使用Desktop.browse()方法以正確的URL啓動瀏覽器,從而使用html用戶界面編寫java應用程序。我可以公開(可以)從JavaScript調用的Web服務。

+0

也許這是真的,但知道更改有點晚,尤其是因爲我真的沒有接觸到HttpServer API。我的應用程序在javaFX中,並且所有複雜的事情都在那裏完成。我只需要能夠訪問一個函數,它將返回一個基於兩個雙參數的double,這是我需要java集成的唯一的東西。這可能是快速和骯髒的,但在我的開發階段的這個階段,並且考慮到請求的簡單性,這就是我所需要的。 – ciprianr