Hi everyone, I have a fresh installation of Dataverse version 6.6 using Docker containers and when I try to create a new dataset it causes an Internal Server Error. The only entry I can find in server.log is the following:
[2025-05-14T14:26:02.331+0000] [Payara 6.2025.2] [WARNING] [] [jakarta.enterprise.web] [tid: _ThreadID=115 _ThreadName=http-thread-pool::http-listener-1(4)] [timeMillis: 1747232762331] [levelValue: 900] [[
StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces Servlet threw exception
java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
at java.base/java.util.Objects.checkIndex(Objects.java:361)
at java.base/java.util.ArrayList.get(ArrayList.java:427)
at edu.harvard.iq.dataverse.DatasetPage.resetVersionUI(DatasetPage.java:2624)
at edu.harvard.iq.dataverse.DatasetPage.init(DatasetPage.java:2223)
at edu.harvard.iq.dataverse.DatasetPage.init(DatasetPage.java:1933)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.glassfish.expressly.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:186)
at org.glassfish.expressly.parser.AstValue.invoke(AstValue.java:253)
at org.glassfish.expressly.MethodExpressionImpl.invoke(MethodExpressionImpl.java:248)
at org.jboss.weld.module.web.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)
at org.jboss.weld.module.web.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:70)
at com.sun.faces.application.ActionListenerImpl.getNavigationOutcome(ActionListenerImpl.java:74)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:62)
at jakarta.faces.component.UIViewAction.broadcast(UIViewAction.java:506)
at jakarta.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:858)
at jakarta.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1338)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:56)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:72)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:131)
at jakarta.faces.webapp.FacesServlet.executeLifecyle(FacesServlet.java:691)
at jakarta.faces.webapp.FacesServlet.service(FacesServlet.java:449)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1554)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:331)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:211)
at org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter(TyrusServletFilter.java:83)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:253)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:211)
at org.ocpsoft.rewrite.servlet.RewriteFilter.doFilter(RewriteFilter.java:226)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:253)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:211)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:166)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:757)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:577)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:158)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:372)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:239)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:520)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:217)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:174)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:153)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:196)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:88)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:246)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:178)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:118)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:96)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:51)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:510)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:82)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:83)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:101)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:535)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:515)
at java.base/java.lang.Thread.run(Thread.java:840)
]]
Any ideas of what could be causing this error?
That's the complete server.log file?
That's only the last entry from server.log, which is the only one that appears with the error.
very strange
So you're saying you're getting that index out of bounds exception here: https://github.com/IQSS/dataverse/blob/v6.6/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java#L2624
It looks like that code was touched for 6.6 in this PR: ORCID: Support authenticated ORCIDs in account profile #11222
How does the author info look when you are entering it? Can you please share a screenshot?
I can't even get to the creation page, when I click on New Dataset it returns the Internal Server Error page. I am using the user dataverseAdmin. The line of the code you sent refers to first name and last name, which looks to be correctly set for that user.
I created a new user, to check if it was only happening for dataverseAdmin, but it looks like it is happening for all users.
While looking at server.log, I also found at the beginning a lot of SEVERE entries like this, all for .jar files inside /usr/local/payara6/glassfish/domains/domain1/applications/dataverse/WEB-INF/lib/:
[2025-05-14T13:54:50.207+0000] [Payara 6.2025.2] [SEVERE] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=166 _ThreadName=payara-executor-service-task] [timeMillis: 1747230890207] [levelValue: 1000] [[
Exception while parsing file file:/usr/local/payara6/glassfish/domains/domain1/applications/dataverse/WEB-INF/lib/antlr4-runtime-4.12.0.jar
java.lang.RuntimeException: java.io.IOException: invalid zip file: file:/usr/local/payara6/glassfish/domains/domain1/applications/dataverse/WEB-INF/lib/antlr4-runtime-4.12.0.jar
at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.entries(InputJarArchive.java:205)
at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.entries(InputJarArchive.java:182)
at com.sun.enterprise.v3.server.ReadableArchiveScannerAdapter.onSelectedEntries(ReadableArchiveScannerAdapter.java:125)
at org.glassfish.hk2.classmodel.reflect.Parser.doJob(Parser.java:321)
at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:280)
at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:269)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.io.IOException: invalid zip file: file:/usr/local/payara6/glassfish/domains/domain1/applications/dataverse/WEB-INF/lib/antlr4-runtime-4.12.0.jar
at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$ArchiveJarEntrySource.<init>(InputJarArchive.java:589)
at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.createEntryEnumeration(InputJarArchive.java:458)
at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.entries(InputJarArchive.java:203)
... 9 more
]]
Could this be the cause? On the dashboard page I noticed that some elements are not rendering correctly, like this:
image.png
Strange. How are you running Dataverse? You mentioned Docker. Are you following https://guides.dataverse.org/en/6.6/container/running/demo.html ?
No, I am following our repository https://gitlab.com/lip-computing/dataverse.
As a sanity check, could you please try that "demo" tutorial?
I was using older versions of the metadatablocks .tsv files, thats why I was getting that index out of bounds error.
Ah, sounds like you figured it out. Great!
Thank you for the help @Philip Durbin ☀️ .
Two more things:
This problem is probably happening because of the language packages, right?
image.png
Regarding the SEVERE log entries for the .jar files, any idea of what could be causing them?
Yes, the ??? is probably from out of date properties files.
I'm not sure what to say about the jar file. I have it locally too:
% find . | grep antlr4-runtime
./target/dataverse/WEB-INF/lib/antlr4-runtime-4.12.0.jar
./target/docker/gdcc/dataverse/unstable/build/maven/deps/antlr4-runtime-4.12.0.jar
@Oliver Bertuch might know. He contributes to Payara.
For the language packages I am using the ones from https://github.com/GlobalDataverseCommunityConsortium/dataverse-language-packs.git version 6.4. I searched in Bundle.properties and the var names do not match with the ones presented https://github.com/GlobalDataverseCommunityConsortium/dataverse-language-packs/blob/bf38c1607f87574a6a33c3f5d9d27b7c162de604/en_US/Bundle.properties#L525:
image.png
Hmm, Jayanthy knows more about that repo than I do. You could open an issue.
What if you get them from https://github.com/IQSS/dataverse/tree/v6.4 ?
Actually I am using Dataverse v6.6, the language packages are v6.4 just because it is the most recent version available on that repository. For now I can remove these packages and use the ones that come bundled with Dataverse by default.
Sure, sounds good.
Last updated: Oct 30 2025 at 05:14 UTC