我使用ColdFusion创建了一个网页。在该cfm文件中,我有以下标记 重定向:
<a href="pingdirect.jsp?Directory=#insdirs.ID_Directory#&Qlid=#inc_Requestor#">Grant
这是我的Pingdirect.jsp
文件:
String param=request.getParameter("Directory");
String qid=request.getParameter("Qlid");
try {
String command1="Runas /user:"+param+" /grant "+qid+":(OI)(CI)(M,RX,W)\"";
Runtime rt = Runtime.getRuntime();
Process p=rt.exec("cmd /c start" +command1);
} catch(Exception e) {
System.out.println(e);
}
我的问题是,当我点击“授予”时,它会将页面重定向到pingdirect.jsp
。
但它不会打开命令提示符。
有人可以指导我吗?
答案 0 :(得分:0)
我首先查看试图传递的参数......
在jsp中记住,GET和POST变量之间似乎没有区别,而在ColdFusion中它们分别存在于URL和FORM范围中。
insdirs.ID_Directory和inc_Requestor来自哪里,是否可能没有设置或设置错误。
如果你手动导航到pingdirect.jsp?Directory = [期望值]&amp; Qlid = [期望值]页面会发生什么(以及查询字符串中需要什么值(url参数)?
我建议您在一种情况下保留所有通过查询传递的变量名称(因此请创建目录目录和Qlid qlid)。
如果您可以手动到达并且参数正确传递,则可能需要逐行开始调试jsp页面。
本
答案 1 :(得分:0)
您可以尝试使用getAttribute替换getParameter;
String param=request.getAttribute("Directory");
String qid=request.getAttribute("Qlid");
并且,另外,验证属性实际存在;
if ((param == null) || (qid == null))
{
// MZ: Handle the exception here
}