기술지원 문의

web.xml 질문 입니다.
궁금이 / 2008-05-07 11:35

현재 사용하고 있는 레진은 2.1.10입니다.

궁금한 사항은

WEB-INF/web.xml파일을 열어 보면

<classpath id=WEB-INF/classes source=WEB-INF/classes compile=true/>

이것이 똑같은게 3개나 존재 합니다.

 

위의 것이 클래스패스 지정해 주는 것인데..

아주 자세한 설명좀 해주시면 않되나요??

 

초보라서 왜 저것이 3개나 있고...  또 정확히 무엇을 의미하는것인지...

id와 source, compile는 무엇인지...

compile가 false일때와 true일때 무엇이 다른 것인지...

 

정말 궁금해 미치겠습니다...

 

제발 부탁 드립니다...

 

[답변]web.xml 질문 입니다.
관리자 / 2008-05-08 10:08

안녕하세요. 기술지원팀입니다.

 

다음은 레진 2.X 대 레진에서 다음과 같은 태그는

<web-app>

<classpath id=WEB-INF/classes source=WEB-INF/classes compile=true/>

 

간단히 설명하자면

WEB-INF/classes 및에 소스 파일이 있다면 컴파일 하여 WEB-INF/classes 및에 추가하여 classpath 로 추가한다는 뜻입니다.

 

또한 저러한 태그가 중복적으로 나타나는 이유는

하나의 web-app는 서로 다른 구성을 가지기 때문입니다.

같은 태그가 3번 보였다면 해당 서버의 web-app가 3개이상이라는 뜻으로 해석됩니다.

web-app는 서로 독립적이기 때문에서 각각 web-app의 설정또한 독립적이라고 보시면 됩니다.

 

결론적으로 다음과 같은 태그

<classpath id=WEB-INF/classes source=WEB-INF/classes compile=true/> 

하나의 web-app 에 특별한 classpath 를 추가 할때 쓰이는 태그입니다.

 

다음은 레진 2.X 대 버전에서 classpath 설정에 관한 세부 설정입니다.

id = 추가할 classpath 의 경로입니다.

source = 소스 디렉토리의 경로입니다. 기본값은 id 경로와 일치합니다.

compile= 자동 컴파일 여부를 설정합니다. true 라면 서버 기동시 자동으로 소스를 컴파일하여 id 경로에 클레스를 만들고 classpath 를 추가합니다. false 라면 소스를 컴파일 하지 않고 id 에 설정한 클레스들만 classpath에 추가합니다. 기본값은 true 입니다.

encoding = 컴파일시 인코딩을 결정합니다. 기본적으로 javac 의 인코딩 기본값을 따릅니다.

args = 컴파일시 javac 의 args를 추가 합니다.

 

 

다음은 간단한 예입니다

<classpath id=WEB-INF/classes source=/home/ferg/ws/src/>
<classpath id=/home/test/library/classes/>

위의 설정은 /home/ferg/ws/src/ 에 저장된 *.java 를 컴파일하여 WEB-INF/classes

폴더에 *.calss 파일을 생성 후 classpath 로 추가시킵니다.

/home/test/library/classes 및에 위치한 *.class 파일 또한 classpath 로 추가시킵니다.

그러나 기본적으로 해당 web-app 및 WEB-INF/classes 및 WEB-INF/lib 는 명시적으로 지정하지 않아도 기본적으로 컴파일되고 classpath를 추가합니다.

 

해당 태그는 2.X 대에서만 적용된는 태그 이면 3.0.X 버전에서는 위와같은 설정의 태그가 변경되었습니다. 착오 없으시길 바랍니다.

 

다음은 3.0.X 버전에서 class와 lib 를 추가하는 방법입니다.

<web-app>  <class-loader>    <compiling-loader path=\"WEB-INF/classes\"/>    <library-loader path=\"WEB-INF/lib\"/>  </class-loader></web-app>

또한 레진 2.X 버전은 cacho社에서도 공식적인 지원이 중단된 상태입니다.

감사합니다..

 

늘 행복하세요 ^_________________^