Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从jsp调用java程序的主方法?_Java_Jsp - Fatal编程技术网

如何从jsp调用java程序的主方法?

如何从jsp调用java程序的主方法?,java,jsp,Java,Jsp,我有一个JSP,我从中获得用户的输入。现在,我想将从这个JSP获取的输入作为参数传递给java程序的主方法,并从这个JSP运行程序。请帮帮我 提前谢谢! 拉维拉是个坏主意。你想达到什么目标?即使您这样做,通过调用main()作为任何其他任意方法,或者通过调用Runtime或其他方法,您将实现一个在服务器上运行的程序。客户会怎么做 JSP/Servlet/JavaWeb编程是基于请求/响应的东西 如果您想使用该程序计算某些内容,并计划将输出用作响应。那么,为什么不把这个特定的部分作为业务组件或其他

我有一个JSP,我从中获得用户的输入。现在,我想将从这个JSP获取的输入作为参数传递给java程序的主方法,并从这个JSP运行程序。请帮帮我

提前谢谢!
拉维拉是个坏主意。你想达到什么目标?即使您这样做,通过调用main()作为任何其他任意方法,或者通过调用Runtime或其他方法,您将实现一个在服务器上运行的程序。客户会怎么做

JSP/Servlet/JavaWeb编程是基于请求/响应的东西


如果您想使用该程序计算某些内容,并计划将输出用作响应。那么,为什么不把这个特定的部分作为业务组件或其他东西,并用一种通常的方式来调用它呢。可能在一个单独的线程中,如果这是一个很长的过程,让用户与应用程序交互并在完成后通知用户。

坏主意。你想达到什么目标?即使您这样做,通过调用main()作为任何其他任意方法,或者通过调用Runtime或其他方法,您将实现一个在服务器上运行的程序。客户会怎么做

JSP/Servlet/JavaWeb编程是基于请求/响应的东西


如果您想使用该程序计算某些内容,并计划将输出用作响应。那么,为什么不把这个特定的部分作为业务组件或其他东西,并用一种通常的方式来调用它呢。可能在一个单独的线程中,如果这是一个很长的过程,请让用户与应用程序交互,并在完成后通知用户。

您需要在操作系统级别执行命令

    Process p = Runtime.getRuntime().exec("java -classpath "..." SomeClassContainingMain ...other arguments);       

        //you need to consume the outputs of the command if output/error is large otherwise the process is going to hang if output/error buffer is full. and create a seperate thead for it (not created here).
        log.debug("PROCESS outputstream : " + p.getInputStream() );
        log.debug("PROCESS errorstream : " + p.getErrorStream());           
    p.waitFor(); // Wait till the process is finished

您需要在操作系统级别执行命令

    Process p = Runtime.getRuntime().exec("java -classpath "..." SomeClassContainingMain ...other arguments);       

        //you need to consume the outputs of the command if output/error is large otherwise the process is going to hang if output/error buffer is full. and create a seperate thead for it (not created here).
        log.debug("PROCESS outputstream : " + p.getInputStream() );
        log.debug("PROCESS errorstream : " + p.getErrorStream());           
    p.waitFor(); // Wait till the process is finished

一年前,我不得不编写这样的程序,最后我把它变成了一个Web服务。这允许从JSP调用我的应用程序。我想你应该试试这个。

一年前我不得不编写这样的程序,最后我把它变成了一个Web服务。这允许从JSP调用我的应用程序。我想你应该试试这个。

你是说作为一个独立的过程吗?你是说作为一个独立的过程吗?坏主意。为什么不将那个特定的组件作为业务组件或其他东西包括进来并称之为业务组件呢。如果需要,可以在单独的线程中-1个坏主意。为什么不将那个特定的组件作为业务组件或其他东西包括进来并称之为业务组件呢。如果需要,可以在单独的线程中-1.