[ https://issues.apache.org/jira/browse/UIMA-5554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16159936#comment-16159936 ]
Marshall Schor commented on UIMA-5554: -------------------------------------- The reference to *Heading.type* etc causes the JCas type "Heading" to be loaded and initialized. I think in this instance there's no current workaround other than to rearrange the order of setup, so that the type sytem is loaded/committed before you reference things like this. If anyone has a good suggestion on fixes for this, please speak up. The main trade off here is in better performance (due to these fields being static final values). > Strange exception when trying to get JCas FS class through reflection > --------------------------------------------------------------------- > > Key: UIMA-5554 > URL: https://issues.apache.org/jira/browse/UIMA-5554 > Project: UIMA > Issue Type: Bug > Components: Core Java Framework > Affects Versions: 3.0.0SDK-beta > Reporter: Richard Eckart de Castilho > > I am trying to get a class object for a JCas FS type using reflection: > {noformat} > Class.forName(typeName); > {noformat} > However, it produces this strange error. > {noformat} > java.lang.ExceptionInInitializerError > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:264) > ... > Caused by: org.apache.uima.cas.CASRuntimeException: A JCas class field "sofa" > is being initialized by non-framework (user) code before Type System Commit > for a type system with a corresponding type. Either change the user load code > to not do initialize, or to defer it until after the type system commit. > at > org.apache.uima.cas.impl.TypeSystemImpl.getAdjustedFeatureOffset(TypeSystemImpl.java:2575) > at > org.apache.uima.jcas.cas.AnnotationBase.<clinit>(AnnotationBase.java:71) > ... 27 more > {noformat} > Is it considered harmful to try getting a class object for a JCas FS class? -- This message was sent by Atlassian JIRA (v6.4.14#64029)