Stream: troubleshooting

Topic: 500 error after adding new language in the header


view this post on Zulip shan (Jul 20 2024 at 06:25):

here is the error message:[2024-07-20T14:21:52.974+0800] [Payara 6.2023.8] [WARNING] [] [jakarta.enterprise.web] [tid: _ThreadID=181 _ThreadName=http-thread-pool::http-listener-1(5)] [timeMillis: 1721456512974] [levelValue: 900] [[
StandardWrapperValve[HomepageServlet]: Servlet.service() for servlet HomepageServlet threw exception
java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key staticSearchFields.license
at java.base/java.util.ResourceBundle.getObject(ResourceBundle.java:564)
at java.base/java.util.ResourceBundle.getString(ResourceBundle.java:521)
at edu.harvard.iq.dataverse.util.BundleUtil.getStringFromBundleNoMissingCheck(BundleUtil.java:70)
at edu.harvard.iq.dataverse.util.BundleUtil.getStringFromPropertyFile(BundleUtil.java:91)
at edu.harvard.iq.dataverse.util.BundleUtil.getStringFromPropertyFile(BundleUtil.java:83)
at edu.harvard.iq.dataverse.search.SearchServiceBean.search(SearchServiceBean.java:837)
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:568)
at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:588)
at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:408)
at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4835)
at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:653)
at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:834)
at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:603)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)
at jdk.internal.reflect.GeneratedMethodAccessor230.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:888)
at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:833)
at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:603)
at org.jboss.weld.module.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:72)
at org.jboss.weld.module.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)
at jdk.internal.reflect.GeneratedMethodAccessor201.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:888)
at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:833)
at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:375)
at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4807)
at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4795)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:90)
at jdk.proxy74/jdk.proxy74.$Proxy310.search(Unknown Source)
at edu.harvard.iq.dataverse.search.__EJB31_Generated__SearchServiceBean__Intf____Bean__.search(Unknown Source)
at edu.harvard.iq.dataverse.search.SearchIncludeFragment.search(SearchIncludeFragment.java:362)
at edu.harvard.iq.dataverse.search.SearchIncludeFragment.search(SearchIncludeFragment.java:222)
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:568)
at jakarta.el.ELUtil.invokeMethod(ELUtil.java:227)
at jakarta.el.BeanELResolver.invoke(BeanELResolver.java:481)
at jakarta.el.CompositeELResolver.invoke(CompositeELResolver.java:198)
at org.glassfish.expressly.parser.AstValue.invoke(AstValue.java:245)
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:1332)
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:159)
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.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.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:816)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:527)
at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:497)
at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:379)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
at edu.harvard.iq.dataverse.HomepageServlet.processRequest(HomepageServlet.java:45)
at edu.harvard.iq.dataverse.HomepageServlet.doGet(HomepageServlet.java:61)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:527)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
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)

Any ideas on how to handle this?

view this post on Zulip Philip Durbin 🚀 (Jul 22 2024 at 13:56):

Which version of Dataverse is this?

view this post on Zulip shan (Jul 23 2024 at 01:57):

v6.2

view this post on Zulip luddaniel (Jul 23 2024 at 07:27):

Hi, your log seems related to missing key language staticSearchFields.license.
My guess is for whatever reason you cannot load a page without the key of the newly added language.
For example, I add french language :
curl http://localhost:8080/api/admin/settings/:Languages -X PUT -d '[{"locale":"en","title":"English"},{"locale":"fr","title":"Français"}]'
It is expected to have the file staticSearchFields_fr.properties in the custom bundle path, containing the translated equivalent of staticSearchFields.properties

view this post on Zulip Philip Durbin 🚀 (Jul 23 2024 at 14:01):

Sounds right. I'm sure @luddaniel has more experience configuring multiple languages than I do. Thanks!

view this post on Zulip shan (Jul 25 2024 at 07:40):

@luddaniel Thanks for your reply, I have added staticSearchFields_cn.properties file
under the directory "/home/dataverse/langBundles", see below:
image.png

and then I restart domain by running. "./asadmin restart-domains /home/dataverse/dataverse-6.2/target/dataverse-6.2.war", but when the 500 error messages still appears.

view this post on Zulip shan (Jul 25 2024 at 07:41):

here is the error log:
image.png

view this post on Zulip shan (Jul 25 2024 at 07:42):

here is the output of "curl http://localhost:8080/api/admin/settings/:Languages"
image.png

view this post on Zulip luddaniel (Jul 25 2024 at 10:01):

I will be on vacation for 2 weeks, so I won't be able to answer after today.

My feeling is that the the jvm option is not enabled; Can you grep "dataverse.lang.directory" /usr/local/payara6/glassfish/domains/datainra/config/domain.xml ?

Also ./asadmin restart-domains /home/dataverse/dataverse-6.2/target/dataverse-6.2.war is a reallllyy weird command for me, once dataverse-6.2.war deployed you should only need to start using asadmin start-domain

view this post on Zulip luddaniel (Jul 25 2024 at 10:09):

Other points crossing my mind, but less relevant :

view this post on Zulip shan (Jul 26 2024 at 01:22):

dataverse.lang.directory is enabled in /usr/local/payara6/glassfish/domains/datainra/config/domain.xml
image.png

view this post on Zulip Philip Durbin 🚀 (Jul 26 2024 at 13:13):

@shan with luddaniel going on vacation, you might want to try asking at https://groups.google.com/g/dataverse-community where there are more people than here in Zulip.


Last updated: Oct 30 2025 at 06:21 UTC