2012-10-10 2 views
0

나는 이것을 똑바로 생각했을 것입니다.하지만 그렇게 생각하지는 않습니다.jsp var을 html로 출력하는 방법

목표 : 내 .jsp 파일을 통해 쉘 스크립트 ArgCHeck.sh을 실행 중입니다. 이 잘 작동하고 내 시스템 콘솔에서 출력을 볼 수 있습니다.

그러나 HTML을 통해 브라우저에 라인을 출력하려고하면 그 라인이 작동하지 않는 것 같습니다.

문자열을 Static final String line = "test";으로 설정하려고 시도했지만 단어 테스트를 출력하지만 다른 String 줄의 값은 필요하지 않습니다.

내가 놓친 것이지만 도움이된다면 감사하겠습니다.

<%@page import="java.io.*"%> 
<%@page import="java.util.*"%> 
<%! 

%> 
<% 
Runtime r=Runtime.getRuntime(); 
Process p=null; 
String s=null; 
String cmd="/tools/scripts/ArgCheck.sh orange"; 

p=r.exec(cmd); 
InputStreamReader isr=new InputStreamReader(p.getInputStream()); 
BufferedReader br=new BufferedReader(isr); 
String line = null; 
while((line = br.readLine()) != null){ 
System.out.println(line); 
} 
p.waitFor(); 


System.out.println(p.exitValue()); 
%> 
<html> 
    <head/> 
    <body> 
     <% 
    // This scriptlet generates HTML output 
    out.println(String.valueOf(line)); 
%> 
    </body> 
</html> 

--------------------------- 편집 --------------- --------------------------------------

풀. 코드를 읽었을 때 분명했습니다. 휴식 시간.

<%@page import="java.io.*"%> 
<%@page import="java.util.*"%> 

<html> 
<head> 
<head/> 

<body> 


<% 
Runtime r=Runtime.getRuntime(); 
Process p=null; 
String s=null; 
String cmd="/tools/scripts/ArgCheck.sh"; 

p=r.exec(cmd); 
InputStreamReader isr=new InputStreamReader(p.getInputStream()); 
BufferedReader br=new BufferedReader(isr); 
String line = null; 
while((line = br.readLine()) != null){ 
out.println(line); 
} 
p.waitFor(); 
%> 

</body> 
</html> 

답변

0

여기 있습니다. 파일 경로를 변경하십시오.

<%@page import="java.io.*"%> 
<%@page import="java.util.*"%> 
<%! 
private String runScriptFile(){ 
    String strRetVal = ""; 
    Runtime r=Runtime.getRuntime(); 
    Process p=null; 
    String s=null; 
    String cmd="D:\\test.bat"; 
    try{ 
     p=r.exec(cmd); 
     InputStreamReader isr=new InputStreamReader(p.getInputStream()); 
     BufferedReader br=new BufferedReader(isr); 
     String line = null; 
     while((line = br.readLine()) != null){ 
      strRetVal += line + "<br>"; 
      System.out.println(line); 
     } 
     p.waitFor(); 
    }catch(Exception e){ 
     e.printStackTrace(); 
    } 
    return strRetVal; 
} 
%> 
<% 
String line = runScriptFile(); 
%> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
    <title>Batch File Test</title> 
    <head/> 
    <body> 
<% 
    // This scriptlet generates HTML output 
    out.println(String.valueOf(line)); 
%> 
    </body> 
</html> 
관련 문제