【问题标题】:How to call a method in dependency jar from java script如何从javascript调用依赖jar中的方法
【发布时间】:2017-06-23 08:23:44
【问题描述】:

我的 java 脚本项目中有一个 jar 依赖项。我必须在 jar 存在于 java 脚本文件中的 WEB-INF/lib/example.jar 下。

谢谢

【问题讨论】:

  • 你确定你的意思是 JavaScript 而不是 Java?
  • Java 不是Javascript!请详细说明。
  • 这个问题有点宽泛(顺便说一句,我不清楚)。您应该花时间解释您的要求,包括所有相关的源代码,并告诉我们您尝试了什么以及为什么它不起作用
  • 在我们确定 OP 实际上没有尝试使用 javascript 之前,人们可以停止编辑问题吗?

标签: javascript java ajax


【解决方案1】:

以前可以使用Java Applets 在客户端(浏览器)上执行 java 代码,但浏览器不再支持这些东西。您需要在 Javascript 中编写代码或使用 Ajax 对后端进行异步调用。

function myReq() 
{
  try
  {
    var myJSONObject = {"data1":"some data"};
    var toServer = myJSONObject.toJSONString();
    var request = new XMLHttpRequest();
    request.open("POST", "[your_server]/[servlet_name]", true);
    request.send(toServer);
    return true;
  } catch(err) {
    alert(err.message);
  }  
}

【讨论】:

  • It used to be possible to execute java code on the client side (browser) with Java Applets - 你确定吗?小程序是客户端功能,AFAIK 它们不能直接与服务器通信并使用存储在服务器中的库。
  • 是的,所以我说的有什么问题。我没有说 java applet 允许您在服务器端进行调用。我说过Applets 允许您在客户端(即浏览器)上执行Java 代码。我的意思是 jar 作为你的小程序中的直接依赖项!
  • 哦,我明白了。是的,OP 似乎在谈论服务器端库,这就是我问的原因,但我们知道的信息太少了。让我们等待更新。
【解决方案2】:

您确实需要添加更多详细信息。我想当你说 Javascript 项目时,你指的是一个 NodeJS 项目。在这种情况下,您可以使用 child_process (https://nodejs.org/api/child_process.html) 模块运行 shell 命令以从 jar 中执行静态方法:java -classpath path-to-jar <package>.<classname>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-07
    • 2015-09-12
    • 2011-06-03
    • 1970-01-01
    • 2012-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多