try {
URL base = IOHelper.getLocationAsURL(configURL);
xml = IOHelper.openStream(base);
InputStreamReader reader = new InputStreamReader(xml, "UTF-8");
ProcessorContext context = deployer.createProcessorContext();
NodeConfiguration config = deployer.loadXMLDocument(reader, context.getMonitor());
if (base != null && config != null) {
// Resolve the contribution location against the node.xml
// TODO: absolute locations?
for (ContributionConfiguration c : config.getContributions()) {
String location = c.getLocation();
if (location != null) {
URL url = new URL(base, location);
url = IOHelper.normalize(url);
c.setLocation(url.toString());