1

저는 HTTP 서블릿을 사용하여 Java 웹 애플리케이션을 구축하고 있으며 모든 문서 요청을 하나의 서블릿 클래스로 라우트하려고합니다.모든 서블릿 요청을 Java 서블릿으로 라우팅하는 방법

문서 요청에 의해, 나는이 매핑을 사용하는 경우 favicon.ico가 내 서블릿에가는 것과 같은 이미지에 대한 요청을 원하지 않는다는 것을 의미합니다.

<servlet-mapping> 
    <servlet-name>myservlet</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 

내가하고있는 일은 Symfony (PHP 프레임 워크) 컨트롤러 레이어와 거의 비슷합니다. 그래서 나는 요청한 URI가 어떻게 보이는지 알지 못합니다. 단지이 패턴을 따를 것이라는 것을 알고 있습니다 : /controller[/method]. 그래서 저는 예를 들어/action/* 매핑을 사용할 수 없습니다.

여기는 학교 과제이므로 자바 MVC 프레임 워크를 찾고 있지 않으므로 직접 프로그래밍해야합니다.

+0

'/ action *'의 잘못된 점은 무엇입니까? –

+0

문제는 발신자 주소가 어떻게 보이는지 알 수 없다는 것입니다. Symfony Controller 레이어에 대한 나의 참고 자료. 그것은 모두 역동적입니다. 따라서이 패턴을 따르는 조합을 사용할 수 있습니다 :/controller [/ method]. 그러나 나는 그것을 분명하게 썼지는 않았다. 조금 편집하려고 노력할 것이다. –

답변

0

나는 그것을 알아 냈지만 더 많은 해결 방법이 있지만 여기에 내가 어떻게했는지가 나와 있습니다.

분명히, 난 그냥 보통의 요청에 방해가되지 않도록 내가에서/자산 폴더의 모든 내용이 정/대신에/*

의 매핑을 변경했다.

/image.jpg (/ assets 제외)와 같은 잘못된 요청이있는 경우 내 자신의 코드는이 사실을 404 컨트롤러 클래스로 라우트하며 이는 유효한 동작처럼 보입니다.