我一直在读一点,但无法找到一个简单的答案。假设我有一个HTML页面,并且在该页面中嵌入了一些Javascript。另外我有一个名为somePackage.someSubPackage。*的包中有一个java.class;从JavaScript函数中调用Java方法?
我怎么能够从我的HTML页面中的javascript函数调用java.class中的方法?
我一直在读一点,但无法找到一个简单的答案。假设我有一个HTML页面,并且在该页面中嵌入了一些Javascript。另外我有一个名为somePackage.someSubPackage。*的包中有一个java.class;从JavaScript函数中调用Java方法?
我怎么能够从我的HTML页面中的javascript函数调用java.class中的方法?
使用DWR
DWR会生成JavaScript允许网页浏览器安全地调用到Java代码几乎一样,如果它是在本地运行。它可以封送几乎任何数据,包括集合,POJO,XML和二进制数据,如图像和PDF文件。所有需要的是一个安全策略,它定义了什么是允许的。
Java在哪里运行?它可能是浏览器中的Applet,或者它可能在某个服务器上运行。
JavaScript到Applet的通信是可能的,see,但这些天最常见的是使用AJAX调用服务器。
您可以使用几种不同的技术将Java打包为可调用服务,我建议使用JAX/RS,它只需要很少的工作。然后,您的Java将作为JavaScript可调用的可调用URL公开。
因此,你需要学习两两件事:
两个不同的问题,但都很容易。
由于System
类是J2SE的一部分,因此对于安装了Java的任何浏览器,此功能“开箱即用”。
<html>
<body>
<script type='text/javascript'>
document.write(java.lang.System.getProperty("java.version"));
</script>
</body>
</html>
得到它的自定义类的工作(在客户端),它通常会要求这些类被添加到一个脚本化的小程序的类路径。然后使用JS/applet接口调用访问属性的方法&。
简单的答案 - AJAX – amal