我是jsp和運行時的新手。我需要能夠在Web應用程序頁面上使用按鈕運行腳本。腳本的位置是在/ home /用戶/ ejbca_4/bin並運行它,運行時錯誤
cd ejbca_4/bin
./ejbca.sh batch
有人建議把這些命令在/ home /用戶/箱一個sh文件。我創建/home/user/bin/test.sh具有以下內容:
#!/bin/bash
cd ejbca_4/bin
./ejbca.sh batch
我已將此添加到jsp頁面
<input type="submit" name="Generate test" value='<c:out value="Generate Test"/>' tabindex="<%=tabindex++%>"
onClick='generate()'>
function generate() {
Process proc = Runtime.getRuntime().exec("test.sh",null,null);
}
但不知何故,這給了一個NumberFormatException異常。我刪除處理過程:
function generate() {
Runtime.getRuntime().exec("test.sh",null,null);
}
並沒有NumberFormatException。但是,腳本沒有運行。任何人都可以解釋這應該怎麼做?
的產生()函數在腳本中。所以在.jsp中,它應該有兩個? Runtime.getRuntime()。exec(「test.sh」,null,null);和腳本? – Scar
這個答案在技術上是正確的。如果你有服務器端的java代碼需要運行,那就是所謂的「scriptlet」,它像<% %>一樣,像infgeoax所說的。然而,使用Java運行shell腳本是令人恐懼的。在10年的Java Web開發中,我沒有看到任何人這樣做。 –