On 01 Apr 2009, at 18:56, bonekrusher wrote:
Thanks... did the trick
FWIW: the technical explanation is that StaticPropertyList.java contains some references to Constants.PROPERTY_COUNT. This value is inlined into the .class file at compile-time. Now, not so long ago, a new proprietary extension property was introduced (fox:disable-column-balancing), Constants.java has been altered and PROPERTY_COUNT was incremented. When you don't do a clean build, the inlined value in StaticPropertyList.class will still be the old one, while FOPropertyMapping.java was also changed and recompiled. This leads to the generation at runtime of StaticPropertyLists that are not large enough to hold all available properties.
One way around that would be to avoid the value being inlined (could be as simple as replacing the literal reference to the static final by a method call), but then this could cost in terms of speed.
Since the issue only occurs during development, any attempts to avoid it are probably not worth the effort.