我是JSP/Tomcat中的新手,在很大程度上也是Java。这就是我必须做的 - 当用户点击按钮/访问URL时,我想启动一个Java程序(这需要一些命令行参数)。Tomcat无法执行外部Java程序
我可以很容易做到
Runtime.exec("C:\\Python27\\python.exe test.py")
OR
Runtime.exec("java -cp %CLASSPATH%;C:\\devprojects HelloWorld"
,这工作得很好。 HelloWorld.class只打印“HelloWorld”。
但是,当我尝试一个采用命令行参数的java程序时,GET请求只会挂起什么都不做。我不知道要查找什么日志或在这里可能会出错。花了两天的时间尝试各种事情之后,我现在就要放弃了。
Runtime.exec("java -cp %CLASSPATH%;C:\\devprojects Run --username Blah --password Foo");
Tomcat最终运行这个Java程序的用户是什么?我可以让它成为管理员吗?这是在Windows 2008上,UAC是否会干扰事物?
我不能在这里修改Run.class,我必须按照原样和命令行参数运行它。
请指教。
这是一个非常糟糕的主意。最好创建一个适当的servlet。 – bmargulies
我同意这是一个坏主意。这只是原型代码,直到我们聘请具有相关经验的人。 – helpmelearn