【问题标题】:Can I use java applet in server side code?我可以在服务器端代码中使用 java 小程序吗?
【发布时间】:2014-02-06 09:18:38
【问题描述】:

我写了一个在我的网页上运行的小程序。

我在客户端操作中使用它。

我必须在服务器端运行一个功能。所以我有一个问题。

有什么方法可以在服务器端运行我的功能吗?

这是我的另一个问题:

What's servlet? How to use?

【问题讨论】:

  • (1) 小程序在浏览器中运行。 (2) 运行服务器端功能不需要小程序。
  • “代码”作为抽象实体可以在任何地方运行。如果这个函数单独在一个类中,那么任何 JVM 都可以加载该类,并且您可以调用该方法(函数)。您需要使.jar 可用于您在服务器上运行的任何JVM。 (当然,以这种方式组织代码的智慧完全是另一回事。)

标签: java applet


【解决方案1】:

是的,你可以通过JS。

阅读http://docs.oracle.com/javase/tutorial/deployment/applet/invokingAppletMethodsFromJavaScript.html

例子:

小程序

public class MathApplet extends Applet{        
    public void printOut(String text) {
        System.out.println(text);
    }
}

HTML

<script src=
  "https://www.java.com/js/deployJava.js"></script>
<script>
    <!-- applet id can be used to get a reference to
    the applet object -->
    var attributes = { id:'mathApplet',
        code:'jstojava.MathApplet',  width:1, height:1} ;
    var parameters = { jnlp_href: 'math_applet.jnlp'} ;
    deployJava.runApplet(attributes, parameters, '1.6');
</script>

JS 调用

mathApplet.printOut("Testing printing to System.out");

编辑:

希望这就是你要找的东西

如果您只想调用一些代码,处理一些不需要用户交互或运行小程序的非绑定功能,那么您可以创建一个导入小程序 jar 的 Java Servlet。然后,您可以引用任何方法并调用它。

 HttpWebRequest request = (HttpWebRequest) WebRequest.Create("<YourDomain>/Servlet?param1=value1");
 HttpWebResponse response = (HttpWebResponse)request.GetResponse();

如果您想从 .cs 调用页面上正在运行的 Java 小程序实例,那么您可以做的是

Response.Write("<script type=\"text/javascript\">myJsAppletCallingMethod();</script>");

protected void DoSomethingButton_Click(object sender, EventArgs e) {
   ClientScriptManager clientScriptManager = Page.ClientScript;
   clientScriptManager.RegisterStartupScript(typeof (Page), "PrintScript_" + UniqueID, "myJsAppletCallingMethod();", true);
}

信用12

【讨论】:

  • 嗨,我的问题不是这个。我已经在 asp.net 项目的 HTML 页面中使用了我的小程序。我在 javascript 的小程序中使用我的函数。但我想在 .cs 文件(服务器端)中调用我的小程序函数。
猜你喜欢
  • 2012-06-10
  • 1970-01-01
  • 2021-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-04
  • 1970-01-01
相关资源
最近更新 更多