@SuppressWarnings({}) public static void main(String[] args) { try { try { String logConfigFile = ConfigReader.readConfig("logConfigFile", "StatPortalOpenData"); SpodLogger.configureLogger(logConfigFile); } catch (Exception ex) { // si perde il logging ma l'applicazione continua a funzionare } String configDir = ConfigReader.getConfigDir(); String appContextFile = "file:" + configDir + "applicationContext.xml"; FileSystemXmlApplicationContext cpac; try { cpac = new FileSystemXmlApplicationContext(appContextFile); } catch (Exception ex) { SpodLogger.log(LogType.FATAL, ex); SpodLogger.log(LogType.FATAL, "Il file " + appContextFile + " non esiste."); throw new ServiceConfigurationError("Non riesco a trovare " + appContextFile); } String urlRegex = "(ftp|http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))"; String endpointUri = ConfigReader.readConfig("url", "StatPortalOpenData"); if (endpointUri == null) { throw new Exception("Manca il parametro url"); } if (!endpointUri.matches(urlRegex)) { throw new Exception("Chiave url non valida"); } String namespace = "StatPortal"; final StatPortalJPAProducer jpaProducer = new StatPortalJPAProducer(namespace, 50, cpac); String numDistinctValuesStr = ConfigReader.readConfig("numDistinctValues", "StatPortalOpenData"); int numDistinctValues = 20; if (numDistinctValuesStr != null && !"".equalsIgnoreCase(numDistinctValuesStr)) { try { numDistinctValues = Integer.parseInt(numDistinctValuesStr); } catch (Exception e) { SpodLogger.log(LogType.WARNING, "Valore di numDistinctValues non valido", e); } } final it.sister.statportal.odata.StatPortalProducer producer = new it.sister.statportal.odata.StatPortalProducer(jpaProducer, numDistinctValues); // register the producer as the static instance, then launch the // http server ODataProducerProvider.setInstance(producer); SpodLogger.log(LogType.INFO, "Starting service"); ProducerUtil.hostODataServer(endpointUri); } catch (Exception ex) { SpodLogger.log(LogType.FATAL, ex); } }
@Override public void init(ServletConfig config) throws ServletException { // Inizializzazione connessione al DB site super.init(config); // Custom param config enabled = Boolean.parseBoolean( ConfigReader.readConfig("bulkUpdateVisibilityServletEnabled", "SpodCkanApi")); }