Author: mgrigorov
Date: Thu Jul 14 08:06:39 2011
New Revision: 1146591

URL: http://svn.apache.org/viewvc?rev=1146591&view=rev
Log:
WICKET-3897 renderCSSReference doesn't work with mountPage("/")

Return +1 score when the URL starts with the current mapper context's namespace 
and resource identifier.
Otheriwse return -1 to give other mapper bigger chance.


Modified:
    
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java

Modified: 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java?rev=1146591&r1=1146590&r2=1146591&view=diff
==============================================================================
--- 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java
 (original)
+++ 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapper.java
 Thu Jul 14 08:06:39 2011
@@ -196,7 +196,7 @@ class BasicResourceReferenceMapper exten
                                if (tokens.hasMoreTokens() == false)
                                {
                                        // ... but only for package resources
-                                       if(reference instanceof 
PackageResourceReference)
+                                       if (reference instanceof 
PackageResourceReference)
                                        {
                                                final PackageResourceReference 
pkgref = (PackageResourceReference)reference;
                                                final ResourceUrl resourceUrl = 
new ResourceUrl(token, parameters);
@@ -227,7 +227,15 @@ class BasicResourceReferenceMapper exten
 
        public int getCompatibilityScore(Request request)
        {
-               // always return 0 here so that the mounts have higher priority
-               return 0;
+               Url url = request.getUrl();
+
+               int score = -1;
+               if (url.getSegments().size() >= 4 &&
+                       urlStartsWith(url, getContext().getNamespace(), 
getContext().getResourceIdentifier()))
+               {
+                       score = 1;
+               }
+
+               return score;
        }
 }


Reply via email to