2009-08-25 2 views
0

사용자에게 몇 가지 로그 파일을 표시 할 필요가있는 유스 케이스가 있습니다. 각 로그 파일을 클릭하면 내용을 표시하는 새 창이 열립니다 그 특정 로그 파일의톰캣 디렉토리 외부의 파일 목록에 대한 웹 기반 액세스

환경은 Java/Tomcat에 있습니다. 파일은 tomcat 외부 디렉토리에있을 수 있습니다.

어떤 사람이 말해도 될까요,이 일을하는 가장 좋은 방법은 무엇일까요?

많은 감사, 산토

답변

0

는 사람이 정확히 찾아 볼 수 있습니다 어떤 디렉토리 (또는 디렉토리) 설명하는 웹 애플리케이션을 설치할 수 있도록 해주는 잘 알려진 위치에 구성 파일을 설정합니다. 당신은 확실히 webapp의 사용자가 어떤 디렉토리라도 브라우즈 할 수 없도록하고 싶을 것이다.

그런 다음 페이지로드시 또는 별도의 스레드에서 구성된 디렉토리를 검색 할 수 있습니다. 별도의 스레드에서 웹 응용 프로그램은 백 엔드 스레드가 채워지는 모든 목록의 현재 내용을 표시하면됩니다.

각 파일마다 고유 한 ID를 사용하십시오. 모든 종류의 위생 처리를 수행하고 웹 응용 프로그램 사용자가 서버의 다른 위치로 경로를 제출하지 않았는지 확인하고 그 안의 문자가 안전한지 확인하지 않는 한 파일 이름을 사용하면 안됩니다. 고유 ID 번호를 사용하면 사용자가보고자하는 파일을 (예 :지도에서) 조회 할 수 있습니다.

마지막으로 파일을 표시하는 것은 읽기/쓰기만큼 간단하지만 전체 파일을 한 번에 읽은 다음 연결을 통해 덤프하는 대신 스트리밍 방식을 사용해야합니다.

파일 형식을 지정하지 않으려는 경우 콘텐츠 유형을 "text/plain"으로 설정해야합니다 (기본값은 "text/html"로 설정하면 제대로 표시되지 않을 수 있음).

형식을 지정하려면 직접 만드는 방법을 알아야합니다.

+0

조나단 덕분에 ...-) –

+0

Java에서 형식을 유지하는 방법에 대해 생각하고 있습니까? –

+0

콘텐츠 형식을 "text/plain"으로 설정하면 형식이 유지됩니다. 브라우저는 이것을 일반 텍스트 파일로 표시합니다. 더 나은 서식을 원한다면, 개/폐 HTML 및 본문 태그와 단락 태그 또는 각 줄에 대한 줄 바꿈 태그를 사용하여 보강해야합니다. 또는, 더 멋진 것은 라인을 구성 요소로 분해하여 테이블에 넣을 수 있습니다 (타임 스탬프, 우선 순위 및 메시지와 같이 여러 줄이 있다고 가정). – Jonathan

관련 문제