Description
When deploying PSML pages, it is currently required to enter unique ids for each fragment in the PSML file.
This is an error prone process. If a fragment id is not supplied, the following stacktrace occurs in the browser:
java.lang.StackOverflowError
java.util.regex.Pattern.atom(Pattern.java:1863)
java.util.regex.Pattern.sequence(Pattern.java:1743)
java.util.regex.Pattern.expr(Pattern.java:1687)
java.util.regex.Pattern.compile(Pattern.java:1397)
java.util.regex.Pattern.<init>(Pattern.java:1124)
java.util.regex.Pattern.compile(Pattern.java:817)
java.lang.String.split(String.java:2103)
java.lang.String.split(String.java:2145)
org.apache.jetspeed.util.Path.parsePathSegments(Path.java:116)
org.apache.jetspeed.util.Path.<init>(Path.java:100)
org.apache.jetspeed.util.Path.getSubPath(Path.java:253)
org.apache.jetspeed.util.Path.getChild(Path.java:447)
org.apache.jetspeed.decoration.BaseDecoration.getResource(BaseDecoration.java:125)
org.apache.jetspeed.decoration.BaseDecoration.getStyleSheet(BaseDecoration.java:180)
org.apache.jetspeed.decoration.PageTheme.setupFragmentDecorations(PageTheme.java:90)
org.apache.jetspeed.decoration.PageTheme.setupFragmentDecorations(PageTheme.java:125)
org.apache.jetspeed.decoration.PageTheme.setupFragmentDecorations(PageTheme.java:125)
...
This bug fix will make fragment ids optional on deploy, and automatically create the ids if they do not exist.