<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=bjornharvold" rel="nofollow">Bjorn Harvold</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-6741?redirect=false" rel="nofollow">SPR-6741</a></strong> and commented</p>
<p dir="auto">This RequestMapping doesn't work:</p>
<div class="highlight highlight-source-java notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="@RequestMapping(value = &quot;/administration/user/{id}/account/{accountId}/transfer/{accounttransferId}&quot;, method = RequestMethod.GET)"><pre class="notranslate"><span class="pl-c1">@</span><span class="pl-c1">RequestMapping</span>(<span class="pl-s1">value</span> = <span class="pl-s">"/administration/user/{id}/account/{accountId}/transfer/{accounttransferId}"</span>, <span class="pl-s1">method</span> = <span class="pl-smi">RequestMethod</span>.<span class="pl-c1">GET</span>)</pre></div>
<p dir="auto">This RequestMapping works:</p>
<div class="highlight highlight-source-java notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="@RequestMapping(value = &quot;/administration/account/{accountId}/transfer/{accounttransferId}&quot;, method = RequestMethod.GET)"><pre class="notranslate"><span class="pl-c1">@</span><span class="pl-c1">RequestMapping</span>(<span class="pl-s1">value</span> = <span class="pl-s">"/administration/account/{accountId}/transfer/{accounttransferId}"</span>, <span class="pl-s1">method</span> = <span class="pl-smi">RequestMethod</span>.<span class="pl-c1">GET</span>)</pre></div>
<p dir="auto">During startup, in both cases, Spring says that the above urls have been matched to a Class. There is only one method in the class to make sure nothing is being overridden. It seems this happens the moment I have more than 2 PathVariables defined.</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 4.0.1</p>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398109757" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/12552" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/12552/hovercard" href="https://github.com/spring-projects/spring-framework/issues/12552">#12552</a> Calling a <code class="notranslate">@RequestMapping</code> annotated method with a URI template with three variables does not work (<em><strong>"is duplicated by"</strong></em>)</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398166525" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/16175" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/16175/hovercard" href="https://github.com/spring-projects/spring-framework/issues/16175">#16175</a> Cannot handle more than two <code class="notranslate">@PathVariable</code> with the route ends with ".png" (<em><strong>"is duplicated by"</strong></em>)</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398107712" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/12245" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/12245/hovercard" href="https://github.com/spring-projects/spring-framework/issues/12245">#12245</a> Determination of the best pattern match to map a handler to an URL (<em><strong>"is duplicated by"</strong></em>)</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398114462" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/13325" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/13325/hovercard" href="https://github.com/spring-projects/spring-framework/issues/13325">#13325</a> AntPathMatcher.AntPatternComparator algorithm wrong for hierarchical matches</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398167052" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/16239" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/16239/hovercard" href="https://github.com/spring-projects/spring-framework/issues/16239">#16239</a> RequestMapping path priority problem</li>
</ul>
<p dir="auto"><strong>Referenced from:</strong> commits <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/spring-projects/spring-framework/commit/d746e3fbfaee246055f1629d53513879e41540c0/hovercard" href="https://github.com/spring-projects/spring-framework/commit/d746e3fbfaee246055f1629d53513879e41540c0"><tt>d746e3f</tt></a>, <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/spring-projects/spring-framework/commit/ce0473f92672771a198bd9ccf64ce8fc900f19cc/hovercard" href="https://github.com/spring-projects/spring-framework/commit/ce0473f92672771a198bd9ccf64ce8fc900f19cc"><tt>ce0473f</tt></a>, <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/spring-projects/spring-framework/commit/f829cd1b35c160708b205302cd99df58059492c4/hovercard" href="https://github.com/spring-projects/spring-framework/commit/f829cd1b35c160708b205302cd99df58059492c4"><tt>f829cd1</tt></a></p>
<p dir="auto">3 votes, 6 watchers</p>
<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=gonne" rel="nofollow">Gonne Martens</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-2885?redirect=false" rel="nofollow">SPR-2885</a></strong> and commented</p>
<p dir="auto">I have also noticed a high performance degradation from Spring 1.2.8 to Spring 2.0.1 with heavy use of prototype beans. I have attached a very simple test application which creates 100,000 prototype beans without multithreading and generated the following results:</p>
<p dir="auto">Spring 1.2.8       2437ms<br>
Spring 2.0 RC1 2813ms<br>
Spring 2.0 RC2 3015ms<br>
Spring 2.0 RC3 4515ms<br>
Spring 2.0 RC4 4532ms<br>
Spring 2.0          4594ms<br>
Spring 2.0.1       4788ms</p>
<p dir="auto">Profiling shows that about 30% of each bean creation is spent in the constructor of org.springframework.beans.SimpleTypeConverter called by the constructor of org.springframework.beans.factory.support.BeanDefinitionValueResolver during ...applyPropertyValues().<br>
I think the main reason for the performance loss is the registration of custom editors in the constructor of BeanDefinitionValueResolver added in revision 1.12:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="public BeanDefinitionValueResolver(AbstractBeanFactory beanFactory, String beanName, BeanDefinition beanDefinition) 
    {
        this.beanName = beanName;
	this.beanDefinition = beanDefinition;
	this.beanFactory = beanFactory;
	beanFactory.registerCustomEditors(this.typeConverter);
}"><pre class="notranslate"><code class="notranslate">public BeanDefinitionValueResolver(AbstractBeanFactory beanFactory, String beanName, BeanDefinition beanDefinition) 
    {
        this.beanName = beanName;
	this.beanDefinition = beanDefinition;
	this.beanFactory = beanFactory;
	beanFactory.registerCustomEditors(this.typeConverter);
}
</code></pre></div>
<p dir="auto">Please look at the screenshot of my profiling session.<br>
We can not upgrade our production system from Spring 1.2.8 to Spring 2.0.1, because the load of our system would increase to high.<br>
I am willing to help, but I need comments from the architects.</p>
<p dir="auto">This is a duplicate of <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398072320" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/7460" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/7460/hovercard" href="https://github.com/spring-projects/spring-framework/issues/7460">#7460</a> with a changed issue type and a higher priority, because of missing feedback so far.</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 2.0 RC1, 2.0 RC2, 2.0 RC3, 2.0 RC4, 2.0 final, 2.0.1</p>
<p dir="auto"><strong>Attachments:</strong></p>
<ul dir="auto">
<li><a href="https://jira.spring.io/secure/attachment/12246/screenshot+profiling+session.jpg" rel="nofollow">screenshot profiling session.jpg</a> (<em>293.05 kB</em>)</li>
<li><a href="https://jira.spring.io/secure/attachment/12247/Spring2TestBean.java" rel="nofollow">Spring2TestBean.java</a> (<em>672 bytes</em>)</li>
</ul>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398072320" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/7460" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/7460/hovercard" href="https://github.com/spring-projects/spring-framework/issues/7460">#7460</a> Poor performance creating non-singleton beans with many threads (<em><strong>"duplicates"</strong></em>)</li>
</ul>