You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Niek Raaijmakers (Jira)" <ji...@apache.org> on 2021/10/05 07:09:00 UTC

[jira] [Commented] (SLING-10770) JcrNamespaceRegistry.registerCnd throws NPE

    [ https://issues.apache.org/jira/browse/SLING-10770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17424329#comment-17424329 ] 

Niek Raaijmakers commented on SLING-10770:
------------------------------------------

You can assign this to me.

> JcrNamespaceRegistry.registerCnd throws NPE
> -------------------------------------------
>
>                 Key: SLING-10770
>                 URL: https://issues.apache.org/jira/browse/SLING-10770
>             Project: Sling
>          Issue Type: Bug
>          Components: Content-Package to Feature Model Converter
>            Reporter: Angela Schreiber
>            Priority: Major
>             Fix For: Content-Package to Feature Model Converter 1.1.12
>
>
> [~karlpauls], while trying to fix some sonar findings in the converter I came across a warning about a null {{NodeTypeManager}} being passed to {{CndImporter.registerNodeTypes}} in the following new method introduced with  SLING-10243:
> {code}
> public void registerCnd(Reader reader, String systemId) throws ParseException, RepositoryException, IOException {
>         NodeTypeManager ntManager = null;
>         ValueFactory valueFactory = null;
>         CndImporter.registerNodeTypes(reader, systemId, ntManager, this, valueFactory, false);
>         registeredCndSystemIds.add(systemId);
>     }
> {code}
> a simple test shows that the method always fails with NPE.
> so, unless i am missing something that code calling this method doesn't work at all..... according to https://sonarcloud.io/component_measures?id=apache_sling-org-apache-sling-feature-cpconverter&metric=uncovered_conditions&selected=apache_sling-org-apache-sling-feature-cpconverter%3Asrc%2Fmain%2Fjava%2Forg%2Fapache%2Fsling%2Ffeature%2Fcpconverter%2Fvltpkg%2FJcrNamespaceRegistry.java&view=list the method isn't covered with any tests either.... so that might explain why it has not been spotted before.
> what would be the best approach to get this fixed? should we revert changes made with SLING-10243? There is most probably no instance of JCR {{NodeTypeManager}} available if there is no JCR repository available at the stage the converter is being executed and I don't think mocking it at this stage is sensible.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)