Stacktrace:
       .....SomeOtherClass.equals( )
        at java.util.WeakHashMap.isEqual(WeakHashMap.java:737) ~[na:na]
        at java.util.WeakHashMap.put(WeakHashMap.java:612) ~[na:na]
        at
org.apache.commons.lang3.builder.ToStringStyle.register(ToStringStyle.java:182)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
org.apache.commons.lang3.builder.ToStringStyle.appendClassName(ToStringStyle.java:1444)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
org.apache.commons.lang3.builder.ToStringStyle.appendStart(ToStringStyle.java:369)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
org.apache.commons.lang3.builder.ToStringBuilder.<init>(ToStringBuilder.java:263)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
org.apache.commons.lang3.builder.ReflectionToStringBuilder.<init>(ReflectionToStringBuilder.java:462)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
org.apache.commons.lang3.builder.ReflectionToStringBuilder.toString(ReflectionToStringBuilder.java:288)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
org.apache.commons.lang3.builder.ReflectionToStringBuilder.toString(ReflectionToStringBuilder.java:119)
~[commons-lang3-3.0.1.jar:3.0.1]
        at
com.edb.finance.common.spring.shortcircuit.State.toString(State.java:92)
~[spring-extensions-2.0-20110818.133301-13.jar:2.0-SNAPSHOT]


There must be a bug in ReflectionToStringBuilder in lang-3 which is not in
lang2 - because it does not happen if I switch to the old classes.
Basically equals is called on an instance of a class which is not reachable
from the object in question (State.java) - this leads me to think that
somehing is dodgy with the caching commons lang is doing.

This only happens on the first execution.
Any further executions work fine - or using commons lang 2.x


--
David J. M. Karlsen - http://www.linkedin.com/in/davidkarlsen

Reply via email to