我想从 JSP 页面向 Java FX 应用程序提供动态输入。我找不到任何合适的方法。从某种意义上说是动态的,我想根据 JSP 页面中的用户输入向 JavaFX 应用程序提供输入。我在同一个 JSP 页面中嵌入了同一个 Java FX 应用程序。欢迎任何帮助。我想在 Java FX 应用程序通过 JSP 页面运行时为其提供输入。
问问题
2073 次
2 回答
1
请参阅 JavaFX 部署主题:从网页访问 JavaFX 应用程序。
JavaFX 中的 JavaScript => JavaFX 接口与用于传统 Java 小程序的接口相同——它利用了一种称为 LiveConnect 的技术。有关使用 LiveConnect 的更多文档位于 LiveConnect 文档主题:从 JavaScript 调用到 Java。
JavaFX 文档提供了以下示例代码:
Java 代码
package testapp;
public class MapApp extends Application {
public static int ZOOM_STREET = 10;
public static class City {
public City(String name) {...}
...
}
public int currentZipCode;
public void navigateTo(City location, int zoomLevel) {...}
....
}
JavaScript 代码
function navigateTo(cityName) {
//Assumes that the Ant task uses "myMapApp" as id for this application
var mapApp = document.getElementById("myMapApp");
if (mapApp != null) {
//City is nested class. Therefore classname uses $ char
var city = new mapApp.Packages.testapp.MapApp$City(cityName);
mapApp.navigateTo(city, mapApp.Packages.testapp.MapApp.ZOOM_STREET);
return mapApp.currentZipCode;
}
return "unknown";
}
window.alert("Area zip: " + navigateTo("San Francisco"));
请注意 JavaScript 代码中的重要注释“假设 Ant 任务使用“myMapApp”作为此应用程序的 id”。引用的 id 是fx:deploy taskplaceholderid
的参数。
现在,因为您使用的是 JSP,所以大概包含应用程序的 html 页面是由 JSP 处理器动态生成的。因此,您可能想要做的是利用fx:template任务生成修改后的 jsp 源代码,该源代码调用dtjava 部署脚本来嵌入您的目标 JavaFX 应用程序。
于 2013-01-26T00:57:43.847 回答
0
我不确定,但请尝试:HostServices.getWebContext
于 2013-01-25T13:28:04.210 回答