comparison gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java @ 369:77cd3a2bc381

Fixed file-leak bug and sourced xml parsing out to XMLUtils of artifactdatabase. gnv-artifacts/trunk@446 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 17 Dec 2009 11:42:21 +0000
parents 2f7a28f211c7
children 3a0c0ad113d9
comparison
equal deleted inserted replaced
368:6491000407dd 369:77cd3a2bc381
5 5
6 import java.io.FileInputStream; 6 import java.io.FileInputStream;
7 import java.io.FileNotFoundException; 7 import java.io.FileNotFoundException;
8 import java.io.IOException; 8 import java.io.IOException;
9 import java.io.InputStream; 9 import java.io.InputStream;
10 import java.io.File;
11
10 import java.util.Properties; 12 import java.util.Properties;
11 13
12 import org.apache.log4j.Logger; 14 import org.apache.log4j.Logger;
13 import org.w3c.dom.Document; 15 import org.w3c.dom.Document;
14 16
17 import de.intevation.gnv.artifacts.cache.CacheFactory; 19 import de.intevation.gnv.artifacts.cache.CacheFactory;
18 import de.intevation.gnv.geobackend.base.connectionpool.ConnectionPoolFactory; 20 import de.intevation.gnv.geobackend.base.connectionpool.ConnectionPoolFactory;
19 import de.intevation.gnv.geobackend.base.query.container.QueryContainerFactory; 21 import de.intevation.gnv.geobackend.base.query.container.QueryContainerFactory;
20 import de.intevation.gnv.geobackend.base.query.container.exception.QueryContainerException; 22 import de.intevation.gnv.geobackend.base.query.container.exception.QueryContainerException;
21 import de.intevation.gnv.chart.XMLChartTheme; 23 import de.intevation.gnv.chart.XMLChartTheme;
22 import de.intevation.gnv.utils.ArtifactXMLUtilities; 24
25 import de.intevation.artifactdatabase.XMLUtils;
23 26
24 /** 27 /**
25 * @author Tim Englich <tim.englich@intevation.de> 28 * @author Tim Englich <tim.englich@intevation.de>
26 * 29 *
27 */ 30 */
83 86
84 log.info("Initialisation of chart template"); 87 log.info("Initialisation of chart template");
85 String chartConfigFile = Config.getStringXPath( 88 String chartConfigFile = Config.getStringXPath(
86 config, CHARTCONFIGNODEPATH 89 config, CHARTCONFIGNODEPATH
87 ); 90 );
88 chartConfigFile = Config.replaceConfigDir(chartConfigFile); 91 chartConfigFile = Config.replaceConfigDir(chartConfigFile);
89 log.debug("Parse xml configuration of " + chartConfigFile); 92 log.debug("Parse xml configuration of " + chartConfigFile);
90 InputStream is = new FileInputStream(chartConfigFile); 93
91 Document template = ArtifactXMLUtilities.readDocument(is); 94 Document tmpl = XMLUtils.parseDocument(new File(chartConfigFile));
92 XMLChartTheme theme = new XMLChartTheme("XMLChartTheme"); 95 XMLChartTheme theme = new XMLChartTheme("XMLChartTheme");
93 theme.applyXMLConfiguration(template); 96 if (tmpl != null) {
97 theme.applyXMLConfiguration(tmpl);
98 }
99 else {
100 log.error(
101 "Cannot load chart template from '" +
102 chartConfigFile + "'");
103 }
94 104
95 returnValue = new GNVArtifactContext(config); 105 returnValue = new GNVArtifactContext(config);
96 106
97 returnValue.put(CHARTTEMPLATE, theme); 107 returnValue.put(CHARTTEMPLATE, theme);
98 } catch (FileNotFoundException e) { 108 } catch (FileNotFoundException e) {

http://dive4elements.wald.intevation.org