packagecom.eastcom_sw.stream.webservices.controller;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;importorg.springframework.beans.factory.config.ConfigurableBeanFactory;importorg.springframework.context.annotation.Scope;importorg.springframework.stereotype.Controller;importorg.springframework.web.bind.annotation.RequestMapping;importcom.eastcom_sw.common.web.BaseController;
@Controller
@RequestMapping(value= "/reenDataController")
@Scope(value=ConfigurableBeanFactory.SCOPE_PROTOTYPE)public class ReenDataController extendsBaseController {/***
Description:重启tomcat
*
Title: resetTomcat
*@paramsession
*@paramrequest
*@paramresponse*/@RequestMapping(value="/resetTomcat")public voidresetTomcat(HttpSession session, HttpServletRequest request,
HttpServletResponse response){
String message="";
BufferedReader br= null;
Process process= null;try{
String shPath= "/home/tomcat_ws/bin/start_tomcatws.sh"; //tomecat启动脚本路径
System.out.println("=============启动脚本路径:"+shPath);
process=Runtime.getRuntime().exec(shPath.toString());
br= new BufferedReader(newInputStreamReader(process.getInputStream()));
StringBuffer sb= newStringBuffer();
String line;while ((line = br.readLine()) != null) {
sb.append(line).append("\n");
}
String result=sb.toString();
System.out.println("=============启动脚本-执行结果:"+result);if(process != null){int extValue = process.waitFor(); //返回码 0 表示正常退出 1表示异常退出
if(0 ==extValue){
System.out.println("=============启动脚本-执行完毕!");
}else{
System.out.println("=============启动脚本-执行异常!");
message="启动脚本执行异常";
}
}this.addResultInfo(SUCCESS,message,"");
}catch(IOException e) {//TODO Auto-generated catch block
message= "启动脚本执行异常";
e.printStackTrace();this.addResultInfo(FAILURE, message, "");
}catch(InterruptedException e) {//TODO Auto-generated catch block
message= "启动脚本异常退出 ";
e.printStackTrace();this.addResultInfo(FAILURE, message, "");
}finally{try{
br.close();
process.destroy();
}catch(Exception e) {
log.error("流或process销毁异常",e.getMessage());
}
}this.responseResult(response, this.getResultJSONStr());
}
}