9

My Spring Web MVC application has the following handler mapping in the Controller.

@RequestMapping(method = RequestMethod.GET, value = "/something")

When request is sent to

http://www.someURL.com/something

, it works fine and maps to correct controller but,

http://www.someURL.com/something.bak or http://www.someURL.com/something.abc or http://www.someURL.com/something.abc.deff.xyz also works!!

I want to restrict this to just http://www.someURL.com/something and not to others.

web.xml defines the mappings as :-

<servlet-mapping>
        <servlet-name>abc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

Please suggest.

saurzcode
  • 827
  • 12
  • 30

2 Answers2

4

You can use the useDefaultSuffixPattern property.

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
    <property name="useDefaultSuffixPattern" value="false" />
</bean>
eolith
  • 1,366
  • 10
  • 14
1

In addition to above, refer to documentation below: http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/web/servlet/mvc/annotation/DefaultAnnotationHandlerMapping.html

Method: setUseDefaultSuffixPattern()

Also go through similar queries asked below: How to change Spring MVC's behavior in handling url 'dot' character

Community
  • 1
  • 1
  • Looks like MVC Annotation Driven and bean method does not work together. we have to remove MVC Annotation Driven for other to work. – er.vinaygnihotri Jun 04 '12 at 17:45