将信息从Java(Servlet)传递到CGI方法?
我有一个Javaservlet,它从表单中获取信息,然后我需要获取该信息并将其传递给.exe程序中的特定方法,并获取该方法返回的值 有没有一个好的方法可以做到这一点?如果“.exe程序”指的是一个DLL,您可以使用它从Java调用方法将信息从Java(Servlet)传递到CGI方法?,java,servlets,cgi,Java,Servlets,Cgi,我有一个Javaservlet,它从表单中获取信息,然后我需要获取该信息并将其传递给.exe程序中的特定方法,并获取该方法返回的值 有没有一个好的方法可以做到这一点?如果“.exe程序”指的是一个DLL,您可以使用它从Java调用方法 这不是小事,但是可行的 我不得不在我的一个项目中这样做,但我们使用的是Linux而不是Windows。这里有一个如何着手做这件事的总体蓝图 您需要: 将.exe CGI文件设置为 外部进程使用Runtime.getRuntime().exec(文件名,env) 安
这不是小事,但是可行的 我不得不在我的一个项目中这样做,但我们使用的是Linux而不是Windows。这里有一个如何着手做这件事的总体蓝图 您需要:
Runtime.getRuntime().exec(文件名,env)
InputStream fromCgi = p.getInputStream();
InputStream errorStream = p.getErrorStream();
InputStream fromCgi=p.getInputStream();
InputStream errorStream=p.getErrorStream();
IOUtils.copy(fromCgi, response.getOutputStream()); //using apache commons io
IOUtils.copy(fromCgi,response.getOutputStream())//使用apache commons io
注意:需要在所有部分之间添加很多胶水,但这是如何在Servlet中封装CGI的一般策略。谢谢,效果很好!我发现这一点非常有帮助: