You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/10/20 04:09:56 UTC

openmeetings git commit: [OPENMEETINGS-1722] config caching is improved

Repository: openmeetings
Updated Branches:
  refs/heads/master 9bb9c3650 -> 8737e80f5


[OPENMEETINGS-1722] config caching is improved


Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/8737e80f
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/8737e80f
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/8737e80f

Branch: refs/heads/master
Commit: 8737e80f55bde08129cad3ed088fe447bc096dd3
Parents: 9bb9c36
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Fri Oct 20 11:09:48 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Fri Oct 20 11:09:48 2017 +0700

----------------------------------------------------------------------
 .../openmeetings/core/remote/MobileService.java |  3 +-
 .../core/remote/ScopeApplicationAdapter.java    |  7 +-
 .../db/dao/basic/ConfigurationDao.java          | 94 +++++++++++---------
 .../openmeetings/db/dao/room/RoomDao.java       |  5 +-
 .../openmeetings/db/entity/user/User.java       |  3 +-
 .../service/mail/template/FeedbackTemplate.java |  5 +-
 .../subject/RecordingExpiringTemplate.java      |  4 +-
 .../openmeetings/service/user/UserManager.java  |  3 +-
 .../util/OpenmeetingsVariables.java             | 50 +++++++++--
 .../openmeetings/util/crypt/CryptProvider.java  |  4 +-
 .../web/admin/backup/BackupPanel.java           |  4 +-
 .../openmeetings/web/app/Application.java       |  6 +-
 .../web/common/UploadableImagePanel.java        |  5 +-
 .../openmeetings/web/pages/BaseInitedPage.java  |  8 --
 .../web/pages/BaseNotInitedPage.java            |  7 --
 .../apache/openmeetings/web/pages/BasePage.java | 10 +--
 .../openmeetings/web/pages/NotInitedPage.java   |  5 --
 .../web/pages/auth/ForgetPasswordDialog.java    |  3 +-
 .../web/pages/auth/RegisterDialog.java          |  3 +-
 .../openmeetings/web/pages/auth/SignInPage.java |  3 +-
 .../web/pages/install/InstallWizardPage.java    |  5 --
 .../web/room/menu/RoomMenuPanel.java            |  3 +-
 .../web/room/menu/StartSharingButton.java       |  3 +-
 .../web/room/sidebar/UploadDialog.java          |  4 +-
 .../openmeetings/web/user/AboutDialog.java      |  5 +-
 .../web/util/ExtendedClientProperties.java      |  2 +-
 .../openmeetings/web/util/OmUrlFragment.java    |  3 +-
 .../openmeetings/AbstractJUnitDefaults.java     |  8 +-
 .../openmeetings/backup/TestOldBackups.java     |  3 +-
 29 files changed, 149 insertions(+), 119 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
index e7793b7..2ac3c13 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_VE
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_FRONTEND;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_OAUTH;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.Version.getVersion;
 
@@ -169,7 +170,7 @@ public class MobileService {
 				//TODO unify with Register dialog
 				String hash = UUID.randomUUID().toString();
 
-				String baseURL = cfgDao.getBaseUrl();
+				String baseURL = getBaseUrl();
 				boolean sendConfirmation = !Strings.isEmpty(baseURL)
 						&& cfgDao.getBool(CONFIG_EMAIL_VERIFICATION, false);
 				Object user = userManager.registerUserInit(UserDao.getDefaultRights(), login, password, lastname

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
index 8ee0499..040faa9 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
@@ -123,11 +123,8 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 
 			_log.debug("webAppPath : " + OmFileHelper.getOmHome());
 
-			// Only load this Class one time Initially this value might by empty, because the DB is empty yet
-			cfgDao.getCryptKey();
-
-			// init your handler here
-			cfgDao.reloadRoomSettings();
+			// Init all global config properties
+			cfgDao.reinit();
 
 			for (String scopeName : scope.getScopeNames()) {
 				_log.debug("scopeName :: " + scopeName);

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
index 4969ecd..d399a22 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
@@ -31,6 +31,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_FLASH_SE
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_FLASH_VIDEO_BANDWIDTH;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_FLASH_VIDEO_CODEC;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_FLASH_VIDEO_FPS;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_GOOGLE_ANALYTICS_CODE;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_HEADER_CSP;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_HEADER_XFRAME;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_KEYCODE_ARRANGE;
@@ -51,15 +52,17 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_QUALITY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_SECURE;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_SSL_PORT;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_VIDEO_CODEC;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getConfigKeyCryptClassName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getRoomSettings;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setApplicationName;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.setConfigKeyCryptClassName;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.setBaseUrl;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.setCryptClassName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setExtProcessTtl;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.setGaCode;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.setMaxUploadSize;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setRoomSettings;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.setSipEnabled;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -218,25 +221,6 @@ public class ConfigurationDao implements IDataProviderDao<Configuration> {
 		return def;
 	}
 
-	public String getAppName() {
-		if (getApplicationName() == null) {
-			setApplicationName(getString(CONFIG_APPLICATION_NAME, DEFAULT_APP_NAME));
-		}
-		return getApplicationName();
-	}
-
-	public String getBaseUrl() {
-		String val = getString(CONFIG_APPLICATION_BASE_URL, DEFAULT_BASE_URL);
-		if (val != null && !val.endsWith("/")) {
-			val += "/";
-		}
-		return val;
-	}
-
-	public boolean isSipEnabled() {
-		return getBool(CONFIG_SIP_ENABLED, false);
-	}
-
 	@Override
 	public Configuration get(long id) {
 		return get(Long.valueOf(id));
@@ -305,13 +289,24 @@ public class ConfigurationDao implements IDataProviderDao<Configuration> {
 			case CONFIG_FLASH_MIC_RATE:
 				reloadRoomSettings();
 				break;
+			case CONFIG_MAX_UPLOAD_SIZE:
+				reloadMaxUpload();
+				break;
 			case CONFIG_CRYPT:
-				setConfigKeyCryptClassName(value);
-				CryptProvider.reset();
+				reloadCrypt();
 				break;
 			case CONFIG_APPLICATION_NAME:
 				setApplicationName(value);
 				break;
+			case CONFIG_APPLICATION_BASE_URL:
+				reloadBaseUrl();
+				break;
+			case CONFIG_SIP_ENABLED:
+				reloadSipEnabled();
+				break;
+			case CONFIG_GOOGLE_ANALYTICS_CODE:
+				reloadGaCode();
+				break;
 			case CONFIG_HEADER_XFRAME:
 			{
 				IApplication iapp = (IApplication)Application.get(getWicketApplicationName());
@@ -341,32 +336,49 @@ public class ConfigurationDao implements IDataProviderDao<Configuration> {
 		this.update(entity, userId, true);
 	}
 
-	/**
-	 * returns the max upload size configured by max_upload_size config key
-	 *
-	 * @param configurationDao
-	 * @return
-	 */
-	public long getMaxUploadSize() {
+	private void reloadMaxUpload() {
 		try {
-			return getLong(CONFIG_MAX_UPLOAD_SIZE, DEFAULT_MAX_UPLOAD_SIZE);
+			setMaxUploadSize(getLong(CONFIG_MAX_UPLOAD_SIZE, DEFAULT_MAX_UPLOAD_SIZE));
 		} catch (Exception e) {
 			log.error("Invalid value saved for max_upload_size conf key: ", e);
 		}
-		return DEFAULT_MAX_UPLOAD_SIZE;
 	}
 
-	public String getCryptKey() {
-		if (getConfigKeyCryptClassName() == null) {
-			String cryptClass = getString(CONFIG_CRYPT, null);
-			if (cryptClass != null) {
-				setConfigKeyCryptClassName(cryptClass);
-			}
+	private void reloadCrypt() {
+		String cryptClass = getString(CONFIG_CRYPT, null);
+		if (cryptClass != null) {
+			setCryptClassName(cryptClass);
+			CryptProvider.reset();
 		}
-		return getConfigKeyCryptClassName();
 	}
 
-	public JSONObject reloadRoomSettings() {
+	private void reloadBaseUrl() {
+		String val = getString(CONFIG_APPLICATION_BASE_URL, DEFAULT_BASE_URL);
+		if (val != null && !val.endsWith("/")) {
+			val += "/";
+		}
+		setBaseUrl(val);
+	}
+
+	private void reloadSipEnabled() {
+		setSipEnabled(getBool(CONFIG_SIP_ENABLED, false));
+	}
+
+	private void reloadGaCode() {
+		setGaCode(getString(CONFIG_GOOGLE_ANALYTICS_CODE, null));
+	}
+
+	public void reinit() {
+		reloadMaxUpload();
+		reloadCrypt();
+		setApplicationName(getString(CONFIG_APPLICATION_NAME, DEFAULT_APP_NAME));
+		reloadBaseUrl();
+		reloadSipEnabled();
+		reloadGaCode();
+		reloadRoomSettings();
+	}
+
+	private JSONObject reloadRoomSettings() {
 		try {
 			Properties props = new Properties();
 			try (InputStream is = new FileInputStream(new File(new File(OmFileHelper.getRootDir(), "conf"), "red5.properties"))) {

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index 4625a15..223268d 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.db.dao.room;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SIP_ROOM_PREFIX;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.RECENT_ROOMS_COUNT;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.isSipEnabled;
 
 import java.util.ArrayList;
 import java.util.Calendar;
@@ -215,7 +216,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
 	}
 
 	private String getSipNumber(long roomId) {
-		if (cfgDao.isSipEnabled()) {
+		if (isSipEnabled()) {
 			return cfgDao.getString(CONFIG_SIP_ROOM_PREFIX, "400") + roomId;
 		}
 		return null;
@@ -229,7 +230,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
 		} else {
 			entity.setUpdated(new Date());
 		}
-		if (entity.isSipEnabled() && cfgDao.isSipEnabled()) {
+		if (entity.isSipEnabled() && isSipEnabled()) {
 			String sipNumber = getSipNumber(entity.getId());
 			if (sipNumber != null && !sipNumber.equals(entity.getConfno())) {
 				entity.setConfno(sipNumber);

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
index 4a99a0e..dd18999 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.db.entity.user;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SIP_EXTEN_CONTEXT;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.isSipEnabled;
 
 import java.security.NoSuchAlgorithmException;
 import java.util.ArrayList;
@@ -371,7 +372,7 @@ public class User extends HistoricalEntity {
 	}
 
 	public void updatePassword(ConfigurationDao configDao, String pass) throws NoSuchAlgorithmException {
-		if (configDao.isSipEnabled()) {
+		if (isSipEnabled()) {
 			AsteriskSipUser u = getSipUser();
 			if (u == null) {
 				setSipUser(u = new AsteriskSipUser());

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/FeedbackTemplate.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/FeedbackTemplate.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/FeedbackTemplate.java
index aec1b40..a16970d 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/FeedbackTemplate.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/FeedbackTemplate.java
@@ -18,7 +18,8 @@
  */
 package org.apache.openmeetings.service.mail.template;
 
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
+
 import org.apache.wicket.core.util.string.ComponentRenderer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.ExternalLink;
@@ -28,7 +29,7 @@ public class FeedbackTemplate extends AbstractTemplatePanel {
 
 	private FeedbackTemplate(String username, String email, String message) {
 		super(getOmSession().getLocale());
-		add(new Label("appname", getBean(ConfigurationDao.class).getAppName()));
+		add(new Label("appname", getApplicationName()));
 		add(new Label("username", username));
 		add(new Label("email", email));
 		add(new Label("message", message));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/subject/RecordingExpiringTemplate.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/subject/RecordingExpiringTemplate.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/subject/RecordingExpiringTemplate.java
index a886ea9..ce756dc 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/subject/RecordingExpiringTemplate.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/subject/RecordingExpiringTemplate.java
@@ -19,8 +19,8 @@
 package org.apache.openmeetings.service.mail.template.subject;
 
 import static org.apache.openmeetings.db.util.ApplicationHelper.ensureApplication;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
 
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.room.Room;
@@ -51,7 +51,7 @@ public class RecordingExpiringTemplate extends SubjectEmailTemplate {
 	@Override
 	protected void onInitialize() {
 		super.onInitialize();
-		final String app = getBean(ConfigurationDao.class).getAppName();
+		final String app = getApplicationName();
 		add(new Label("greetings", getString("template.recording.expiring.greetings", locale, u.getFirstname())));
 		add(new Label("body", getString("template.recording.expiring.body", locale, app, String.valueOf(remainingDays))));
 		add(new Label("footer", getString("template.recording.expiring.footer", locale, app)).setEscapeModelStrings(false));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
index d8d7ecb..a30c769 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANG;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_VERIFICATION;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_SOAP;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
@@ -128,7 +129,7 @@ public class UserManager implements IUserManager {
 			if (cfgDao.getBool(CONFIG_REGISTER_SOAP, false)) {
 				boolean sendConfirmation;
 				if (_sendConfirmation == null) {
-					String baseURL = cfgDao.getBaseUrl();
+					String baseURL = getBaseUrl();
 					sendConfirmation = baseURL != null
 							&& !baseURL.isEmpty()
 							&& cfgDao.getBool(CONFIG_EMAIL_VERIFICATION, false);

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
----------------------------------------------------------------------
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
index a694819..a6587b2 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
@@ -111,12 +111,16 @@ public class OpenmeetingsVariables {
 	public static final String DEFAULT_BASE_URL = "http://localhost:5080/openmeetings/";
 
 	private static String webAppRootKey = null;
-	private static String configKeyCryptClassName = null;
+	private static String cryptClassName = null;
 	private static String wicketApplicationName = null;
 	private static String applicationName = null;
 	private static int extProcessTtl = 20;
 	private static JSONObject roomSettings = new JSONObject();
 	private static boolean initComplete = false;
+	private static long maxUploadSize = DEFAULT_MAX_UPLOAD_SIZE;
+	private static String baseUrl = DEFAULT_BASE_URL;
+	private static boolean sipEnabled = false;
+	private static String gaCode = null;
 
 	private OpenmeetingsVariables() {}
 
@@ -136,12 +140,12 @@ public class OpenmeetingsVariables {
 		roomSettings = s;
 	}
 
-	public static String getConfigKeyCryptClassName() {
-		return configKeyCryptClassName;
+	public static String getCryptClassName() {
+		return cryptClassName;
 	}
 
-	public static void setConfigKeyCryptClassName(String name) {
-		configKeyCryptClassName = name;
+	public static void setCryptClassName(String name) {
+		cryptClassName = name;
 	}
 
 	public static int getExtProcessTtl() {
@@ -175,4 +179,40 @@ public class OpenmeetingsVariables {
 	public static void setWebAppRootKey(String key) {
 		webAppRootKey = key;
 	}
+
+	/**
+	 *
+	 * @return returns the max upload size configured by max_upload_size config key
+	 */
+	public static long getMaxUploadSize() {
+		return maxUploadSize;
+	}
+
+	public static void setMaxUploadSize(long size) {
+		maxUploadSize = size;
+	}
+
+	public static String getBaseUrl() {
+		return baseUrl;
+	}
+
+	public static void setBaseUrl(String url) {
+		baseUrl = url;
+	}
+
+	public static boolean isSipEnabled() {
+		return sipEnabled;
+	}
+
+	public static void setSipEnabled(boolean enabled) {
+		sipEnabled = enabled;
+	}
+
+	public static String getGaCode() {
+		return gaCode;
+	}
+
+	public static void setGaCode(String code) {
+		gaCode = code;
+	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/CryptProvider.java
----------------------------------------------------------------------
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/CryptProvider.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/CryptProvider.java
index 38996c3..d009acf 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/CryptProvider.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/CryptProvider.java
@@ -18,7 +18,7 @@
  */
 package org.apache.openmeetings.util.crypt;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getConfigKeyCryptClassName;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getCryptClassName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import org.red5.logging.Red5LoggerFactory;
@@ -34,7 +34,7 @@ public class CryptProvider {
 		if (crypt == null) {
 			synchronized (CryptProvider.class) {
 				if (crypt == null) {
-					String clazz = getConfigKeyCryptClassName();
+					String clazz = getCryptClassName();
 					try {
 						log.debug("getInstanceOfCrypt:: configKeyCryptClassName: {}", clazz);
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/backup/BackupPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/backup/BackupPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/backup/BackupPanel.java
index 69df249..716c637 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/backup/BackupPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/backup/BackupPanel.java
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.web.admin.backup;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getMaxUploadSize;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.wicket.util.time.Duration.NONE;
@@ -30,7 +31,6 @@ import java.util.Date;
 import org.apache.openmeetings.backup.BackupExport;
 import org.apache.openmeetings.backup.BackupImport;
 import org.apache.openmeetings.backup.ProgressHolder;
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.util.CalendarPatterns;
 import org.apache.openmeetings.util.OmFileHelper;
 import org.apache.openmeetings.web.admin.AdminBasePanel;
@@ -94,7 +94,7 @@ public class BackupPanel extends AdminBasePanel {
 			setMultiPart(true);
 
 			// set max upload size in form as info text
-			Long maxBytes = getBean(ConfigurationDao.class).getMaxUploadSize();
+			Long maxBytes = getMaxUploadSize();
 			double megaBytes = maxBytes.doubleValue() / 1024 / 1024;
 			DecimalFormat formatter = new DecimalFormat("#,###.00");
 			add(new Label("MaxUploadSize", formatter.format(megaBytes)));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
index 78b528c..5d7a195 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
@@ -23,6 +23,8 @@ import static org.apache.openmeetings.db.dao.room.SipDao.SIP_FIRST_NAME;
 import static org.apache.openmeetings.db.dao.room.SipDao.SIP_USER_NAME;
 import static org.apache.openmeetings.util.OmFileHelper.SIP_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.HEADER_XFRAME_SAMEORIGIN;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.isInitComplete;
@@ -722,7 +724,7 @@ public class Application extends AuthenticatedWebApplication implements IApplica
 		}
 		String[] params = _params;
 		if ((params == null || params.length == 0) && STRINGS_WITH_APP.contains(key)) {
-			params = new String[]{getBean(ConfigurationDao.class).getAppName()};
+			params = new String[]{getApplicationName()};
 		}
 		Localizer l = get().getResourceSettings().getLocalizer();
 		String value = l.getStringIgnoreSettings(key, null, null, loc, null, "[Missing]");
@@ -820,7 +822,7 @@ public class Application extends AuthenticatedWebApplication implements IApplica
 
 	public static String urlForPage(Class<? extends Page> clazz, PageParameters pp, String _baseUrl) {
 		RequestCycle rc = RequestCycle.get();
-		String baseUrl = getBean(ConfigurationDao.class).getBaseUrl();
+		String baseUrl = getBaseUrl();
 		if (!new UrlValidator(new String[] {"http", "https"}).isValid(baseUrl) && !Strings.isEmpty(_baseUrl)) {
 			baseUrl = _baseUrl;
 		}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
index 0b806bc..3f81115 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
@@ -18,12 +18,11 @@
  */
 package org.apache.openmeetings.web.common;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getMaxUploadSize;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-import static org.apache.openmeetings.web.app.Application.getBean;
 
 import java.io.File;
 
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.util.StoredFile;
 import org.apache.openmeetings.web.util.upload.BootstrapFileUploadBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -53,7 +52,7 @@ public abstract class UploadableImagePanel extends ImagePanel {
 		super.onInitialize();
 		final Form<Void> form = new Form<>("form");
 		form.setMultiPart(true);
-		form.setMaxSize(Bytes.bytes(getBean(ConfigurationDao.class).getMaxUploadSize()));
+		form.setMaxSize(Bytes.bytes(getMaxUploadSize()));
 		// Model is necessary here to avoid writing image to the User object
 		form.add(fileUploadField);
 		form.add(new UploadProgressBar("progress", form, fileUploadField));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseInitedPage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseInitedPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseInitedPage.java
index 1bd4a16..1886f25 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseInitedPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseInitedPage.java
@@ -18,9 +18,6 @@
  */
 package org.apache.openmeetings.web.pages;
 
-import static org.apache.openmeetings.web.app.Application.getBean;
-
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.util.FormatHelper;
 import org.apache.openmeetings.web.app.WebSession;
 
@@ -28,11 +25,6 @@ public abstract class BaseInitedPage extends BasePage {
 	private static final long serialVersionUID = 1L;
 
 	@Override
-	protected String getApplicationName() {
-		return getBean(ConfigurationDao.class).getAppName();
-	}
-
-	@Override
 	protected String getLanguageCode() {
 		return WebSession.get().getLocale().toLanguageTag();
 	}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseNotInitedPage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseNotInitedPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseNotInitedPage.java
index cf8686a..a3b3398 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseNotInitedPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BaseNotInitedPage.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.pages;
 
 import org.apache.openmeetings.db.util.FormatHelper;
-import org.apache.openmeetings.installation.InstallationConfig;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -27,12 +26,6 @@ import org.apache.wicket.request.IRequestParameters;
 
 public abstract class BaseNotInitedPage extends BasePage {
 	private static final long serialVersionUID = 1L;
-	private static final InstallationConfig installCfg = new InstallationConfig();
-
-	@Override
-	protected String getApplicationName() {
-		return installCfg.getAppName();
-	}
 
 	@Override
 	protected String getLanguageCode() {

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.java
index c56d50c..1da0819 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/BasePage.java
@@ -18,15 +18,14 @@
  */
 package org.apache.openmeetings.web.pages;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_GOOGLE_ANALYTICS_CODE;
-import static org.apache.openmeetings.web.app.Application.getBean;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getGaCode;
 import static org.apache.wicket.RuntimeConfigurationType.DEVELOPMENT;
 
 import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.directory.api.util.Strings;
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.common.HeaderPanel;
 import org.apache.openmeetings.web.util.OmUrlFragment;
@@ -71,7 +70,6 @@ public abstract class BasePage extends AsyncUrlFragmentAwarePage {
 
 	public abstract boolean isRtl();
 	protected abstract String getLanguageCode();
-	protected abstract String getApplicationName();
 
 	protected OmUrlFragment getUrlFragment(IRequestParameters params) {
 		for (AreaKeys key : AreaKeys.values()) {
@@ -92,10 +90,6 @@ public abstract class BasePage extends AsyncUrlFragmentAwarePage {
 		return options;
 	}
 
-	protected String getGaCode() {
-		return getBean(ConfigurationDao.class).getString(CONFIG_GOOGLE_ANALYTICS_CODE, null);
-	}
-
 	protected boolean isMainPage() {
 		return false;
 	}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/NotInitedPage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/NotInitedPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/NotInitedPage.java
index e7431c5..9f25801 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/NotInitedPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/NotInitedPage.java
@@ -33,9 +33,4 @@ public class NotInitedPage extends BaseNotInitedPage {
 			throw new RestartResponseException(Application.get().getHomePage());
 		}
 	}
-
-	@Override
-	protected String getGaCode() {
-		return null;
-	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
index a6d9165..9aa945b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.web.pages.auth;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.urlForPage;
@@ -261,7 +262,7 @@ public class ForgetPasswordDialog extends AbstractFormDialog<String> {
 		userDao.update(us, null);
 		String resetLink = urlForPage(ResetPage.class
 				, new PageParameters().add("hash", us.getResethash())
-				, getBean(ConfigurationDao.class).getBaseUrl());
+				, getBaseUrl());
 
 		String email = us.getAddress().getEmail();
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
index 4e8c548..f5c38d3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
@@ -23,6 +23,7 @@ import static org.apache.openmeetings.db.util.UserHelper.getMinPasswdLength;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_GROUP_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_AT_REGISTER;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_VERIFICATION;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.wicket.validation.validator.StringValidator.minimumLength;
@@ -143,7 +144,7 @@ public class RegisterDialog extends NonClosableDialog<String> {
 	@Override
 	protected void onOpen(IPartialPageRequestHandler handler) {
 		ConfigurationDao cfgDao = getBean(ConfigurationDao.class);
-		String baseURL = cfgDao.getBaseUrl();
+		String baseURL = getBaseUrl();
 		sendEmailAtRegister = cfgDao.getBool(CONFIG_EMAIL_AT_REGISTER, false);
 		sendConfirmation = !Strings.isEmpty(baseURL) && cfgDao.getBool(CONFIG_EMAIL_VERIFICATION, false);
 		String messageCode = "account.created";

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
index 4dcecc1..3ed5718 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.pages.auth;
 import static java.nio.charset.StandardCharsets.UTF_8;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_IGNORE_BAD_SSL;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_FRONTEND;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.urlForPage;
@@ -181,7 +182,7 @@ public class SignInPage extends BaseInitedPage {
 	public static String getRedirectUri(OAuthServer server) {
 		String result = "";
 		if (server.getId() != null) {
-			String base = getBean(ConfigurationDao.class).getBaseUrl();
+			String base = getBaseUrl();
 			result = urlForPage(SignInPage.class, new PageParameters().add("oauthid", server.getId()), base);
 		}
 		return result;

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
index 23d1a07..84ee31e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
@@ -46,9 +46,4 @@ public class InstallWizardPage extends BaseNotInitedPage {
 			}
 		});
 	}
-
-	@Override
-	protected String getGaCode() {
-		return null;
-	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
index 0c4c8f3..20af50c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_TITLE;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_APPLICATION_BASE_URL;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REDIRECT_URL_FOR_EXTERNAL;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.isSipEnabled;
 import static org.apache.openmeetings.web.app.Application.exitRoom;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.getClientBySid;
@@ -332,7 +333,7 @@ public class RoomMenuPanel extends Panel {
 		pollCreateMenuItem.setEnabled(moder);
 		pollVoteMenuItem.setEnabled(pollExists && notExternalUser && !pollDao.hasVoted(r.getId(), getUserId()));
 		pollResultMenuItem.setEnabled(pollExists || !pollDao.getArchived(r.getId()).isEmpty());
-		sipDialerMenuItem.setEnabled(r.isSipEnabled() && getBean(ConfigurationDao.class).isSipEnabled());
+		sipDialerMenuItem.setEnabled(r.isSipEnabled() && isSipEnabled());
 		//TODO sip menus
 		menuPanel.update(handler);
 		StringBuilder roomClass = new StringBuilder("room name");

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/StartSharingButton.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/StartSharingButton.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/StartSharingButton.java
index 3dd68f2..09c19cd 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/StartSharingButton.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/StartSharingButton.java
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSH
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSHARING_FPS_SHOW;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSHARING_QUALITY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_NATIVE_SSL;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.getOnlineClient;
@@ -102,7 +103,7 @@ public class StartSharingButton extends OmButton {
 			ISessionManager sessionManager = getBean(ISessionManager.class);
 			app = app.replace("$native", String.valueOf(s.getBoolean(FLASH_NATIVE_SSL)))
 					.replace("$codebase", WebSession.get().getExtendedProperties().getCodebase())
-					.replace("$applicationName", cfgDao.getAppName())
+					.replace("$applicationName", getApplicationName())
 					.replace("$url", _url)
 					.replace("$fallback", s.getString(VideoSettings.FALLBACK))
 					.replace("$sid", sid)

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
index 7923ba2..19148bf 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.web.room.sidebar;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getMaxUploadSize;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
@@ -26,7 +27,6 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.openmeetings.core.data.file.FileProcessor;
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.file.FileItemLogDao;
 import org.apache.openmeetings.db.entity.file.BaseFileItem;
 import org.apache.openmeetings.db.entity.file.FileItem;
@@ -103,7 +103,7 @@ public class UploadDialog extends AbstractFormDialog<String> {
 			.setOutputMarkupId(true);
 
 		form.setMultiPart(true);
-		form.setMaxSize(Bytes.bytes(getBean(ConfigurationDao.class).getMaxUploadSize()));
+		form.setMaxSize(Bytes.bytes(getMaxUploadSize()));
 		// Model is necessary here to avoid writing image to the User object
 		form.add(uploadField = new FileUploadField("file", new IModel<List<FileUpload>>() {
 			private static final long serialVersionUID = 1L;

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
index c5b50a8..42219d4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
@@ -18,15 +18,14 @@
  */
 package org.apache.openmeetings.web.user;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getApplicationName;
 import static org.apache.openmeetings.util.Version.getBuildDate;
 import static org.apache.openmeetings.util.Version.getRevision;
 import static org.apache.openmeetings.util.Version.getVersion;
-import static org.apache.openmeetings.web.app.Application.getBean;
 
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
 import org.apache.wicket.markup.html.basic.Label;
@@ -40,7 +39,7 @@ public class AboutDialog extends AbstractDialog<String> {
 	public AboutDialog(String id) {
 		super(id, Application.getString("1549"));
 
-		add(new Label("name", getBean(ConfigurationDao.class).getAppName()));
+		add(new Label("name", getApplicationName()));
 		add(new Label("version", getVersion()));
 		add(new Label("revision", getRevision()));
 		add(new Label("buildDate", getBuildDate()));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ExtendedClientProperties.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ExtendedClientProperties.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ExtendedClientProperties.java
index 8403859..d08e6de 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ExtendedClientProperties.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ExtendedClientProperties.java
@@ -80,7 +80,7 @@ public class ExtendedClientProperties extends ClientProperties {
 	@Override
 	public void read(IRequestParameters parameters) {
 		super.read(parameters);
-		String _url = parameters.getParameterValue("codebase").toString("N/A");
+		String _url = parameters.getParameterValue("codebase").toString(getBaseUrl());
 		StringBuilder sb = cleanUrl(_url);
 		if (sb.charAt(sb.length() - 1) != '/') {
 			sb.append('/');

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
index 0e9b111..548d468 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
@@ -20,6 +20,7 @@ package org.apache.openmeetings.web.util;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANDING_ZONE;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.user.profile.SettingsPanel.EDIT_PROFILE_TAB_ID;
 import static org.apache.openmeetings.web.user.profile.SettingsPanel.MESSAGES_TAB_ID;
@@ -286,6 +287,6 @@ public class OmUrlFragment implements Serializable {
 	}
 
 	public String getLink() {
-		return getBean(ConfigurationDao.class).getBaseUrl() + "#" + getArea().name() + "/" + getType();
+		return getBaseUrl() + "#" + getArea().name() + "/" + getType();
 	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
index 178e556..b3009d4 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
@@ -19,7 +19,7 @@
 package org.apache.openmeetings;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.DEFAULT_CONTEXT_NAME;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getConfigKeyCryptClassName;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getCryptClassName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setWicketApplicationName;
 import static org.junit.Assert.assertNotNull;
 
@@ -69,7 +69,7 @@ public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 	@Before
 	public void setUp() throws Exception {
 		setWicketApplicationName(DEFAULT_CONTEXT_NAME);
-		cfgDao.getCryptKey();
+		getCryptClassName();
 		if (userDao.count() < 1) {
 			makeDefaultScheme();
 			// regular user
@@ -81,8 +81,8 @@ public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
 		} else {
 			log.info("Default scheme already created");
 		}
-		if (getConfigKeyCryptClassName() == null) {
-			assertNotNull("Crypt class name should not be null", cfgDao.getCryptKey());
+		if (getCryptClassName() == null) {
+			assertNotNull("Crypt class name should not be null", getCryptClassName());
 		}
 	}
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/8737e80f/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestOldBackups.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestOldBackups.java b/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestOldBackups.java
index 59c808a..da437ae 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestOldBackups.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestOldBackups.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.backup;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_CRYPT;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.getCryptClassName;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
@@ -59,7 +60,7 @@ public class TestOldBackups extends AbstractJUnitDefaults {
 	public void setUp() throws Exception {
 		super.setUp();
 		// Crypt class need to be preserved here to avoid overriding by backup import
-		cryptClass = cfgDao.getCryptKey();
+		cryptClass = getCryptClassName();
 	}
 
 	@After