2012-06-20 1 views
0

나는 미친 실수를하고는 있지만 알아낼 수는 없다고 확신한다. 방금 Tomcat 7.0을 설치하고 JSP (몇 가지 간단한 테스트)로 구성된 "app"을 배포했습니다. 그러나, 내가 바람둥이를 실행하고 페이지에 액세스하려고하면 "welcome-file-list"에 넣고 다른 방법으로 액세스 할 수 없으면 JSP에 액세스 할 수 있습니다. 내가 뭘 잘못하고 있는지 알아낼 수 없기 때문에 누군가 도움을 줄 수 있을까요? 다음은 web.xml이다Tomcat이 환영 파일을 찾았지만 다른 JSP를 찾을 수 없음

sampleapp - 
    /META-INF 
    /javascripts 
    /stylesheets 
    /WEB-INF 
     web.xml 
     /lib 
     /classes 
     /jsp 
     /test1.jsp 
     /test2.jsp 

- 여기

는 웹 애플리케이션 구조이다. 정말 환영 파일 목록을 제외하고 아무것도하지 않는 -

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 
    <display-name>sampleapp</display-name> 
    <servlet> 
    <servlet-name>default</servlet-name> 
    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> 
    <init-param> 
     <param-name>debug</param-name> 
     <param-value>0</param-value> 
    </init-param> 
    <init-param> 
     <param-name>listings</param-name> 
     <param-value>false</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet> 
    <servlet-name>jsp</servlet-name> 
    <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> 
    <init-param> 
     <param-name>fork</param-name> 
     <param-value>false</param-value> 
    </init-param> 
    <init-param> 
     <param-name>xpoweredBy</param-name> 
     <param-value>false</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>default</servlet-name> 
    <url-pattern>/</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
    <servlet-name>jsp</servlet-name> 
    <url-pattern>*.jsp</url-pattern> 
    <url-pattern>*.jspx</url-pattern> 
    </servlet-mapping> 
    <welcome-file-list> 
    <welcome-file>/WEB-INF/jsp/test1.jsp</welcome-file> 
    </welcome-file-list> 
</web-app> 

이 예제에서, 나는, 나는 http://localhost:8080/sampleapp로 바람둥이 및 액세스 기본 응용 프로그램을 실행할 때 환영 파일이 너무 test1.jsp로 설정해야 test1.jsp의 내용을 성공적으로로드합니다. 그러나 test2.jsp 경로에 액세스하려고하면 그렇게 할 수 없습니다. 마찬가지로 환영 파일을 test2.jsp로 설정하면 http://localhost:8080/sampleapp에 액세스하여 액세스 할 수 있지만 test1.jsp 또는 test2.jsp에 명시 적으로 액세스하려고하면 404 오류가 반환됩니다.

아무도 잘못 이해할 수 없습니까?

답변

3

외부에서 WEB-INF 디렉토리에 액세스 할 수 없습니다. 외부에서 JSP에 액세스 할 수있게하려면 WEB-INF 외부에 JSP를 배치해야합니다.

+0

바, 무슨 미친 짓이야. 빨리 지적 해 주셔서 고마워. :). Spring을 통해 구현 중이었고 다른 테스트를하면서 일부 파일에 직접 접근하려고했습니다. – JUG

0

프로젝트가 standart Java 웹 프로젝트 형식이 아니기 때문에 액세스 할 수 없습니다. 먼저 웹 컨텐트를 WEB-INF 폴더 외부에 넣어야합니다. WebContent 폴더와 같은 것으로, web.xml.