Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-60939

On portal start StructureNameException is thrown if company.default.locale is set to a custom locale (not en_US)

    Details

      Description

      When starting portal with a locale setting "lt_LT", the StructureNameException is thrown and default ddm structures(Document Types) not correctly initialized(can't be created).

      Reproduction steps:
      1. Using master and empty database.
      2. Set the the below properties in portal-ext.properties
      locales=lt_LT,en_US
      locales.enabled=lt_LT,en_US
      company.default.locale=lt_LT
      3. Start the portal

      Expected result: Portal started correctly with the expected locale settings
      Actual result: Error thrown in the server console during the Portal startup as the followings:

      com.liferay.portal.kernel.events.ActionException: com.liferay.dynamic.data.mapping.exception.StructureNameException: Name is null for locale 立陶宛文 (立陶宛)
              at com.liferay.document.library.events.AddDefaultDocumentLibraryStructuresAction.run(AddDefaultDocumentLibraryStructuresAction.java:86)
              at com.liferay.document.library.events.AddDefaultDocumentLibraryStructuresAction.activate(AddDefaultDocumentLibraryStructuresAction.java:100)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:222)
              at org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:37)
              at org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:615)
              at org.apache.felix.scr.impl.helper.BaseMethod.invoke(BaseMethod.java:499)
              at org.apache.felix.scr.impl.helper.ActivateMethod.invoke(ActivateMethod.java:295)
              at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:302)
              at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:113)
              at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:847)
              at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:814)
              at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:724)
              at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:950)
              at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:911)
              at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1215)
              at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1136)
              at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:945)
              at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:881)
              at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1167)
              at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:120)
              at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109)
              at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:917)
              at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
              at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
              at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862)
              at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801)
              at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127)
              at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225)
              at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464)
              at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:482)
              at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:1001)
              at com.liferay.registry.internal.RegistryImpl.registerService(RegistryImpl.java:268)
              at com.liferay.portal.servlet.MainServlet.registerPortalInitialized(MainServlet.java:1330)
              at com.liferay.portal.servlet.MainServlet.init(MainServlet.java:390)
              at javax.servlet.GenericServlet.init(GenericServlet.java:158)
              at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)
              at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)
              at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1087)
              at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5266)
              at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5554)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
              at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
              at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
              at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
              at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:677)
              at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1912)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
              at java.util.concurrent.FutureTask.run(FutureTask.java:262)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:745)
      Caused by: com.liferay.dynamic.data.mapping.exception.StructureNameException: Name is null for locale 立陶宛文 (立陶宛)
              at com.liferay.dynamic.data.mapping.internal.DDMStructureManagerImpl.translate(DDMStructureManagerImpl.java:426)
              at com.liferay.dynamic.data.mapping.internal.DDMStructureManagerImpl.addStructure(DDMStructureManagerImpl.java:90)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at com.liferay.portal.kernel.util.ProxyFactory$ServiceTrackedInvocationHandler.invoke(ProxyFactory.java:112)
              at com.sun.proxy.$Proxy472.addStructure(Unknown Source)
              at com.liferay.portlet.dynamicdatamapping.DDMStructureManagerUtil.addStructure(DDMStructureManagerUtil.java:49)
              at com.liferay.portlet.documentlibrary.service.impl.DLFileEntryTypeLocalServiceImpl.updateDDMStructure(DLFileEntryTypeLocalServiceImpl.java:756)
              at com.liferay.portlet.documentlibrary.service.impl.DLFileEntryTypeLocalServiceImpl.addFileEntryType(DLFileEntryTypeLocalServiceImpl.java:113)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:153)
              at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:93)
              at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:55)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.RetryAdvice.invoke(RetryAdvice.java:46)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.service.ServiceContextAdvice.invoke(ServiceContextAdvice.java:38)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:56)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:127)
              at com.liferay.portal.spring.aop.ServiceBeanAopProxy.invoke(ServiceBeanAopProxy.java:173)
              at com.sun.proxy.$Proxy190.addFileEntryType(Unknown Source)
              at com.liferay.document.library.events.AddDefaultDocumentLibraryStructuresAction.addDLFileEntryType(AddDefaultDocumentLibraryStructuresAction.java:157)
              at com.liferay.document.library.events.AddDefaultDocumentLibraryStructuresAction.addDLFileEntryTypes(AddDefaultDocumentLibraryStructuresAction.java:172)
              at com.liferay.document.library.events.AddDefaultDocumentLibraryStructuresAction.doRun(AddDefaultDocumentLibraryStructuresAction.java:363)
              at com.liferay.document.library.events.AddDefaultDocumentLibraryStructuresAction.run(AddDefaultDocumentLibraryStructuresAction.java:83)
              ... 54 more
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              harry.chai Harry Chai
              Reporter:
              hai.yu Hai Yu
              Participants of an Issue:
              Recent user:
              Marta Elicegui
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Days since last comment:
                5 years, 45 weeks, 2 days ago

                  Packages

                  Version Package
                  7.0.0 Alpha 5