部署期间StackOverflowError的漂亮面孔

时间:2013-10-11 16:36:32

标签: jsf jsf-2 primefaces prettyfaces

我在部署期间使用pretty-faces,我有错误

 Exception starting filter Pretty Filter
    java.lang.StackOverflowError
        at java.util.LinkedList.isPositionIndex(LinkedList.java:539)
        at java.util.LinkedList.checkPositionIndex(LinkedList.java:557)
        at java.util.LinkedList.listIterator(LinkedList.java:865)
        at java.util.AbstractList.listIterator(AbstractList.java:299)
        at java.util.AbstractSequentialList.iterator(AbstractSequentialList.java:239)
        at java.util.Collections$UnmodifiableCollection$1.<init>(Collections.java:1064)
        at java.util.Collections$UnmodifiableCollection.iterator(Collections.java:1063)
        at java.util.Collections$UnmodifiableCollection$1.<init>(Collections.java:1064)
        at java.util.Collections$UnmodifiableCollection.iterator(Collections.java:1063)
        at com.ocpsoft.pretty.faces.config.PrettyConfig.getMappingById(PrettyConfig.java:174)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:58)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)
        at com.ocpsoft.pretty.faces.config.spi.ParentingPostProcessor.createAncestry(ParentingPostProcessor.java:66)

1 个答案:

答案 0 :(得分:2)

正如在ParentingPostProcessor中发生的那样,我猜你在映射层次结构中有一个循环。也许是这样的:

<url-mapping id="my-id" parentId="my-id"> 
    ...
</url-mapping>

确保层次结构中没有可能解决此问题的周期。

有关详细信息,请参阅文档的此部分:

http://ocpsoft.org/docs/prettyfaces/3.3.3/en-US/html/Configuration.html#config.mapping.parents