2011-08-22 2 views
0

우리는 플렉스와 자바가있는 웹 프레임 워크를 가지고 있는데, 기본 기능은 백그라운드에서 명령을 실행하고 (유닉스) 구문 분석하여 클라이언트 (플렉스)로 다시 보내는 것이다. 이것은 모든 자동 명령에 대해 잘 작동합니다.웹을 통해 대화 형 명령을 실행할 수 있습니까?

플렉스 측의 요청에 따라 자바 측에서 명령을 실행하는 런타임 프로세스를 사용하고 있습니다. 대화식 명령/스크립트에서도 마찬가지입니다.

웹을 통해 대화식 명령/스크립트를 실행할 수 있습니까? 나는 아파치 공유지로 시도했지만 해결책을 찾을 수 없었다.

도움을 주시면 감사하겠습니다.

답변

0

CLI와 대화식 명령의 차이점은 프로세스 'STDIN을 읽고 해당 STDOUT에 기록해야한다는 것입니다. 나는 Flex에 대해 모르지만 평범한 HttpRequest로 할 수는있다.

HTTP POST를 사용하여 명령을 실행하십시오. 하지만 실행하기 전에 HTTP GET 요청을 만듭니다. GET과 POST에는 어떤 종류의 코어 레이션 ID가 있어야합니다. 매개 변수를 사용하여 보낼 수 있습니다. GET 요청은 서블릿 doGet()에 의해 처리됩니다. 서블릿 doGet()은 실행중인 명령이 종료 될 때에 만 종료되어야합니다. POST 요청은 doPost() 및 run 명령에 의해 처리되어야합니다. PipedOutputStream을 사용하여 명령의 STDOUT과 서블릿의 HTTP 출력 스트림을 연결하면 응용 프로그램에서 인쇄 한 모든 바이트가 HTTP 연결을 통해 전달되고 UI에 표시 될 수 있습니다.

사용자가 다음 하위 명령을 입력 할 때 동일한 코어 레이션 ID로 게시물을 보내면 서버 측에서 "올바른"프로세스를 찾고 전달 된 바이트를 해당 STDIN에 쓸 수 있습니다.

실제로이 모든 것이 필요합니까? 당신은 아마 더 쉬운 해결책이 있습니까? 어쨌든 행운을 빌어 요.

관련 문제