2011-12-28 17 views
3

MVCを使用していて、JSPページをWEB-INFに配置して、直接アクセスしないようにしたいとします。私はindex.jspページとWeb Contentのjspフォルダにある他のページを持っています。私は完璧に動作しますが、私がしようとしているとき、ちなみにJSPをWEB-INFに入れる方法は?

-Web Content 
-index.jsp 
-jsp 
--main_read.jsp 
--... 

index.jspのは私のログインページで、ユーザーがログインしているかどうか、コントローラに私が

RequestDispatcher dispatcher = 
     getServletContext().getRequestDispatcher("jsp/main_read.jsp"); 
dispatcher.forward(request, response); 

を使用します。それはこのようになりますWEB-INFに自分のJSPを置くために、それは失敗します。

-Web Content 
-index.jsp 
-WEB-INF 
--jsp 
---jsp 
----main_read.jsp 
----... 

そしてこの

HTTP Status 404 - /Libruary/jsp/main_read.jsp 

type Status report 

message /Libruary/jsp/main_read.jsp 

description The requested resource (/Libruary/jsp/main_read.jsp) is not available. 
Apache Tomcat/6.0.26 
のようなエラーが発生しますが

おそらく問題はページパスにありますが、私はdispatcher.forwardと書いていますが、とにかく助けてください。

答えて

8

パス/jsp/main_read.jspを渡しているようで、JSPは​​です。明らかに、パスは一致しません。正しいパスをgetRequestDispatcher():​​に渡します。

javadocは言う:

パス名は=で始まる必要があります/と

+2

それのおかげで、そして愚かな質問して申し訳ありません 現在のコンテキストルートからの相対として解釈されます) – And

関連する問題