-
Bug
-
Resolution: Fixed
-
Critical
-
4.9.0
-
None
-
None
-
4.9.0 RC2
-
Oui
A disable condition is defined on a repeater attribute :
<cms:metadata name="minsize-geocode" type="geocode"> <cms:label>GPS</cms:label> <cms:description>GPS</cms:description> <disable-conditions> <condition id="minSize-string" operator="eq">MAG</condition> </disable-conditions> </cms:metadata>
A search model is defined with display of only one of attribute of the disable condition :
<item ref="repeaterMinSize"> <item ref="minsize-doublemult"></item> <item ref="minsize-geocode"></item> </item>
When using this search model, following error is encountered :
Cannot invoke "org.apache.commons.lang3.tuple.Pair.getLeft()" because "repeaterNameAndEntryPosition" is null java.lang.NullPointerException: Cannot invoke "org.apache.commons.lang3.tuple.Pair.getLeft()" because "repeaterNameAndEntryPosition" is null at org.ametys.cms.data.holder.DataHolderRelativeDisableConditionsHelper._doesRepeaterContainValue(DataHolderRelativeDisableConditionsHelper.java:261) at org.ametys.cms.data.holder.DataHolderRelativeDisableConditionsHelper.containsValue(DataHolderRelativeDisableConditionsHelper.java:212) at org.ametys.cms.data.holder.DataHolderStaticRelativeDisableCondition.containsRelativeValue(DataHolderStaticRelativeDisableCondition.java:97) at org.ametys.runtime.model.disableconditions.AbstractRelativeDisableCondition._getConditionDefinitionAndValue(AbstractRelativeDisableCondition.java:190) at org.ametys.cms.data.holder.DataHolderStaticRelativeDisableCondition._getConditionDefinitionAndValue(DataHolderStaticRelativeDisableCondition.java:78) at org.ametys.runtime.model.disableconditions.AbstractRelativeDisableCondition.evaluate(AbstractRelativeDisableCondition.java:128) at org.ametys.cms.data.holder.impl.IndexableDataHolderHelper._getExternalDisableConditionsValues(IndexableDataHolderHelper.java:482) at org.ametys.cms.data.holder.impl.IndexableDataHolderHelper.getExternalDisableConditionsValues(IndexableDataHolderHelper.java:459) at org.ametys.cms.data.holder.impl.IndexableDataHolderHelper.getExternalDisableConditionsValues(IndexableDataHolderHelper.java:464) at org.ametys.cms.data.holder.impl.IndexableDataHolderHelper.getExternalDisableConditionsValues(IndexableDataHolderHelper.java:464) at org.ametys.cms.data.holder.impl.IndexableDataHolderHelper.externalDisableConditionsToSAX(IndexableDataHolderHelper.java:288) at org.ametys.cms.data.holder.impl.DefaultModelAwareDataHolder.dataToSAXForEdition(DefaultModelAwareDataHolder.java:846) at org.ametys.plugins.repository.data.ametysobject.ModelAwareDataAwareAmetysObject.dataToSAXForEdition(ModelAwareDataAwareAmetysObject.java:161) at org.ametys.cms.content.ContentSaxer.saxAttributes(ContentSaxer.java:382) at org.ametys.cms.content.ContentSaxer.saxBody(ContentSaxer.java:181) at org.ametys.web.content.ContentSaxer.saxBody(ContentSaxer.java:68) at org.ametys.cms.content.ContentSaxer.saxContent(ContentSaxer.java:150) at org.ametys.cms.content.ContentGenerator._saxContent(ContentGenerator.java:123) at org.ametys.cms.content.ContentGenerator._generateContent(ContentGenerator.java:87) at org.ametys.cms.content.ContentGenerator.generate(ContentGenerator.java:71) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:483) at org.apache.cocoon.components.source.impl.SitemapSource.getInputStream(SitemapSource.java:267) at org.ametys.core.ui.dispatcher.DispatchGenerator._handleResponse(DispatchGenerator.java:266) at org.ametys.core.ui.dispatcher.DispatchGenerator._dispatchingSubRequest(DispatchGenerator.java:221) at org.ametys.core.ui.dispatcher.DispatchGenerator._dispatching(DispatchGenerator.java:142) at org.ametys.core.ui.dispatcher.DispatchGenerator.generate(DispatchGenerator.java:93) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:483) at org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:144) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.Cocoon.process(Cocoon.java:699) at org.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:717) at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:1583)
- Bloque
-
RUNTIME-4187 [External disable conditions] review behavior for repeater entries
-
- Resolved
-