在javascript中调用java方法
calling java method in javascript
我正在尝试用javascript调用一个java方法。java类驻留在服务器端。
示例Java代码是:
public class deleteconfig
{
static boolean check = true;
public static void initiate()
{
check = false;
}
}
我想在我的javascript 中调用我的deleteconfig.initiate()方法
非常感谢您的帮助。
干杯
由于javascript是客户端脚本,它不能直接调用驻留在服务器上的java方法
如果没有任何特定的java框架,您可以使用java服务器页面(JSP)在接收到来自javascript的GET请求时调用deleteconfig.initiate()。
发送请求
您可能还想使用JQuery(一个javscript插件-http://jquery.com/)向服务器发送异步GET请求,如
//javascript code
function callInititiate(){
//This sends a get request to executeInit.jsp
//
$.get('localhost/myWebbApp/executeInit.jsp');
}
$(callInitiate);
接收请求
在服务器端,应该有executeInit.jsp,它调用deleteconfig.initiate()静态方法
//in executeInit.jsp
<%@ page import="deleteconfig"%>
<%
// executes initiate() static method
deleteconfig.initiate();
%>
也许阅读更多关于Java服务器页面的信息可以让你开始!
javascript在浏览器中运行,java代码部署在容器(Tomcat)中。
所以调用它的唯一方法是通过Web调用。您的javascript应该调用对一个servlet(在web.xml中配置)的ajax调用,这个servlet应该调用您的java方法。
您也可以在服务器中运行javascript。请参阅NodeJS
您可以使用JavaServerPage(JSP)或Applets,下面是针对您的情况的JSP示例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>JSP</TITLE>
</HEAD>
<BODY>
<H2>JSP </H2>
<UL>
<LI>Curent time: <%= new java.util.Date() %>
<LI>Host name: <%= request.getRemoteHost() %>
<LI>ID sesion: <%= session.getId() %>
</UL>
<% deleteconfig deletecfg = new deleteconfig(); %>
<%= delectecfg.initiate(); =%>
</BODY>
</HTML>
JSP脚本元素包括:
- 表达式:
<% = expression%>
计算表达式并打印出文档 - Scriptlet
<% code%>
将代码插入servlet服务方法中 - 语句:
<%! code%>
代码被插入到servlet类中,在任何方法之外
对于JSP脚本元素是可能的,另一种基于XML标记的语法形式是:
<jsp:expression> Java expression </ jsp: expression>
<jsp:scriptlet> Java code </ jsp: scriptlet>
<jsp:declaration> Statement Java </ jsp: declaration>
您的Javascript在浏览器中运行客户端,因此通常不会与运行Java代码的服务器端交互。您可能希望将Java方法公开为RESTful API端点,并在Javascript代码中执行AJAX调用。
- 请参阅:http://docs.jquery.com/Tutorials(ajax教程)
有几种方法在技术上是可行的,但不确定你为什么要这样做:
- 请参阅:http://www.andonyar.com/rec/2008-12/gemse/demo/doc/dev/java.xhtml
- 请参阅:http://www.rgagnon.com/javadetails/java-0170.html
谷歌的网络工具包:-请参阅:http://code.google.com/p/google-web-toolkit-doc-1-5/wiki/DevGuideRPCDeployment
- GWT:可以从外部JavaScript而不是JSNI调用Java方法吗
- 如何在JavaScript函数中将字符串参数传递给Java方法
- 如何在Javascript中调用Java方法
- 从Javascript调用Java方法
- 在javascript中调用java方法
- 从Android WebView调用java方法
- 单击按钮时调用java方法
- 如何从Javascript调用Java方法(非服务器)
- 如何在 javascript 中调用 java 方法
- 从 JSNI 调用 Java 方法
- 无法解析javascript中的json字符串,这是java方法的响应
- 从 JavaFX Web 视图调用 Java 方法
- HtmlUnit JavaScript 回调到 Java 方法
- 如何从javaScript调用python或java方法
- 如何通过单击 html 页面中的菜单从 jsp 调用 java 方法
- 从 Java 脚本调用 Java 方法
- 在java脚本中调用Java方法 - Oracle ADF
- 可以从javascript调用非静态gwt java方法
- 使用 webview 从 JavaScript 调用 Android 中的 Java 方法
- 如何将多个值从java方法返回到java脚本