51.Struts22008. 12. 7. 20:20
반응형
struts.devMode=true

struts2 에서 어플리케이션을 개발할 때 개발모드로 하면 뭔가 편리한 것을 도와준다는 것 같은데...이넘 때문에 한시간 삽질했다.

어플리케이션에서 unexception이 발생하던가 잘못된 요청이 오면 error.jsp 페이지로 돌려 사용자에게 안내메시지를 뿌려주는 것을 만들었다.

그런데 유독 xxx.action(*.action은 struts가 처리하도록 매핑했음) 으로 끝나는 넘들은 error.jsp로 가지 않고 struts가 아래와 같은 에러페이지를 뿌리는 것이 아닌가?

Struts Problem Report

Struts has detected an unhandled exception:

Messages:
  • There is no Action mapped for namespace / and action name dfasdf.

  • Stacktraces

    There is no Action mapped for namespace / and action name dfasdf. - [unknown location]
        com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:186)
        org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:41)
        org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:494)
        org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)

    response 상태도 200으로 떨어지는 것이다.

    struts2 이넘이 내부적으로 뭔가 처리를 하는 것 같은데 왜 이렇게 하는지 알 수가 없었다.

    혼자 엄청 삽질하다가 구글에서 뒤져 보았다. 그랬더니 devMode=true 로 했을 경우 어쩌구 저쩌구 하는 것이 아닌가..
    그래서 혹시나 싶어 devMode=false로 바꾸었더니 정상적으로 내가 원하는 error.jsp로 가더군..

    음..이런 삽질...싫다..ㅠㅠ
    Posted by 1010