[logback-user] logging arrays?
Thorbjoern Ravn Andersen
ravn at runjva.com
Mon Nov 2 23:55:59 CET 2009
Jeff Jensen skrev:
> Not sure about that... To share the issue, I just created a small test case
> that exhibits the behavior; the files are attached.
>
> Just run the test class - you will see an int[] works fine, but a Type[]
> obtained from reflection does not.
>
> I'm stumped...
> Needs a debug session into logback code which I'm pressed to do ATM.
>
>
I can reproduce your description.
23:48:28.486 [main] DEBUG logback.LogArrayTest - the array=[1, 2, 3, 4,
5, 6, 7, 8]
23:48:28.559 [main] DEBUG logback.ParameterizedTypeTestClass -
genericSuperClass=logback.ParameterizedTypeTestClass<java.lang.Long,
java.lang.Object>
23:48:28.559 [main] DEBUG logback.ParameterizedTypeTestClass -
ActualTypeArguments=class java.lang.Long
23:48:28.560 [main] DEBUG logback.ParameterizedTypeTestClass -
ActualTypeArguments array count=2
23:48:28.560 [main] DEBUG logback.ParameterizedTypeTestClass -
type=class java.lang.Long
23:48:28.560 [main] DEBUG logback.ParameterizedTypeTestClass -
type=class java.lang.Object
The tricky code is:
Type[] types = genericSuperClass.getActualTypeArguments();
LOG.debug("ActualTypeArguments={}", types);
// only displays the first element:
// ActualTypeArguments=class java.lang.Long
LOG.debug("ActualTypeArguments array count={}", types.length);
for (Type type : types) {
LOG.debug("type={}", type);
}
This is with slf4j 1.5.8 and logback 0.9.15
--
Thorbjørn Ravn Andersen "...plus... Tubular Bells!"
More information about the Logback-user
mailing list