[
https://issues.apache.org/jira/browse/SLING-2741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Antonio Sanso updated SLING-2741:
---------------------------------
Attachment: SLING-2741-patch.txt
Attaching patch.
I have wrapped the exception to IllegalArgumentException catch it externally
and ignored for a single entry.
WDYT?
> Bad Vanity URL breaks whole Sling Resource Resolver
> ----------------------------------------------------
>
> Key: SLING-2741
> URL: https://issues.apache.org/jira/browse/SLING-2741
> Project: Sling
> Issue Type: Bug
> Components: ResourceResolver
> Affects Versions: Resource Resolver 1.0.6
> Reporter: Antonio Sanso
> Assignee: Antonio Sanso
> Attachments: SLING-2741-patch.txt
>
>
> *Configure a vanity url with this string:
> "/content/mypage/en-us-{132"
> *After saving you will see [1] in the logs.
> * Restart Sling, there is warning [2]
> *Go to OSGi console and Sling Resource Resolver tab
> (http://localhost:4502/system/console/jcrresolver)
> * Observe the no mapping is loaded.
> [1]
> 18.02.2013 16:00:15.210 WARN [MapEntries Update]
> org.apache.sling.jcr.resource.internal.helper.MapEntries doInit: Unexpected
> problem during initialization java.util.regex.PatternSyntaxException:
> Unclosed counted closure near index 38
> ^[^/]/[^/]/content/mypage/en-us-{132$
> ^
> at java.util.regex.Pattern.error(Pattern.java:1713)
> at java.util.regex.Pattern.closure(Pattern.java:2759)
> at java.util.regex.Pattern.sequence(Pattern.java:1889)
> at java.util.regex.Pattern.expr(Pattern.java:1752)
> at java.util.regex.Pattern.compile(Pattern.java:1460)
> at java.util.regex.Pattern.<init>(Pattern.java:1133)
> at java.util.regex.Pattern.compile(Pattern.java:823)
> at
> org.apache.sling.jcr.resource.internal.helper.MapEntry.<init>(MapEntry.java:234)
> at
> org.apache.sling.jcr.resource.internal.helper.MapEntries.loadVanityPaths(MapEntries.java:559)
> at
> org.apache.sling.jcr.resource.internal.helper.MapEntries.doInit(MapEntries.java:198)
> at
> org.apache.sling.jcr.resource.internal.helper.MapEntries.init(MapEntries.java:167)
> at
> org.apache.sling.jcr.resource.internal.helper.MapEntries$1.run(MapEntries.java:140)
> at java.lang.Thread.run(Thread.java:680)
> [2] 2.02.2013 13:53:15.537 *WARN* [FelixStartLevel]
> org.apache.sling.resourceresolver.impl.mapping.MapEntries doInit: Unexpected
> problem during initialization java.util.regex.PatternSyntaxException:
> Unclosed counted closure near index 38
> ^[^/]+/[^/]+/content/mypage/en-us-{132$
> ^
> at java.util.regex.Pattern.error(Pattern.java:1713)
> at java.util.regex.Pattern.closure(Pattern.java:2759)
> at java.util.regex.Pattern.sequence(Pattern.java:1889)
> at java.util.regex.Pattern.expr(Pattern.java:1752)
> at java.util.regex.Pattern.compile(Pattern.java:1460)
> at java.util.regex.Pattern.<init>(Pattern.java:1133)
> at java.util.regex.Pattern.compile(Pattern.java:823)
> at
> org.apache.sling.resourceresolver.impl.mapping.MapEntry.<init>(MapEntry.java:241)
> at
> org.apache.sling.resourceresolver.impl.mapping.MapEntries.loadVanityPaths(MapEntries.java:600)
> at
> org.apache.sling.resourceresolver.impl.mapping.MapEntries.doInit(MapEntries.java:206)
> at
> org.apache.sling.resourceresolver.impl.mapping.MapEntries.<init>(MapEntries.java:138)
> at
> org.apache.sling.resourceresolver.impl.ResourceResolverFactoryImpl.activate(ResourceResolverFactoryImpl.java:116)
> at
> org.apache.sling.resourceresolver.impl.ResourceResolverFactoryActivator.checkFactoryPreconditions(ResourceResolverFactoryActivator.java:319)
> at
> org.apache.sling.resourceresolver.impl.ResourceResolverFactoryActivator.activate(ResourceResolverFactoryActivator.java:282)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:236)
> at
> org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:37)
> at
> org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:613)
> at
> org.apache.felix.scr.impl.helper.BaseMethod.invoke(BaseMethod.java:496)
> at
> org.apache.felix.scr.impl.helper.ActivateMethod.invoke(ActivateMethod.java:149)
> at
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.createImplementationObject(ImmediateComponentManager.java:251)
> at
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.createComponent(ImmediateComponentManager.java:119)
> at
> org.apache.felix.scr.impl.manager.AbstractComponentManager$Unsatisfied.activate(AbstractComponentManager.java:1518)
> at
> org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:550)
> at
> org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:261)
> at
> org.apache.felix.scr.impl.config.ImmediateComponentHolder.enableComponents(ImmediateComponentHolder.java:328)
> at
> org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:158)
> at
> org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:113)
> at
> org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:261)
> at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:179)
> at
> org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:868)
> at
> org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:789)
> at
> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:514)
> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4319)
> at org.apache.felix.framework.Felix.startBundle(Felix.java:1993)
> at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1261)
> at
> org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:298)
> at java.lang.Thread.run(Thread.java:637)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira