2012-03-07 8 views
0

私は春のMVC Webアプリケーションに次の行に沿ってコードを持っている:未使用のURIテンプレート変数 - ワイルドカードで置き換えることはできますか?

@RequestMapping("/{someVariable}/aPath/aPage.do") 
public void serveAPage() { 
    doStuff(); 
} 

を私たちは「someVariable」はURLになりたいが、我々はそれの値をキャプチャし、使用することに興味を持っていません。ワイルドカードで置き換える方法はありますか? /*/aPath/aPage.do

答えて

1

はい、@RequestMappingがhttp://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/web/bind/annotation/RequestMapping.html#paramsからとAntのスタイルパターンを受け付ける()

だから、この作品:

@RequestMapping(value="/*/test2.do") 
public void getMeta5(HttpServletRequest request, HttpServletResponse response) throws IOException { 
    final PrintWriter writer = response.getWriter(); 
    writer.print("requestURI:" + request.getRequestURI()); 
    writer.flush(); 
} 

をこれは、web.xml内のservlet-mappingはDispatcherServletのにそのURLパスをマップすることを前提としてい、例えば

<servlet> 
    <servlet-name>spring</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>spring</servlet-name> 
    <url-pattern>*.do</url-pattern> 
</servlet-mapping> 
関連する問題