[MGNLRSSAGG-117] Importing an RSS feed fails because of missing required metaData Created: 04/Nov/13  Updated: 27/Apr/18  Resolved: 27/Apr/18

Status: Closed
Project: Magnolia RSS Aggregator Module
Component/s: rss_importer
Affects Version/s: 1.4.3
Fix Version/s: 2.2.x

Type: Bug Priority: Neutral
Reporter: Nils Breunese Assignee: Unassigned
Resolution: Obsolete Votes: 0
Labels: vpro
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:
Epic Link: Support

 Description   

While importing an RSS feed the recreateFeedChannelNode method of RSSFeedImportHandler is called and calls NodeUtil.createPath to create a node for the channel with the dataItemNode node type.

This ends with an exception in ItemSaveOperation.validateTransientItems because this method checks for mandatory child nodes (line 554) and the data:/rssaggregator/news/data node doesn't have a MetaData node.

Indeed magnolia-module-data-nodetypes.xml defines mgnl:metaData as a required child node definition for the dataItemNode node type.

We are using RSS Aggregator module 1.4.5 and Data module 1.7.7.

Should a migration task add metaData to dataItemNode nodes or shouldn't metaData be required for these nodes?



 Comments   
Comment by Nils Breunese [ 04/Nov/13 ]

MGNLRSSAGG-90 (RSS Aggregator module 1.4.2) mentions that MGNLDATA-185 (Data module 1.7.6) introduced metaData as a required node for the dataItemNode node type.

Comment by Nils Breunese [ 04/Nov/13 ]

Creating a new aggregator under Data > RSS Aggregator doesn't have this problem.

Comment by Nils Breunese [ 04/Nov/13 ]

We have compared the existing data:/rssaggregator/news/data node with the data node of a new aggregator we just created using the following Groovy script:

import info.magnolia.jcr.util.SessionUtil

paths = [ '/rssaggregator/news/data', '/rssaggregator/new-test-aggregator/data' ]

paths.each { path ->
    node = SessionUtil.getNode('data', path)
    println "${node} has metaData: " + node.hasNode("MetaData")
}

Indeed this prints false for the first node and true for the second.

Comment by Antti Hietala [ 27/Apr/18 ]

Obsolete because RSS Aggregator uses its own workspace and nodetype, no longer dataItem.

Generated at Mon Feb 12 07:05:42 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.