So I have the:
* updated my local UIMAv3 SVN checkout with your latest changes (3.0.1-SNAPSHOT)
* updated my local uimaFIT UIMAv3 SVN checkout to depend on 3.0.1-SNAPSHOT
* installed the UIMA 3.0.0-RC 1 Eclipse plugins
* re-generated all the customized JCas classes in the DKPro Core UIMAv3 branch
* changed my local DKPro Core UIMAv3 to depend on 3.0.1-SNAPSHOT
* changed my local WebAnno UIMAv3 to depend on 3.0.1-SNAPSHOT
and I am trying to open a document from the English WebAnno demo now. Still,
I am getting this error:
java.lang.NullPointerException: null
at org.apache.uima.cas.impl.FeatureImpl.<init>(FeatureImpl.java:113)
~[classes/:?]
at
org.apache.uima.cas.impl.FeatureImpl_jcas_only.<init>(FeatureImpl_jcas_only.java:33)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.addJCasOffsets(TypeSystemImpl.java:1623)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.maybeAddJCasOffsets(TypeSystemImpl.java:1601)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.addJCasOffsetsWithSupers(TypeSystemImpl.java:1572)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.computeAdjustedFeatureOffsets(TypeSystemImpl.java:1488)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.computeAdjustedFeatureOffsets(TypeSystemImpl.java:1519)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.computeAdjustedFeatureOffsets(TypeSystemImpl.java:1519)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.computeAdjustedFeatureOffsets(TypeSystemImpl.java:1519)
~[classes/:?]
at
org.apache.uima.cas.impl.TypeSystemImpl.commit(TypeSystemImpl.java:1410)
~[classes/:?]
at org.apache.uima.cas.impl.CASImpl.commitTypeSystem(CASImpl.java:1607)
~[classes/:?]
at
org.apache.uima.cas.impl.BinaryCasSerDes.reinit(BinaryCasSerDes.java:312)
~[classes/:?]
at
org.apache.uima.cas.impl.Serialization.deserializeCASComplete(Serialization.java:129)
~[classes/:?]
Looking at the code, the problematic line in FeatureImpl is:
this.rangeTypeClass = (rangeType == null)
? null
: CasSerializerSupport.classifyType(rangeType);
... and here during runtime "rangeType" is null.
The problem here seems to be that "this.rangeTypeClass" is of type "int" and
the statement tries
to assign "null" to it if no rangeType is set. The Eclipse/Java compiler
doesn't seem to be smart enough to
see that this is an invalid assignment.
I am replying with this to the UIMAv3 RC mail because this looks to me like a
critical bug.
Cheers,
-- Richard