[ https://issues.apache.org/jira/browse/CONFIGURATION-641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15928182#comment-15928182 ]
RafaĆ Figas commented on CONFIGURATION-641: ------------------------------------------- My question is: what is by the book code, that should be used for loading (and then perform reading) configuration from input stream? After some reading I came with something like this, what seems to be working well: {code} XMLConfiguration cfg = new BasicConfigurationBuilder<>(XMLConfiguration.class).configure(new Parameters().xml()).getConfiguration(); FileHandler fh = new FileHandler(cfg); {code} And then {{cfg}} should contain loaded configuration. Is this correct? > XMLConfiguration.load may throw NPE > ----------------------------------- > > Key: CONFIGURATION-641 > URL: https://issues.apache.org/jira/browse/CONFIGURATION-641 > Project: Commons Configuration > Issue Type: Bug > Affects Versions: 2.1 > Environment: Java 8 / Linux > Reporter: Claude Warren > Fix For: 2.1.1 > > Original Estimate: 1h > Remaining Estimate: 1h > > I expect that > {noformat} > URL url = Test.class.getResource( "/Test.xml"); > XMLConfiguration config = new XMLConfiguration(); > config.read( url.openStream()); > {noformat} > Would read the XML file. However it will throw a NPE at line 967 > {noformat} > private void load(InputSource source) throws ConfigurationException > { > try > { > URL sourceURL = locator.getSourceURL(); // <- NPE here > if (sourceURL != null) > { > source.setSystemId(sourceURL.toString()); > } > {noformat} > I believe that testing for locator == null first will solve the problem as > the rest of the code in the method does not appear to use it. -- This message was sent by Atlassian JIRA (v6.3.15#6346)