Skip to content

IllegalArgumentException when getting document info in document browser #897

@konstantinschulz

Description

@konstantinschulz

Describe the bug
When trying to access document-level metadata for the Fuerstinnenkorrespondenz corpus, an exception pops up:

Exception type: java.lang.IllegalArgumentException
Message: Component 2470 must be attached before it can get an automatic ID.

To Reproduce

Steps to reproduce the behavior:

  1. Go to https://korpling.german.hu-berlin.de/annis
  2. Select the 'Fürstinnenkorrespondenzen1.1' corpus.
  3. Open the document browser for this corpus (by clicking on the document icon).
  4. In the document browser window, click on one of the "i icons" in the 'Info' column.

Note: This procedure alone is not sufficient to reproduce the bug. Before taking these steps, I also selected some other corpora, executed some "tok" queries and used the query builder for initializing a metadata query. Maybe the stack trace can still reveal some of the underlying problems.

Expected behavior
I get more information about document-level annotations for this corpus.

Screenshots
Image

Desktop:

  • Operating System: Ubuntu 24.04.02 LTS
  • Browser: Firefox 138.0.4
  • Java Version: not applicable
  • ANNIS Version: 4.15.0
  • Vaadin-Version: 8.14.3

Additional context
Full Stacktrace:

[com.google](http://com.google/).common.base.Preconditions.checkArgument([Preconditions.java:122](http://preconditions.java:122/))
org.corpus_tools.annis.gui.IDGenerator.assignID([IDGenerator.java:48](http://idgenerator.java:48/))
org.corpus_tools.annis.gui.IDGenerator.assignIDForField([IDGenerator.java:104](http://idgenerator.java:104/))
org.corpus_tools.annis.gui.IDGenerator.assignIDForFields([IDGenerator.java:109](http://idgenerator.java:109/))
org.corpus_tools.annis.gui.flatquerybuilder.FlatQueryBuilder.attach([FlatQueryBuilder.java:176](http://flatquerybuilder.java:176/))
com.vaadin.server.AbstractClientConnector.attach([AbstractClientConnector.java:631](http://abstractclientconnector.java:631/))
com.vaadin.ui.AbstractComponent.attach([AbstractComponent.java:598](http://abstractcomponent.java:598/))
com.vaadin.server.AbstractClientConnector.attach([AbstractClientConnector.java:631](http://abstractclientconnector.java:631/))
com.vaadin.ui.AbstractComponent.attach([AbstractComponent.java:598](http://abstractcomponent.java:598/))
org.corpus_tools.annis.gui.querybuilder.QueryBuilderChooser.attach([QueryBuilderChooser.java:87](http://querybuilderchooser.java:87/))
com.vaadin.ui.AbstractComponent.setParent([AbstractComponent.java:519](http://abstractcomponent.java:519/))
com.vaadin.ui.AbstractComponentContainer.addComponent([AbstractComponentContainer.java:178](http://abstractcomponentcontainer.java:178/))
com.vaadin.ui.TabSheet.addTab([TabSheet.java:397](http://tabsheet.java:397/))
com.vaadin.ui.TabSheet.addTab([TabSheet.java:349](http://tabsheet.java:349/))
org.corpus_tools.annis.gui.controlpanel.QueryPanel$ShowQueryBuilderClickListener.buttonClick([QueryPanel.java:171](http://querypanel.java:171/))
jdk.internal.reflect.GeneratedMethodAccessor84.invoke(Unknown Source)
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke([DelegatingMethodAccessorImpl.java:43](http://delegatingmethodaccessorimpl.java:43/))
java.base/java.lang.reflect.Method.invoke([Method.java:566](http://method.java:566/))
com.vaadin.event.ListenerMethod.receiveEvent([ListenerMethod.java:706](http://listenermethod.java:706/))
com.vaadin.event.EventRouter.fireEvent([EventRouter.java:399](http://eventrouter.java:399/))
com.vaadin.event.EventRouter.fireEvent([EventRouter.java:363](http://eventrouter.java:363/))
com.vaadin.server.AbstractClientConnector.fireEvent([AbstractClientConnector.java:1190](http://abstractclientconnector.java:1190/))
com.vaadin.ui.Button.fireClick([Button.java:384](http://button.java:384/))
com.vaadin.ui.Button$[1.click](http://1.click/)([Button.java:57](http://button.java:57/))
jdk.internal.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke([DelegatingMethodAccessorImpl.java:43](http://delegatingmethodaccessorimpl.java:43/))
java.base/java.lang.reflect.Method.invoke([Method.java:566](http://method.java:566/))
com.vaadin.server.ServerRpcManager.applyInvocation([ServerRpcManager.java:155](http://serverrpcmanager.java:155/))
com.vaadin.server.ServerRpcManager.applyInvocation([ServerRpcManager.java:116](http://serverrpcmanager.java:116/))
com.vaadin.server.communication.ServerRpcHandler.handleInvocation([ServerRpcHandler.java:442](http://serverrpchandler.java:442/))
com.vaadin.server.communication.ServerRpcHandler.handleInvocations([ServerRpcHandler.java:407](http://serverrpchandler.java:407/))
com.vaadin.server.communication.ServerRpcHandler.handleRpc([ServerRpcHandler.java:275](http://serverrpchandler.java:275/))
com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest([UidlRequestHandler.java:91](http://uidlrequesthandler.java:91/))
com.vaadin.server.SynchronizedRequestHandler.handleRequest([SynchronizedRequestHandler.java:40](http://synchronizedrequesthandler.java:40/))
com.vaadin.server.VaadinService.handleRequest([VaadinService.java:1637](http://vaadinservice.java:1637/))
com.vaadin.server.VaadinServlet.service([VaadinServlet.java:464](http://vaadinservlet.java:464/))
javax.servlet.http.HttpServlet.service([HttpServlet.java:764](http://httpservlet.java:764/))
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter([ApplicationFilterChain.java:227](http://applicationfilterchain.java:227/))
org.apache.catalina.core.ApplicationFilterChain.doFilter([ApplicationFilterChain.java:162](http://applicationfilterchain.java:162/))
org.apache.tomcat.websocket.server.WsFilter.doFilter([WsFilter.java:53](http://wsfilter.java:53/))
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter([ApplicationFilterChain.java:189](http://applicationfilterchain.java:189/))
org.apache.catalina.core.ApplicationFilterChain.doFilter([ApplicationFilterChain.java:162](http://applicationfilterchain.java:162/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:327](http://filterchainproxy.java:327/))
[org.springframework.security](http://org.springframework.security/).web.access.intercept.FilterSecurityInterceptor.invoke([FilterSecurityInterceptor.java:115](http://filtersecurityinterceptor.java:115/))
[org.springframework.security](http://org.springframework.security/).web.access.intercept.FilterSecurityInterceptor.doFilter([FilterSecurityInterceptor.java:81](http://filtersecurityinterceptor.java:81/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.access.ExceptionTranslationFilter.doFilter([ExceptionTranslationFilter.java:121](http://exceptiontranslationfilter.java:121/))
[org.springframework.security](http://org.springframework.security/).web.access.ExceptionTranslationFilter.doFilter([ExceptionTranslationFilter.java:115](http://exceptiontranslationfilter.java:115/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.session.SessionManagementFilter.doFilter([SessionManagementFilter.java:126](http://sessionmanagementfilter.java:126/))
[org.springframework.security](http://org.springframework.security/).web.session.SessionManagementFilter.doFilter([SessionManagementFilter.java:81](http://sessionmanagementfilter.java:81/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.authentication.AnonymousAuthenticationFilter.doFilter([AnonymousAuthenticationFilter.java:105](http://anonymousauthenticationfilter.java:105/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter([SecurityContextHolderAwareRequestFilter.java:149](http://securitycontextholderawarerequestfilter.java:149/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.savedrequest.RequestCacheAwareFilter.doFilter([RequestCacheAwareFilter.java:63](http://requestcacheawarefilter.java:63/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.authentication.ui.DefaultLogoutPageGeneratingFilter.doFilterInternal([DefaultLogoutPageGeneratingFilter.java:58](http://defaultlogoutpagegeneratingfilter.java:58/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter([DefaultLoginPageGeneratingFilter.java:237](http://defaultloginpagegeneratingfilter.java:237/))
[org.springframework.security](http://org.springframework.security/).web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter([DefaultLoginPageGeneratingFilter.java:223](http://defaultloginpagegeneratingfilter.java:223/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.authentication.AbstractAuthenticationProcessingFilter.doFilter([AbstractAuthenticationProcessingFilter.java:218](http://abstractauthenticationprocessingfilter.java:218/))
[org.springframework.security](http://org.springframework.security/).web.authentication.AbstractAuthenticationProcessingFilter.doFilter([AbstractAuthenticationProcessingFilter.java:212](http://abstractauthenticationprocessingfilter.java:212/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter.doFilterInternal([OAuth2AuthorizationRequestRedirectFilter.java:178](http://oauth2authorizationrequestredirectfilter.java:178/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.authentication.logout.LogoutFilter.doFilter([LogoutFilter.java:103](http://logoutfilter.java:103/))
[org.springframework.security](http://org.springframework.security/).web.authentication.logout.LogoutFilter.doFilter([LogoutFilter.java:89](http://logoutfilter.java:89/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.header.HeaderWriterFilter.doHeadersAfter([HeaderWriterFilter.java:90](http://headerwriterfilter.java:90/))
[org.springframework.security](http://org.springframework.security/).web.header.HeaderWriterFilter.doFilterInternal([HeaderWriterFilter.java:75](http://headerwriterfilter.java:75/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.context.SecurityContextPersistenceFilter.doFilter([SecurityContextPersistenceFilter.java:110](http://securitycontextpersistencefilter.java:110/))
[org.springframework.security](http://org.springframework.security/).web.context.SecurityContextPersistenceFilter.doFilter([SecurityContextPersistenceFilter.java:80](http://securitycontextpersistencefilter.java/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal([WebAsyncManagerIntegrationFilter.java:55](http://webasyncmanagerintegrationfilter.java:55/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy$VirtualFilterChain.doFilter([FilterChainProxy.java:336](http://filterchainproxy.java:336/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy.doFilterInternal([FilterChainProxy.java:211](http://filterchainproxy.java:211/))
[org.springframework.security](http://org.springframework.security/).web.FilterChainProxy.doFilter([FilterChainProxy.java:183](http://filterchainproxy.java:183/))
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate([DelegatingFilterProxy.java:354](http://delegatingfilterproxy.java:354/))
org.springframework.web.filter.DelegatingFilterProxy.doFilter([DelegatingFilterProxy.java:267](http://delegatingfilterproxy.java:267/))
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter([ApplicationFilterChain.java:189](http://applicationfilterchain.java:189/))
org.apache.catalina.core.ApplicationFilterChain.doFilter([ApplicationFilterChain.java:162](http://applicationfilterchain.java:162/))
org.springframework.web.filter.RequestContextFilter.doFilterInternal([RequestContextFilter.java:100](http://requestcontextfilter.java:100/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter([ApplicationFilterChain.java:189](http://applicationfilterchain.java:189/))
org.apache.catalina.core.ApplicationFilterChain.doFilter([ApplicationFilterChain.java:162](http://applicationfilterchain.java:162/))
org.springframework.web.filter.FormContentFilter.doFilterInternal([FormContentFilter.java:93](http://formcontentfilter.java:93/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter([ApplicationFilterChain.java:189](http://applicationfilterchain.java:189/))
org.apache.catalina.core.ApplicationFilterChain.doFilter([ApplicationFilterChain.java:162](http://applicationfilterchain.java:162/))
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal([CharacterEncodingFilter.java:201](http://characterencodingfilter.java:201/))
org.springframework.web.filter.OncePerRequestFilter.doFilter([OncePerRequestFilter.java:117](http://onceperrequestfilter.java:117/))
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter([ApplicationFilterChain.java:189](http://applicationfilterchain.java:189/))
org.apache.catalina.core.ApplicationFilterChain.doFilter([ApplicationFilterChain.java:162](http://applicationfilterchain.java:162/))
org.apache.catalina.core.StandardWrapperValve.invoke([StandardWrapperValve.java:197](http://standardwrappervalve.java:197/))
org.apache.catalina.core.StandardContextValve.invoke([StandardContextValve.java:97](http://standardcontextvalve.java:97/))
org.apache.catalina.authenticator.AuthenticatorBase.invoke([AuthenticatorBase.java:541](http://authenticatorbase.java:541/))
org.apache.catalina.core.StandardHostValve.invoke([StandardHostValve.java:135](http://standardhostvalve.java:135/))
org.apache.catalina.valves.ErrorReportValve.invoke([ErrorReportValve.java:92](http://errorreportvalve.java:92/))
org.apache.catalina.core.StandardEngineValve.invoke([StandardEngineValve.java:78](http://standardenginevalve.java:78/))
org.apache.catalina.connector.CoyoteAdapter.service([CoyoteAdapter.java:360](http://coyoteadapter.java:360/))
org.apache.coyote.http11.Http11Processor.service([Http11Processor.java:399](http://http11processor.java:399/))
org.apache.coyote.AbstractProcessorLight.process([AbstractProcessorLight.java:65](http://abstractprocessorlight.java:65/))
org.apache.coyote.AbstractProtocol$ConnectionHandler.process([AbstractProtocol.java:889](http://abstractprotocol.java:889/))
[org.apache.tomcat.util.net](http://org.apache.tomcat.util.net/).NioEndpoint$SocketProcessor.doRun([NioEndpoint.java:1743](http://nioendpoint.java:1743/))
[org.apache.tomcat.util.net.SocketProcessorBase.run](http://org.apache.tomcat.util.net.socketprocessorbase.run/)([SocketProcessorBase.java:49](http://socketprocessorbase.java:49/))
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker([ThreadPoolExecutor.java:1191](http://threadpoolexecutor.java:1191/))
org.apache.tomcat.util.threads.ThreadPoolExecutor$[Worker.run](http://worker.run/)([ThreadPoolExecutor.java:659](http://threadpoolexecutor.java:659/))
org.apache.tomcat.util.threads.TaskThread$[WrappingRunnable.run](http://wrappingrunnable.run/)([TaskThread.java:61](http://taskthread.java:61/))
java.base/[java.lang.Thread.run](http://java.lang.thread.run/)([Thread.java:829](http://thread.java:829/))

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions