resin

레진(resin) - root 위치 수정하기

jeeyong 2008. 4. 8. 19:07

ver. resin 3.0.25

conf/resin.conf 파일

<host> 태그안에

<web-app id="/" document-directory="webapps\ROOT"/>

부분을

<web-app id='/'>
        <document-directory>C:\webp\workspace\M2\WebContent(프로젝트의 루트)</document-directory>
        <system-property javax.xml.parsers.DocumentBuilderFactory="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl"/>
        <system-property javax.xml.parsers.SAXParserFactory="org.apache.xerces.jaxp.SAXParserFactoryImpl"/>
        <jsp fast-jstl='false'/>
</web-app>

이렇게 수정한다.

빨간색 부분이 중요한데 web.xml에 필터(filter) 클래스를 지정한 부분이 있을경우 빨간색 코드 부분을 삭제하면 자세한 원인은 모르지만 클래스를 찾지 못하는 경우가 발생한다. 위 클래스들은 xml의 파싱을 돕는 객체인거 같은데 저렇게 명시해 줘야 web.xml을 제대로 파서 할수있는것 같다.

 기본적으로 레진은
1. JAVA소스가 WEB-INF/classes 밑에 컴파일 되어서 들어갔을 경우에
2. 라이브러리 jar파일들은 WEB-INF/lib 밑에
들어가 있다는 전제하에 설정하는 부분이고 만약 컴파일된 class파일들이 다른 폴더에 있을경우.

추가로 <host-default>태그 안에

예)

<host-default>
      <class-loader>
        <compiling-loader path="webapps/WEB-INF/classes"/>
        <library-loader path="webapps/WEB-INF/lib"/>
      </class-loader>
     
      <class-loader>
        <compiling-loader path="C:\webp\workspace\M2\build\classes"/>  --> 실제 class파일들이 있는 경로
        <library-loader path="C:\webp\workspace\M2\WebContent\WEB-INF\lib"/>  --> 라이브러리 파일들이 있는 경로
      </class-loader> --> 추가된 부분
      
      ....
</host-default>

추가 해 줘야한다.