ABSTRACT

Multiple URL patterns map to a single Servlet, which often indicates poor a architecture or a lack of standardization.

EXPLANATION

Multiple URL patterns that map to a single Servlet could be a sign that the Servlet performs too many functions.



Example 1: The following example maps five URL patterns to a single Servlet.


<servlet>
<servlet-class>com.class.MyServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/myservlet</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/helloworld*</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/servlet*</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/mservlet*</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>

REFERENCES

[1] Standards Mapping - Common Weakness Enumeration - (CWE) CWE ID 398

[2] Sun Microsystems, Inc. Java Servlet Specification 2.4