http://robbypelssers.blogspot.nl/2013/02/debugging-circular-references-in-maps.html
Another useful lesson learned :) -----Original Message----- From: Thorsten Scherler [mailto:scher...@gmail.com] Sent: Tuesday, February 26, 2013 3:25 PM To: dev@cocoon.apache.org Subject: Re: REST view and weird error On 02/26/2013 03:21 PM, Francesco Chicchiriccò wrote: > On 26/02/2013 13:43, Thorsten Scherler wrote: >> On 02/25/2013 02:10 PM, Thorsten Scherler wrote: >>> ... >>> Passing pipeline parameter as attribute: key=cocoon, value=[FAILED >>> toString()] >>> >>> in MessageFormatter.arrayFormat. >>> >>> still investigating >>> >>> salu2 >>> >> Actually you can see it if you start the cocoon-sample block and >> request >> http://localhost:8888/controller/abc/foo?reqparam=1 >> >> >> SLF4J: Failed toString() invocation on an object of type >> [java.util.HashMap] java.lang.StackOverflowError >> at >> java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:631) >> at java.lang.StringBuilder.append(StringBuilder.java:224) >> at >> org.apache.cocoon.configuration.MutableSettings.toString(MutableSetti >> ngs.java:312) >> >> at java.lang.String.valueOf(String.java:2902) >> >> It actually happens in STRenderer >> [...] > > Hi Thorsten, > as you have already found, the problem is the "cocoon" entry in the > sitemap's ObjectModel, always passed among parameters. > > I have been able to actually print the content of the "cocoon" entry > via common-collection's MapUtils: > > if (entry.getValue() instanceof Map) { > MapUtils.verbosePrint(System.out, null, parameters); > } else { > System.out.println(entry.getValue()); > } > > I am about to commit a fix for the issue in STRenderer you've reported > above based on the usage of MapUtils#verbosePrint() > Nice you are a "monstruo". Let us see whether that gets rid of the redundant data as well. salu2 -- Thorsten Scherler <scherler.at.gmail.com> codeBusters S.L. - web based systems <consulting, training and solutions> http://www.codebusters.es/