Home avatar

Deokgon Kim

Java jarcheck.jsp로 클래스 파일 찾기

Java 웹애플리케이션에서 클래스 파일의 실제 위치를 찾을 때 사용하는 유용한 jsp

    String reqName = null;
    java.net.URL classUrl = null;
    reqName = request.getParameter("reqName");
    if (reqName == null || reqName.trim().length() == 0) {
        reqName = "javax.servlet.http.HttpServlet";
    }
    if (reqName.trim().length() != 0) {
 	reqName = reqName.replace('.', '/').trim();
	reqName = "/" + reqName + ".class";
        classUrl = this.getClass().getResource(reqName);
        if (classUrl == null) {
            out.println(reqName + " not found");
        } else {
            out.println("<b>" + reqName + "</b>: [" + classUrl.getFile() + "]\n" );
        }
        out.println("<br>");
    }

소스의 출처/원본은 javaservice.net 입니다.

JSP 에러 페이지

JSP 페이지에서 errorPage 로 사용할 수 있는 페이지입니다.

<%@ page contentType="text/html;charset=EUC-KR" isErrorPage="true"
    import="java.io.CharArrayWriter, java.io.PrintWriter"%>
<%
if (exception != null) {
  out.println(exception.getMessage());
  CharArrayWriter charArrayWriter = new CharArrayWriter();
  PrintWriter printWriter = new PrintWriter(charArrayWriter, true);
  exception.printStackTrace(printWriter);
  out.println(charArrayWriter.toString());
}
%>

Oracle JDeveloper 10g 에서 기본으로 제공하는 페이지 샘플을 가져옴.

Java 웹 세션타임아웃 설정?

자바 웹애플리케이션에서 세션타임아웃은 web.xml 에서 정의합니다.

<web-app>
    <session-config>
        <session-timeout>35</session-timeout>
    </session-config>
</web-app>

단위는 분(minute)입니다.

Apache DAV를 사용하여 웹폴더 활용

아파치에서 제공되는 mod_dav 모듈을 사용하여 웹폴더를 사용할 수 있습니다.

http://httpd.apache.org/docs/2.2/mod/mod_dav.html

간단한 웹폴더 설정 예제

Alias /dav "/home/www/dav"
<Location /dav>
    Dav On
    <LimitExcept GET OPTIONS>
        Order deny,allow
        Deny from all
        Allow from 10.8.0.0/255.255.255.0
    </LimitExcept>
<Location>

/dav 경로를 웹폴더로 지정하였으며, IP주소가 10.8.0.0/24인 사용자만 사용할 수 있도록 제한한 예입니다.(저는 VPN접속으로 사용하고 있습니다.)

시간동기화

유닉스, 리눅스에서는 ntpdate라는 명령으로 시간을 특정서버(Time Server)의 시간과 동기화 할 수 있습니다.

문법은 아래와 같이 간단합니다.

ntpdate time.bora.net

단, ntpd 혹은 xntpd와 같은 데몬이 구동되어 있을 경우는 명령이 제대로 동작하지 않으며 데몬을 죽이고 명령을 내리면 됩니다.

Gpg Sign

원문 및 서명이 포함된 파일이 생성된다. (armor 옵션을 빼면, 바이너리 파일 .gpg 생성된다.)

gpg --sign --armor message.txt

출력 예시