나는 사소한 일을하려고 애쓰며 내가 무엇을 놓쳤는지를 볼 수 없습니다. 나는 다음과 같은 web.xml을 ...web.xml 필터 매핑이 스트럿으로 전달되지 않습니다.
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
이 내가 "http://localhost:8080/gallery.action"와 같은 URL을 사용하는 경우 ("갤러리"는 등, 등, 제대로 struts.xml에서 구성되어 있기 때문에), 모든 것이 잘 작동합니다.
그러나 "http://localhost:8080/gallery.do"을 클릭하면 404 응답이 표시됩니다. Tomcat은 struts 측에 로깅이 없으므로 요청을 struts로 전달하지 않는 것 같습니다. Tomcat 로그에 404가 표시됩니다.
필터 매핑을 * .blah로 변경하려고했는데 * .action을 제외하고는 아무 것도 작동하지 않았습니다. 기본 web.xml 파일에 충돌 정보가 표시되지 않습니다.
누구나 내가 아는 바를 알고 계신가요?
'struts.xml'은'gallery.do'로 무엇을 해야할지 알도록 구성되어 있습니까? 아마 필터 전달 잘 작동하지만 Struts 잘못 구성되어 있습니다. – skaffman
struts.xml은 "gallery"라는 작업 이름을 처리하도록 구성되었지만 .action (또는 .do) 확장자에 대해서는 아무 것도 모릅니다. 스트럿츠가 단순히 액션 이름을 얻기 위해 확장 기능을 중단한다는 것은 제 이해입니다. –
또한 잘못된 작업 이름을 입력하면 struts는 많은 로깅을 수행합니다 ... gallery.do를 입력하면 struts 로그에 아무런 활동이 없으므로 안전하다고 생각하기에 안전하다고 생각합니다 . –