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 2018/02/26 11:56:21 UTC

[openmeetings] 01/02: [OPENMEETINGS-1649] red5-server is removed as dependency

This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch OPENMEETINGS-1649-kurento
in repository https://gitbox.apache.org/repos/asf/openmeetings.git

commit 39190c4d59b9d01b2a920c9f97132b25977fb205
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Mon Feb 26 00:10:29 2018 +0700

    [OPENMEETINGS-1649] red5-server is removed as dependency
---
 openmeetings-core/pom.xml                          |   5 -
 .../openmeetings/core/converter/BaseConverter.java |   8 +-
 .../core/converter/DocumentConverter.java          |   5 +-
 .../core/converter/ImageConverter.java             |   5 +-
 .../core/converter/InterviewConverter.java         |   5 +-
 .../core/converter/RecordingConverter.java         |   5 +-
 .../core/converter/VideoConverter.java             |   5 +-
 .../openmeetings/core/data/file/FileProcessor.java |   5 +-
 .../record/converter/InterviewConverterTask.java   |   6 +-
 .../record/converter/RecordingConverterTask.java   |   6 +-
 .../core/data/record/listener/StreamListener.java  |  21 +-
 .../record/listener/async/BaseStreamWriter.java    |  38 +--
 .../data/record/listener/async/CachedEvent.java    |   8 +-
 .../record/listener/async/StreamAudioWriter.java   |  23 +-
 .../record/listener/async/StreamVideoWriter.java   |  15 +-
 .../core/documents/LibraryChartLoader.java         |   5 +-
 .../openmeetings/core/ldap/LdapLoginManager.java   |   5 +-
 .../apache/openmeetings/core/ldap/LdapOptions.java |   5 +-
 .../apache/openmeetings/core/mail/MailHandler.java |   5 +-
 .../core/notifier/NotifierService.java             |   6 +-
 .../openmeetings/core/remote/MobileService.java    |  41 +--
 .../core/remote/ScopeApplicationAdapter.java       | 101 +++----
 .../openmeetings/core/rss/LoadAtomRssFeed.java     |   6 +-
 .../openmeetings/core/service/MainService.java     |   5 +-
 .../core/service/RecordingService.java             |  36 +--
 .../apache/openmeetings/core/util/IClientUtil.java |   8 +-
 .../core/util/StrongPasswordValidator.java         |   6 +-
 .../openmeetings/core/util/WebSocketHelper.java    |   5 +-
 .../openmeetings/EditorPaneLinkDetector.java       | 319 ---------------------
 .../apache/openmeetings/jai/TestInterpolation.java |  61 ----
 .../openmeetings/rdc/TestKeyCodesNumber.java       |   6 +-
 .../openmeetings/rdc/TestReadKeyCodesNumber.java   |   6 +-
 .../openmeetings/rtmp/LoadTestRtmpClient.java      | 163 -----------
 .../org/apache/openmeetings/rtmp/SimulateLoad.java |  92 ------
 .../apache/openmeetings/rtmp/SimulateLoadTest.java | 111 -------
 .../apache/openmeetings/user/TestMailSending.java  |   5 +-
 .../db/dao/basic/ConfigurationDao.java             |   5 +-
 .../db/dao/calendar/AppointmentDao.java            |   5 +-
 .../db/dao/calendar/MeetingMemberDao.java          |   6 +-
 .../openmeetings/db/dao/file/BaseFileItemDao.java  |   6 +-
 .../openmeetings/db/dao/file/FileItemDao.java      |   6 +-
 .../openmeetings/db/dao/file/FileItemLogDao.java   |   6 +-
 .../apache/openmeetings/db/dao/label/LabelDao.java |   5 +-
 .../openmeetings/db/dao/log/ConferenceLogDao.java  |   6 +-
 .../openmeetings/db/dao/record/RecordingDao.java   |   5 +-
 .../db/dao/record/RecordingMetaDataDao.java        |   6 +-
 .../db/dao/record/RecordingMetaDeltaDao.java       |   6 +-
 .../openmeetings/db/dao/room/InvitationDao.java    |   5 +-
 .../apache/openmeetings/db/dao/room/PollDao.java   |   5 +-
 .../apache/openmeetings/db/dao/room/RoomDao.java   |   5 +-
 .../apache/openmeetings/db/dao/room/SipDao.java    |   4 +-
 .../openmeetings/db/dao/server/LdapConfigDao.java  |   6 +-
 .../openmeetings/db/dao/server/SOAPLoginDao.java   |   6 +-
 .../openmeetings/db/dao/server/SessiondataDao.java |   6 +-
 .../db/dao/user/PrivateMessageDao.java             |   5 +-
 .../db/dao/user/PrivateMessageFolderDao.java       |   5 +-
 .../openmeetings/db/dao/user/UserContactDao.java   |   5 +-
 .../apache/openmeetings/db/dao/user/UserDao.java   |   5 +-
 .../openmeetings/db/dto/room/InvitationDTO.java    |   6 +-
 .../openmeetings/db/dto/room/Whiteboard.java       |   6 +-
 .../apache/openmeetings/db/dto/user/OAuthUser.java |   6 +-
 .../db/entity/server/RemoteSessionObject.java      |   6 +-
 .../openmeetings/db/util/ApplicationHelper.java    |   5 +-
 .../apache/openmeetings/db/util/AuthLevelUtil.java |   6 +-
 .../apache/openmeetings/db/util/LocaleHelper.java  |   6 +-
 openmeetings-install/pom.xml                       |   2 +-
 .../apache/openmeetings/backup/BackupExport.java   |   5 +-
 .../apache/openmeetings/backup/BackupImport.java   |   5 +-
 .../backup/converter/RecordingStatusConverter.java |   6 +-
 .../openmeetings/backup/converter/WbConverter.java |   5 +-
 .../java/org/apache/openmeetings/cli/Admin.java    |   4 +-
 .../org/apache/openmeetings/cli/CleanupHelper.java |   4 +-
 .../installation/ImportInitvalues.java             |   5 +-
 .../service/calendar/AppointmentLogic.java         |   5 +-
 .../calendar/caldav/AppointmentManager.java        |   5 +-
 .../service/calendar/caldav/IcalUtils.java         |   5 +-
 .../caldav/handler/AbstractCalendarHandler.java    |   6 +-
 .../calendar/caldav/handler/CtagHandler.java       |   5 +-
 .../calendar/caldav/handler/EtagsHandler.java      |   5 +-
 .../calendar/caldav/handler/MultigetHandler.java   |   5 +-
 .../calendar/caldav/handler/WebDAVSyncHandler.java |   5 +-
 .../calendar/caldav/methods/SyncMethod.java        |   6 +-
 .../openmeetings/service/mail/EmailManager.java    |   5 +-
 .../service/notifier/TextNotifier.java             |   5 +-
 .../service/quartz/scheduler/AbstractJob.java      |   5 +-
 .../service/quartz/scheduler/CleanupJob.java       |   5 +-
 .../service/quartz/scheduler/ReminderJob.java      |   5 +-
 .../service/room/InvitationManager.java            |   5 +-
 .../openmeetings/service/user/UserManager.java     |  14 +-
 openmeetings-util/pom.xml                          |   4 -
 .../apache/openmeetings/util/CalendarPatterns.java |   6 +-
 .../openmeetings/util/OMContextListener.java       |  14 +-
 .../openmeetings/util/OpenmeetingsVariables.java   |   9 -
 .../org/apache/openmeetings/util/StoredFile.java   |   5 +-
 .../java/org/apache/openmeetings/util/Version.java |   4 +-
 .../openmeetings/util/crypt/CryptProvider.java     |   5 +-
 .../openmeetings/util/crypt/MD5Implementation.java |   6 +-
 .../util/crypt/SCryptImplementation.java           |   5 +-
 .../apache/openmeetings/util/mail/IcalHandler.java |   6 +-
 .../openmeetings/util/process/ProcessHelper.java   |   5 +-
 .../openmeetings/web/admin/backup/BackupPanel.java |   5 +-
 .../openmeetings/web/admin/labels/LangPanel.java   |   5 +-
 .../openmeetings/web/admin/users/UserForm.java     |   5 +-
 .../apache/openmeetings/web/app/Application.java   |   5 +-
 .../apache/openmeetings/web/app/ClientManager.java |   9 +-
 .../openmeetings/web/app/QuickPollManager.java     |   5 +-
 .../openmeetings/web/app/StreamClientManager.java  |   6 +-
 .../apache/openmeetings/web/app/WebSession.java    |   5 +-
 .../openmeetings/web/common/ErrorMessagePanel.java |   6 +-
 .../openmeetings/web/common/InvitationForm.java    |   5 +-
 .../apache/openmeetings/web/common/MainPanel.java  |   5 +-
 .../web/common/UploadableImagePanel.java           |   5 +-
 .../web/pages/auth/ForgetPasswordDialog.java       |   5 +-
 .../web/pages/auth/RegisterDialog.java             |   5 +-
 .../openmeetings/web/pages/auth/SignInDialog.java  |   5 +-
 .../openmeetings/web/pages/auth/SignInPage.java    |   5 +-
 .../web/pages/install/InstallWizard.java           |   5 +-
 .../openmeetings/web/room/RoomBroadcaster.java     |   5 +-
 .../apache/openmeetings/web/room/RoomPanel.java    |   5 +-
 .../org/apache/openmeetings/web/room/SwfPanel.java |   5 +-
 .../openmeetings/web/room/VideoSettings.java       |   5 +-
 .../web/room/activities/ActivitiesPanel.java       |   5 +-
 .../openmeetings/web/room/menu/PollsSubMenu.java   |   5 +-
 .../web/room/menu/RoomInvitationForm.java          |   5 +-
 .../web/room/menu/StartSharingButton.java          |   5 +-
 .../openmeetings/web/room/sidebar/RoomSidebar.java |   5 +-
 .../openmeetings/web/room/wb/AbstractWbPanel.java  |   5 +-
 .../openmeetings/web/room/wb/InterviewWbPanel.java |   8 +-
 .../apache/openmeetings/web/room/wb/WbPanel.java   |   5 +-
 .../web/user/calendar/AppointmentDialog.java       |   5 +-
 .../web/user/calendar/CalendarPanel.java           |   5 +-
 .../apache/openmeetings/web/user/chat/Chat.java    |   5 +-
 .../openmeetings/web/user/chat/ChatForm.java       |   5 +-
 .../web/user/profile/ChangePasswordDialog.java     |   5 +-
 .../openmeetings/web/user/profile/ProfileForm.java |   5 +-
 .../web/util/FileItemResourceReference.java        |   6 +-
 .../web/util/GroupLogoResourceReference.java       |   5 +-
 .../web/util/ProfileImageResourceReference.java    |   5 +-
 .../web/util/UserDashboardPersister.java           |   5 +-
 .../apache/openmeetings/AbstractJUnitDefaults.java |   4 +-
 .../apache/openmeetings/AbstractWicketTester.java  |   5 +-
 .../apache/openmeetings/backup/TestOldBackups.java |   5 +-
 .../calendar/TestAppointmentAddAppointment.java    |   5 +-
 .../calendar/TestAppointmentSchedulerTask.java     |   5 +-
 .../calendar/TestDatabaseStructureAppointment.java |   6 +-
 ...TestDatabaseStructureGetAppointmentByRange.java |   5 +-
 .../TestDatabaseStructureGetUserStart.java         |   6 +-
 .../calendar/TestDatabaseStructureUsersSearch.java |   6 +-
 .../openmeetings/calendar/TestGetAppointment.java  |   5 +-
 .../openmeetings/calendar/TestSendIcalMessage.java |   6 +-
 .../org/apache/openmeetings/config/TestConfig.java |   5 +-
 .../apache/openmeetings/db/dao/TestRoomDao.java    |   5 +-
 .../openmeetings/derby/PrepareSystemFiles.java     |   6 +-
 .../apache/openmeetings/domain/TestAddGroup.java   |   5 +-
 .../domain/TestUserGroupAggregation.java           |   5 +-
 .../openmeetings/test/selenium/SeleniumUtils.java  |   6 +-
 .../org/apache/openmeetings/web/TestMainAreas.java |   5 +-
 .../web/pages/install/TestInstall.java             |   5 +-
 .../openmeetings/webservice/BaseWebService.java    |   5 +-
 .../webservice/CalendarWebService.java             |   5 +-
 .../openmeetings/webservice/ErrorWebService.java   |   5 +-
 .../openmeetings/webservice/FileWebService.java    |   5 +-
 .../openmeetings/webservice/GroupWebService.java   |   5 +-
 .../openmeetings/webservice/NetTestWebService.java |   5 +-
 .../webservice/RecordingWebService.java            |   5 +-
 .../openmeetings/webservice/RoomWebService.java    |   5 +-
 .../openmeetings/webservice/UserWebService.java    |   5 +-
 pom.xml                                            |  19 +-
 168 files changed, 438 insertions(+), 1444 deletions(-)

diff --git a/openmeetings-core/pom.xml b/openmeetings-core/pom.xml
index d2ee664..66415c4 100644
--- a/openmeetings-core/pom.xml
+++ b/openmeetings-core/pom.xml
@@ -93,11 +93,6 @@
 		</dependency>
 		<!-- Test dependencies -->
 		<dependency>
-			<groupId>org.red5</groupId>
-			<artifactId>red5-client</artifactId>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
 			<groupId>org.apache.openmeetings</groupId>
 			<artifactId>openmeetings-util</artifactId>
 			<version>${project.version}</version>
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
index 904e86d..76e9ca9 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
@@ -29,7 +29,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_PATH_IMA
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_PATH_SOX;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getAudioBitrate;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getAudioRate;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.io.IOException;
@@ -55,13 +54,12 @@ import org.apache.openmeetings.util.process.ProcessHelper;
 import org.apache.openmeetings.util.process.ProcessResult;
 import org.apache.openmeetings.util.process.ProcessResultList;
 import org.apache.wicket.util.string.Strings;
-import org.red5.io.flv.impl.FLVWriter;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public abstract class BaseConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(BaseConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BaseConverter.class);
 	private static final Pattern p = Pattern.compile("\\d{2,5}(x)\\d{2,5}");
 	public static final String EXEC_EXT = System.getProperty("os.name").toUpperCase().indexOf("WINDOWS") < 0 ? "" : ".exe";
 
@@ -226,6 +224,7 @@ public abstract class BaseConverter {
 					if (maxTimestamp + TIME_TO_WAIT_FOR_FRAME < System.currentTimeMillis()) {
 						if (metaSer.exists()) {
 							log.debug("### long time without any update, trying to repair ... ");
+							/*
 							try {
 								if (FLVWriter.repair(metaSer.getCanonicalPath(), null, null) && !metaSer.exists()) {
 									log.debug("### Repairing was successful ... ");
@@ -235,6 +234,7 @@ public abstract class BaseConverter {
 							} catch (IOException e) {
 								log.error("### Error while file repairing ... ", e);
 							}
+							*/
 						} else {
 							log.debug("### long time without any update, closing ... ");
 						}
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
index dcdcc14..1676b0d 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.core.converter;
 import static org.apache.commons.io.FileUtils.copyFile;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_PDF;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_PATH_OFFICE;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.util.function.Consumer;
@@ -35,14 +34,14 @@ import org.apache.wicket.util.string.Strings;
 import org.artofsolving.jodconverter.OfficeDocumentConverter;
 import org.artofsolving.jodconverter.office.DefaultOfficeManagerConfiguration;
 import org.artofsolving.jodconverter.office.OfficeManager;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class DocumentConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(DocumentConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(DocumentConverter.class);
 
 	@Autowired
 	protected ConfigurationDao cfgDao;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
index 0cee85c..9ff732f 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
@@ -28,7 +28,6 @@ import static org.apache.openmeetings.util.OmFileHelper.PROFILE_FILE_NAME;
 import static org.apache.openmeetings.util.OmFileHelper.getUploadProfilesUserDir;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DOCUMENT_DPI;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DOCUMENT_QUALITY;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.process.ProcessResult.ZERO;
 import static org.apache.tika.metadata.HttpHeaders.CONTENT_TYPE;
 
@@ -52,15 +51,15 @@ import org.apache.tika.metadata.TIFF;
 import org.apache.tika.parser.ParseContext;
 import org.apache.tika.parser.Parser;
 import org.apache.tika.parser.image.ImageParser;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.xml.sax.helpers.DefaultHandler;
 
 @Component
 public class ImageConverter extends BaseConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(ImageConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ImageConverter.class);
 	private static final String PAGE_TMPLT = DOC_PAGE_PREFIX + "-%04d." + EXTENSION_PNG;
 
 	@Autowired
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
index 97278f8..3e87277 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.core.converter;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_FLV;
 import static org.apache.openmeetings.util.OmFileHelper.getRecordingMetaData;
 import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.io.IOException;
@@ -38,14 +37,14 @@ import org.apache.openmeetings.util.process.ProcessHelper;
 import org.apache.openmeetings.util.process.ProcessResult;
 import org.apache.openmeetings.util.process.ProcessResultList;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class InterviewConverter extends BaseConverter implements IRecordingConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(InterviewConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InterviewConverter.class);
 	private static class ReConverterParams {
 		private int leftSideLoud = 1;
 		private int rightSideLoud = 1;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
index 0ff2511..f26c19c 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.core.converter;
 
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_FLV;
 import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -37,14 +36,14 @@ import org.apache.openmeetings.util.OmFileHelper;
 import org.apache.openmeetings.util.process.ProcessHelper;
 import org.apache.openmeetings.util.process.ProcessResultList;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class RecordingConverter extends BaseConverter implements IRecordingConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingConverter.class);
 
 	// Spring loaded Beans
 	@Autowired
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/VideoConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/VideoConverter.java
index 765f15e..ffe5ec6 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/VideoConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/VideoConverter.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.core.converter;
 
 import static java.nio.file.StandardCopyOption.REPLACE_EXISTING;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.nio.file.Files;
@@ -31,13 +30,13 @@ import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.util.process.ProcessHelper;
 import org.apache.openmeetings.util.process.ProcessResult;
 import org.apache.openmeetings.util.process.ProcessResultList;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 
 @Component
 public class VideoConverter extends BaseConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(VideoConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(VideoConverter.class);
 
 	public void convertVideo(FileItem f, String ext, ProcessResultList logs) {
 		try {
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
index e3fca3e..88e5df0 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.core.data.file;
 import static org.apache.commons.io.FileUtils.copyFile;
 import static org.apache.commons.io.FileUtils.copyInputStreamToFile;
 import static org.apache.openmeetings.util.OmFileHelper.getFileExt;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.io.InputStream;
@@ -37,14 +36,14 @@ import org.apache.openmeetings.util.StoredFile;
 import org.apache.openmeetings.util.process.ProcessResult;
 import org.apache.openmeetings.util.process.ProcessResultList;
 import org.apache.tika.exception.UnsupportedFormatException;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class FileProcessor {
-	private static final Logger log = Red5LoggerFactory.getLogger(FileProcessor.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(FileProcessor.class);
 
 	//Spring loaded Beans
 	@Autowired
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
index 42dc789..e7f0671 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
@@ -18,18 +18,16 @@
  */
 package org.apache.openmeetings.core.data.record.converter;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import org.apache.openmeetings.core.converter.InterviewConverter;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.task.TaskExecutor;
 import org.springframework.stereotype.Component;
 
 @Component
 public class InterviewConverterTask {
-	private static final Logger log = Red5LoggerFactory.getLogger(InterviewConverterTask.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InterviewConverterTask.class);
 
 	@Autowired
 	private TaskExecutor taskExecutor;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
index 1fcb408..3b67099 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
@@ -18,18 +18,16 @@
  */
 package org.apache.openmeetings.core.data.record.converter;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import org.apache.openmeetings.core.converter.RecordingConverter;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.task.TaskExecutor;
 import org.springframework.stereotype.Component;
 
 @Component
 public class RecordingConverterTask {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingConverterTask.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingConverterTask.class);
 
 	@Autowired
 	private TaskExecutor taskExecutor;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java
index cfc7ba2..db65232 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java
@@ -18,25 +18,13 @@
  */
 package org.apache.openmeetings.core.data.record.listener;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
-import java.util.Date;
-
-import org.apache.openmeetings.core.data.record.listener.async.BaseStreamWriter;
-import org.apache.openmeetings.core.data.record.listener.async.CachedEvent;
-import org.apache.openmeetings.core.data.record.listener.async.StreamAudioWriter;
-import org.apache.openmeetings.core.data.record.listener.async.StreamVideoWriter;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.scope.IScope;
-import org.red5.server.api.stream.IBroadcastStream;
-import org.red5.server.api.stream.IStreamListener;
-import org.red5.server.api.stream.IStreamPacket;
-import org.red5.server.net.rtmp.event.VideoData;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
-public class StreamListener implements IStreamListener {
-	private static final Logger log = Red5LoggerFactory.getLogger(StreamListener.class, getWebAppRootKey());
+public class StreamListener /*implements IStreamListener*/ {
+	private static final Logger log = LoggerFactory.getLogger(StreamListener.class);
 
+	/*
 	private final BaseStreamWriter streamWriter;
 
 	public StreamListener(boolean isAudio, String streamName, IScope scope, Long metaDataId,
@@ -70,4 +58,5 @@ public class StreamListener implements IStreamListener {
 	public void closeStream() {
 		streamWriter.stop();
 	}
+	*/
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java
index 537ebc5..effad74 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java
@@ -18,36 +18,11 @@
  */
 package org.apache.openmeetings.core.data.record.listener.async;
 
-import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.getApp;
-import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_FLV;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Date;
-import java.util.concurrent.BlockingQueue;
-import java.util.concurrent.LinkedBlockingQueue;
-import java.util.concurrent.TimeUnit;
-
-import org.apache.mina.core.buffer.IoBuffer;
-import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao;
-import org.apache.openmeetings.db.entity.record.RecordingMetaData;
-import org.apache.openmeetings.db.entity.record.RecordingMetaData.Status;
-import org.apache.openmeetings.util.OmFileHelper;
-import org.red5.io.IStreamableFile;
-import org.red5.io.ITag;
-import org.red5.io.ITagWriter;
-import org.red5.io.flv.impl.Tag;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.scope.IScope;
-import org.red5.server.api.service.IStreamableFileService;
-import org.red5.server.api.stream.IStreamableFileFactory;
-import org.red5.server.stream.StreamableFileFactory;
-import org.red5.server.util.ScopeUtils;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public abstract class BaseStreamWriter implements Runnable {
-	private static final Logger log = Red5LoggerFactory.getLogger(BaseStreamWriter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BaseStreamWriter.class);
 	private static final int MINUTE_MULTIPLIER = 60 * 1000;
 	public static final int TIME_TO_WAIT_FOR_FRAME = 15 * MINUTE_MULTIPLIER;
 	protected int startTimeStamp = -1;
@@ -60,6 +35,7 @@ public abstract class BaseStreamWriter implements Runnable {
 	// thread will be stopped as soon as the queue is empty
 	private boolean dostopping = false;
 
+	/*
 	protected ITagWriter writer = null;
 
 	protected Long metaDataId = null;
@@ -94,6 +70,7 @@ public abstract class BaseStreamWriter implements Runnable {
 
 		open();
 	}
+	*/
 
 	/**
 	 * Initialization
@@ -101,6 +78,7 @@ public abstract class BaseStreamWriter implements Runnable {
 	 * @throws IOException
 	 *             I/O exception
 	 */
+	/*
 	private void init() throws IOException {
 		file = new File(OmFileHelper.getStreamsSubDir(scope.getName()), OmFileHelper.getName(streamName, EXTENSION_FLV));
 
@@ -128,9 +106,10 @@ public abstract class BaseStreamWriter implements Runnable {
 	public void stop() {
 		dostopping = true;
 	}
-
+	*/
 	@Override
 	public void run() {
+		/*
 		log.debug("##REC:: stream writer started");
 		long lastPackedRecieved = System.currentTimeMillis() + TIME_TO_WAIT_FOR_FRAME;
 		long counter = 0;
@@ -158,6 +137,7 @@ public abstract class BaseStreamWriter implements Runnable {
 			}
 		}
 		log.debug("##REC:: stream writer stopped");
+		 */
 	}
 
 	/**
@@ -172,6 +152,7 @@ public abstract class BaseStreamWriter implements Runnable {
 	/**
 	 * called when the stream is finished written on the disk
 	 */
+	/*
 	public void closeStream() {
 		try {
 			writer.close();
@@ -213,4 +194,5 @@ public abstract class BaseStreamWriter implements Runnable {
 
 		writer.writeTag(tag);
 	}
+	*/
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/CachedEvent.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/CachedEvent.java
index 4184290..9cfa329 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/CachedEvent.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/CachedEvent.java
@@ -21,15 +21,13 @@ package org.apache.openmeetings.core.data.record.listener.async;
 import java.util.Date;
 
 import org.apache.mina.core.buffer.IoBuffer;
-import org.red5.server.api.stream.IStreamPacket;
-import org.red5.server.net.rtmp.event.VideoData.FrameType;
 
-public class CachedEvent implements IStreamPacket {
+public class CachedEvent/* implements IStreamPacket*/ {
 	private byte dataType;
 	private int timestamp; //this is the timeStamp, showing the time elapsed since the microphone was turned on
 	private IoBuffer data;
 	private Date currentTime; //this is the actually current timeStamp when the packet with audio data did enter the server
-	private FrameType frameType = FrameType.UNKNOWN;
+	//private FrameType frameType = FrameType.UNKNOWN;
 
 	public Date getCurrentTime() {
 		return currentTime;
@@ -51,6 +49,7 @@ public class CachedEvent implements IStreamPacket {
 		this.data = data;
 	}
 
+	/*
 	@Override
 	public byte getDataType() {
 		return dataType;
@@ -73,4 +72,5 @@ public class CachedEvent implements IStreamPacket {
 	public void setFrameType(FrameType frameType) {
 		this.frameType = frameType;
 	}
+	*/
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java
index f4ccdaa..d9cd52e 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java
@@ -18,23 +18,13 @@
  */
 package org.apache.openmeetings.core.data.record.listener.async;
 
-import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.getApp;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-import static org.red5.io.IoConstants.TYPE_AUDIO;
-import static org.red5.server.net.rtmp.event.VideoData.FrameType.KEYFRAME;
-
 import java.util.Date;
 
-import org.apache.mina.core.buffer.IoBuffer;
-import org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao;
-import org.apache.openmeetings.db.entity.record.RecordingMetaData;
-import org.apache.openmeetings.db.entity.record.RecordingMetaDelta;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.scope.IScope;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class StreamAudioWriter extends BaseStreamWriter {
-	private static final Logger log = Red5LoggerFactory.getLogger(StreamAudioWriter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(StreamAudioWriter.class);
 
 	private int duration = 0;
 
@@ -46,19 +36,21 @@ public class StreamAudioWriter extends BaseStreamWriter {
 	private long byteCount = 0;
 
 	// Autowire is not possible
-	protected final RecordingMetaDeltaDao metaDeltaDao;
+	//protected final RecordingMetaDeltaDao metaDeltaDao;
 
 	private boolean isInterview = false;
 
+	/*
 	public StreamAudioWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData, boolean isInterview) {
 		super(streamName, scope, metaDataId, isScreenData);
 
 		this.metaDeltaDao = getApp().getOmBean(RecordingMetaDeltaDao.class);
 		this.isInterview = isInterview;
 	}
-
+	*/
 	@Override
 	public void packetReceived(CachedEvent streampacket) {
+		/*
 		try {
 			// We only care about audio at this moment
 			if (isInterview || TYPE_AUDIO == streampacket.getDataType()) {
@@ -173,10 +165,12 @@ public class StreamAudioWriter extends BaseStreamWriter {
 		} catch (Exception e) {
 			log.error("##REC:: [packetReceived]", e);
 		}
+		*/
 	}
 
 	@Override
 	protected void internalCloseStream() {
+		/*
 		try {
 			// We do not add any End Padding or count the gaps for the
 			// Screen Data, cause there is no!
@@ -212,5 +206,6 @@ public class StreamAudioWriter extends BaseStreamWriter {
 		} catch (Exception err) {
 			log.error("##REC:: [internalCloseStream]", err);
 		}
+		*/
 	}
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java
index 6aa41e7..07b9498 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java
@@ -18,27 +18,23 @@
  */
 package org.apache.openmeetings.core.data.record.listener.async;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-import static org.red5.server.net.rtmp.event.VideoData.FrameType.KEYFRAME;
-
 import java.util.Date;
 
-import org.apache.mina.core.buffer.IoBuffer;
-import org.apache.openmeetings.db.entity.record.RecordingMetaData;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.scope.IScope;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class StreamVideoWriter extends BaseStreamWriter {
-	private static final Logger log = Red5LoggerFactory.getLogger(StreamVideoWriter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(StreamVideoWriter.class);
 	private Date startedSessionScreenTimeDate = null;
 
+	/*
 	public StreamVideoWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData) {
 		super(streamName, scope, metaDataId, isScreenData);
 	}
-
+	*/
 	@Override
 	public void packetReceived(CachedEvent streampacket) {
+		/*
 		try {
 			int timeStamp = streampacket.getTimestamp();
 			log.trace("incoming timeStamp :: " + timeStamp);
@@ -76,6 +72,7 @@ public class StreamVideoWriter extends BaseStreamWriter {
 		} catch (Exception e) {
 			log.error("[packetReceived]", e);
 		}
+		*/
 	}
 
 	@Override
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java
index 68c1aaf..bc942e0 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.core.documents;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -29,14 +28,14 @@ import java.io.InputStreamReader;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.thoughtworks.xstream.XStream;
 import com.thoughtworks.xstream.io.xml.XppDriver;
 
 public class LibraryChartLoader {
-	private static final Logger log = Red5LoggerFactory.getLogger(LibraryChartLoader.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LibraryChartLoader.class);
 	private static final String CHART_EXT = ".xchart";
 
 	private LibraryChartLoader() {}
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
index 1b3a6a3..77a94a4 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
@@ -24,7 +24,6 @@ import static org.apache.openmeetings.db.util.TimezoneUtil.getTimeZone;
 import static org.apache.openmeetings.util.OmException.BAD_CREDENTIALS;
 import static org.apache.openmeetings.util.OmException.UNKNOWN;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_GROUP_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.Closeable;
 import java.io.File;
@@ -67,8 +66,8 @@ import org.apache.openmeetings.db.entity.user.User.Type;
 import org.apache.openmeetings.util.OmException;
 import org.apache.openmeetings.util.OmFileHelper;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -80,7 +79,7 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class LdapLoginManager {
-	private static final Logger log = Red5LoggerFactory.getLogger(LdapLoginManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LdapLoginManager.class);
 	// LDAP custom attribute mapping keys
 	private static final String CONFIGKEY_LDAP_KEY_LOGIN = "ldap_user_attr_login";
 	private static final String CONFIGKEY_LDAP_KEY_LASTNAME = "ldap_user_attr_lastname";
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
index 95851ee..fa5ea2a 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapOptions.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.core.ldap;
 
 import static org.apache.commons.lang3.math.NumberUtils.toInt;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Properties;
 
@@ -28,11 +27,11 @@ import org.apache.directory.api.ldap.model.message.SearchScope;
 import org.apache.openmeetings.core.ldap.LdapLoginManager.AuthType;
 import org.apache.openmeetings.core.ldap.LdapLoginManager.GroupMode;
 import org.apache.openmeetings.core.ldap.LdapLoginManager.Provisionning;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class LdapOptions {
-	private static final Logger log = Red5LoggerFactory.getLogger(LdapOptions.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LdapOptions.class);
 	private static final String EMPTY_FORMAT = "%s";
 	private static final String CONFIGKEY_LDAP_HOST = "ldap_conn_host";
 	private static final String CONFIGKEY_LDAP_PORT = "ldap_conn_port";
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
index e5106ea..fcea9ff 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
@@ -28,7 +28,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_TIM
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_TIMEOUT_CON;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_TLS;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_USER;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.isInitComplete;
 
 import java.io.ByteArrayInputStream;
@@ -61,8 +60,8 @@ import org.apache.openmeetings.db.entity.basic.MailMessage;
 import org.apache.openmeetings.db.entity.basic.MailMessage.Status;
 import org.apache.openmeetings.util.mail.MailUtil;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.task.TaskExecutor;
 import org.springframework.stereotype.Component;
@@ -77,7 +76,7 @@ import org.springframework.stereotype.Component;
  */
 @Component("mailHandler")
 public class MailHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(MailHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MailHandler.class);
 	private static final int MAIL_SEND_TIMEOUT = 60 * 60 * 1000; // 1 hour
 	private static final int MAXIMUM_ERROR_COUNT = 5;
 
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java
index 9cbe045..c337b5a 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java
@@ -18,16 +18,14 @@
  */
 package org.apache.openmeetings.core.notifier;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.room.Invitation;
 import org.apache.openmeetings.db.entity.user.User;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -37,7 +35,7 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class NotifierService {
-	private static final Logger log = Red5LoggerFactory.getLogger(NotifierService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(NotifierService.class);
 
 	private List<INotifier> notifiers = new ArrayList<>();
 
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 4260bae..82a3de0 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
@@ -22,19 +22,14 @@ import static org.apache.openmeetings.db.util.LocaleHelper.getCountryName;
 import static org.apache.openmeetings.util.OmException.UNKNOWN;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_GROUP_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_VERIFICATION;
-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.PARAM_STATUS;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-import static org.apache.openmeetings.util.Version.getVersion;
 
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
@@ -43,10 +38,7 @@ import java.util.TimeZone;
 import java.util.UUID;
 
 import org.apache.commons.lang3.time.FastDateFormat;
-import org.apache.openmeetings.core.remote.ScopeApplicationAdapter.MessageSender;
 import org.apache.openmeetings.core.service.MainService;
-import org.apache.openmeetings.core.util.IClientUtil;
-import org.apache.openmeetings.core.util.WebSocketHelper;
 import org.apache.openmeetings.db.dao.basic.ChatDao;
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.label.LabelDao;
@@ -56,28 +48,21 @@ import org.apache.openmeetings.db.dao.user.IUserManager;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.dto.user.OAuthUser;
 import org.apache.openmeetings.db.entity.basic.ChatMessage;
-import org.apache.openmeetings.db.entity.basic.Client;
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.room.StreamClient;
 import org.apache.openmeetings.db.entity.server.Sessiondata;
-import org.apache.openmeetings.db.entity.user.Group;
-import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.manager.IStreamClientManager;
-import org.apache.openmeetings.db.util.FormatHelper;
 import org.apache.openmeetings.util.OmException;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.IConnection;
-import org.red5.server.api.Red5;
-import org.red5.server.api.service.IServiceCapableConnection;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 @Service("mobile.service")
 public class MobileService {
-	private static final Logger log = Red5LoggerFactory.getLogger(MainService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MainService.class);
 	@Autowired
 	private ConfigurationDao cfgDao;
 	@Autowired
@@ -116,7 +101,7 @@ public class MobileService {
 	}
 
 	public long switchMicMuted(String publicSID, boolean mute) {
-		return scopeAdapter.switchMicMuted(publicSID, mute);
+		return 0L; //return scopeAdapter.switchMicMuted(publicSID, mute);
 	}
 
 	public Map<String, Object> checkServer() {
@@ -244,6 +229,7 @@ public class MobileService {
 	}
 
 	private Map<String, Object> login(User u, Map<String, Object> result) {
+		/*
 		if (u != null) {
 			IConnection conn = Red5.getConnectionLocal();
 			Sessiondata sd = sessionDao.create(u.getId(), u.getLanguageId());
@@ -263,11 +249,13 @@ public class MobileService {
 			add(result, "language", u.getLanguageId());
 			add(result, "version", getVersion());
 		}
+		*/
 		return result;
 	}
 
 	public List<Map<String, Object>> getVideoStreams() {
 		List<Map<String, Object>> result = new ArrayList<>();
+		/*
 		// Notify all clients of the same scope (room)
 		IConnection current = Red5.getConnectionLocal();
 		for (IConnection conn : current.getScope().getClientConnections()) {
@@ -291,6 +279,7 @@ public class MobileService {
 				}
 			}
 		}
+		*/
 		return result;
 	}
 
@@ -312,6 +301,7 @@ public class MobileService {
 
 	public List<Map<String, Object>> getRooms() {
 		List<Map<String, Object>> result = new ArrayList<>();
+		/*
 		IConnection current = Red5.getConnectionLocal();
 		StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
 		User u = userDao.get(c.getUserId());
@@ -340,6 +330,7 @@ public class MobileService {
 		for (Room r : roomDao.getPublicRooms()) {
 			addRoom("public", null, false, result, r);
 		}
+		*/
 		return result;
 	}
 
@@ -351,16 +342,20 @@ public class MobileService {
 	 * @return {@link Map} with publiSid and broadcastId
 	 */
 	public Map<String, Object> roomConnect(String sid, Long userId) {
+		Map<String, Object> result = new HashMap<>();
+		/*
 		// publicSid is changed on mobile room connect
 		IConnection current = Red5.getConnectionLocal();
 		StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
-		Map<String, Object> result = new HashMap<>();
 		result.put("publicSid", c.getUid());
 		result.put("broadCastId", c.getBroadcastId());
+		*/
 		return result;
 	}
 
 	public Map<String, Object> updateAvMode(String avMode, String width, String height, Integer interviewPodId) {
+		Map<String, Object> result = new HashMap<>();
+		/*
 		IConnection current = Red5.getConnectionLocal();
 		StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
 		c.setAvsettings(avMode);
@@ -377,16 +372,17 @@ public class MobileService {
 		Map<String, Object> hsm = new HashMap<>();
 		hsm.put("client", c);
 		hsm.put("message", new String[]{"avsettings", "0", avMode});
-		Map<String, Object> result = new HashMap<>();
 		if (!"n".equals(avMode)) {
 			result.put("broadcastId", c.getBroadcastId());
 		}
 
 		scopeAdapter.sendMessageToCurrentScope("sendVarsToMessageWithClient", hsm, true, false);
+		*/
 		return result;
 	}
 
 	public void sendChatMessage(String msg) {
+		/*
 		IConnection current = Red5.getConnectionLocal();
 		StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
 
@@ -402,6 +398,7 @@ public class MobileService {
 		FastDateFormat fmt = FormatHelper.getDateTimeFormat(u);
 		sendChatMessage(c, m, fmt);
 		WebSocketHelper.sendRoom(m, WebSocketHelper.getMessage(u, Arrays.asList(m), null));
+		*/
 	}
 
 	public void sendChatMessage(String uid, ChatMessage m, FastDateFormat fmt) {
@@ -409,6 +406,7 @@ public class MobileService {
 	}
 
 	public void sendChatMessage(StreamClient c, ChatMessage m, FastDateFormat fmt) {
+		/*
 		if (c == null) {
 			return;
 		}
@@ -426,6 +424,7 @@ public class MobileService {
 						|| rcl.getRoomId() == null || !rcl.getRoomId().equals(roomId);
 			}
 		}.start();
+		*/
 	}
 
 	private static boolean isModerator(StreamClient c) {
@@ -442,6 +441,7 @@ public class MobileService {
 
 	public List<Map<String, Object>> getRoomChatHistory() {
 		List<Map<String,Object>> myChatList = new ArrayList<>();
+		/*
 		try {
 			IConnection current = Red5.getConnectionLocal();
 			StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
@@ -459,6 +459,7 @@ public class MobileService {
 		} catch (Exception err) {
 			log.error("[getRoomChatHistory] ",err);
 		}
+		*/
 		return myChatList;
 	}
 
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 b06e0af..5fd61f7 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
@@ -18,69 +18,34 @@
  */
 package org.apache.openmeetings.core.remote;
 
-import static org.apache.openmeetings.util.OmFileHelper.HIBERNATE;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EXT_PROCESS_TTL;
-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.HEADER_CSP_SELF;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.HEADER_XFRAME_SAMEORIGIN;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getExtProcessTtl;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.setExtProcessTtl;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.setInitComplete;
 
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
-import java.util.UUID;
 
 import org.apache.openmeetings.IApplication;
 import org.apache.openmeetings.core.service.RecordingService;
-import org.apache.openmeetings.core.util.IClientUtil;
-import org.apache.openmeetings.core.util.WebSocketHelper;
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
-import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.dao.log.ConferenceLogDao;
 import org.apache.openmeetings.db.dao.record.RecordingDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
 import org.apache.openmeetings.db.dao.room.SipDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.dto.room.CheckDto;
-import org.apache.openmeetings.db.entity.basic.Client;
-import org.apache.openmeetings.db.entity.log.ConferenceLog;
 import org.apache.openmeetings.db.entity.room.Room;
-import org.apache.openmeetings.db.entity.room.StreamClient;
 import org.apache.openmeetings.db.manager.IClientManager;
 import org.apache.openmeetings.db.manager.IStreamClientManager;
-import org.apache.openmeetings.db.util.ws.RoomMessage;
-import org.apache.openmeetings.db.util.ws.TextRoomMessage;
-import org.apache.openmeetings.util.NullStringer;
-import org.apache.openmeetings.util.OmFileHelper;
-import org.apache.openmeetings.util.Version;
 import org.apache.wicket.Application;
-import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.adapter.MultiThreadedApplicationAdapter;
-import org.red5.server.api.IClient;
-import org.red5.server.api.IConnection;
-import org.red5.server.api.Red5;
-import org.red5.server.api.scope.IScope;
-import org.red5.server.api.scope.ScopeType;
-import org.red5.server.api.service.IPendingServiceCall;
-import org.red5.server.api.service.IPendingServiceCallback;
-import org.red5.server.api.service.IServiceCapableConnection;
-import org.red5.server.api.stream.IBroadcastStream;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import com.github.openjson.JSONObject;
-
 @Service("web.handler")
-public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter implements IPendingServiceCallback {
-	private static final Logger _log = Red5LoggerFactory.getLogger(ScopeApplicationAdapter.class, getWebAppRootKey());
+public class ScopeApplicationAdapter /*extends MultiThreadedApplicationAdapter implements IPendingServiceCallback*/ {
+	private static final Logger log = LoggerFactory.getLogger(ScopeApplicationAdapter.class);
 	private static final String SID_PARAM = "sid";
 	private static final String PARENT_SID_PARAM = "parentSid"; //mobile
 	private static final String MOBILE_PARAM = "mobileClient";
@@ -111,6 +76,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		return (IApplication)Application.get(getWicketApplicationName());
 	}
 
+	/*
 	@Override
 	public void resultReceived(IPendingServiceCall arg0) {
 		if (_log.isTraceEnabled()) {
@@ -147,6 +113,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		}
 		return true;
 	}
+	*/
 
 	@SuppressWarnings("unchecked")
 	private static Map<String, Object> getConnParams(Object[] params) {
@@ -156,6 +123,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		return new HashMap<>();
 	}
 
+	/*
 	@Override
 	public boolean appConnect(IConnection conn, Object[] params) {
 		if (conn != null && conn.getScope() != null && conn.getScope().getType() == ScopeType.APPLICATION) {
@@ -307,6 +275,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		}
 		return returnMap;
 	}
+	*/
 
 	/**
 	 *
@@ -314,6 +283,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @return returns key,value Map with multiple return values or null in case of exception
 	 *
 	 */
+	/*
 	public Map<String, Object> setConnectionAsSharingClient(Map<String, Object> map) {
 		try {
 			_log.debug("-----------  setConnectionAsSharingClient");
@@ -382,12 +352,14 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		}
 		return null;
 	}
+	*/
 
 	/**
 	 * Logic must be before roomDisconnect cause otherwise you cannot throw a
 	 * message to each one
 	 *
 	 */
+	/*
 	@Override
 	public void roomLeave(IClient client, IScope room) {
 		try {
@@ -429,6 +401,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		}
 		dropSharing(c, roomId);
 	}
+	*/
 
 	/**
 	 * Removes the Client from the List, stops recording, adds the Room-Leave
@@ -440,6 +413,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @param client - client who leave
 	 * @param scope - scope being leaved
 	 */
+	/*
 	public void roomLeaveByScope(StreamClient client, IScope scope) {
 		try {
 			_log.debug("[roomLeaveByScope] currentClient {}", client);
@@ -472,6 +446,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 			_log.error("[roomLeaveByScope]", err);
 		}
 	}
+	*/
 
 	/**
 	 * This method handles the Event after a stream has been added all connected
@@ -481,6 +456,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	/* (non-Javadoc)
 	 * @see org.red5.server.adapter.MultiThreadedApplicationAdapter#streamPublishStart(org.red5.server.api.stream.IBroadcastStream)
 	 */
+	/*
 	@Override
 	public void streamPublishStart(IBroadcastStream stream) {
 		try {
@@ -551,6 +527,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 			_log.error("[streamPublishStart]", err);
 		}
 	}
+	*/
 
 	/**
 	 * This method handles the Event after a stream has been removed all
@@ -560,6 +537,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	/* (non-Javadoc)
 	 * @see org.red5.server.adapter.MultiThreadedApplicationAdapter#streamBroadcastClose(org.red5.server.api.stream.IBroadcastStream)
 	 */
+	/*
 	@Override
 	public void streamBroadcastClose(IBroadcastStream stream) {
 		// Notify all the clients that the stream had been closed
@@ -699,6 +677,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	}
 
 	public void sendToScope(final Long roomId, String method, Object obj) {
+		/*
 		new MessageSender(getChildScope(roomId), method, obj, this) {
 			@Override
 			public boolean filter(IConnection conn) {
@@ -707,6 +686,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 						|| rcl.getRoomId() == null || !rcl.getRoomId().equals(roomId) || userDao.get(rcl.getUserId()) == null;
 			}
 		}.start();
+		*/
 	}
 
 	/**
@@ -725,15 +705,18 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @param sendScreen send to the current client as well
 	 */
 	public void sendMessageToCurrentScope(final String method, final Object msg, final boolean sendSelf, final boolean sendScreen) {
+		/*
 		IConnection conn = Red5.getConnectionLocal();
 		if (conn == null) {
 			_log.warn("[sendMessageToCurrentScope] -> 'Unable to send message using NULL connection' {}, {}", method, msg);
 			return;
 		}
 		sendMessageToCurrentScope(conn.getScope().getName(), method, msg, sendSelf, sendScreen);
+		*/
 	}
 
 	public void sendMessageToCurrentScope(final String scopeName, final String remoteMethodName, final Object newMessage, final boolean sendSelf, final boolean sendScreen) {
+		/*
 		new MessageSender(getChildScope(scopeName), remoteMethodName, newMessage, this) {
 			@Override
 			public boolean filter(IConnection conn) {
@@ -742,14 +725,17 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 						|| (!sendSelf && current != null && client.getId().equals(current.getClient().getId()));
 			}
 		}.start();
+		*/
 	}
 
+	/*
 	public abstract static class MessageSender extends Thread {
 		final IScope scope;
 		final IConnection current;
+		final IPendingServiceCallback callback;
 		final String method;
 		final Object msg;
-		final IPendingServiceCallback callback;
+
 
 		public MessageSender(final String remoteMethodName, final Object newMessage, IPendingServiceCallback callback) {
 			this((IScope)null, remoteMethodName, newMessage, callback);
@@ -777,10 +763,10 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		public void run() {
 			try {
 				if (scope == null) {
-					_log.debug("[MessageSender] -> 'Unable to send message to NULL scope' {}, {}", method, msg);
+					log.debug("[MessageSender] -> 'Unable to send message to NULL scope' {}, {}", method, msg);
 				} else {
-					if (_log.isTraceEnabled()) {
-						_log.trace("[MessageSender] -> 'sending message' {}, {}", method, msg);
+					if (log.isTraceEnabled()) {
+						log.trace("[MessageSender] -> 'sending message' {}, {}", method, msg);
 					}
 					// Send to all Clients of that Scope(Room)
 					int count = 0;
@@ -793,15 +779,16 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 							count++;
 						}
 					}
-					if (_log.isTraceEnabled()) {
-						_log.trace("[MessageSender] -> 'sending message to {} clients, DONE' {}", count, method);
+					if (log.isTraceEnabled()) {
+						log.trace("[MessageSender] -> 'sending message to {} clients, DONE' {}", count, method);
 					}
 				}
 			} catch (Exception err) {
-				_log.error(String.format("[MessageSender -> %s, %s]", method, msg), err);
+				log.error(String.format("[MessageSender -> %s, %s]", method, msg), err);
 			}
 		}
 	}
+	*/
 
 	/**
 	 * wrapper method
@@ -809,6 +796,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @param newMessage - message being sent
 	 * @return 1 in case of success, -1 otherwise
 	 */
+	/*
 	public int sendMessageWithClient(Object newMessage) {
 		try {
 			sendMessageWithClientWithSyncObject(newMessage, true);
@@ -827,6 +815,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @param sync - send self
 	 * @return 1 in case of success, -1 otherwise
 	 */
+	/*
 	public int sendMessageWithClientWithSyncObject(Object newMessage, boolean sync) {
 		try {
 			IConnection current = Red5.getConnectionLocal();
@@ -845,6 +834,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		}
 		return 1;
 	}
+	*/
 
 	/**
 	 * Function is used to send the kick Trigger at the moment,
@@ -855,6 +845,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @param scope - scope of message
 	 * @return 1 in case of success, -1 otherwise
 	 */
+	/*
 	public int sendMessageById(Object newMessage, final String uid, IScope scope) {
 		try {
 			_log.debug("### sendMessageById ### {}", uid);
@@ -869,6 +860,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		}
 		return 1;
 	}
+	*/
 
 	/**
 	 * Sends a message to a user in the same room by its clientId
@@ -877,6 +869,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 * @param newMessage - message being sent
 	 * @return 1 in case of no exceptions, -1 otherwise
 	 */
+	/*
 	public int sendMessageToClient(final String uid, Object newMessage) {
 		try {
 			IConnection current = Red5.getConnectionLocal();
@@ -917,6 +910,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 *
 	 * @param c - client who initiated recording
 	 */
+	/*
 	public void startInterviewRecording(Client c) {
 		_log.debug("-----------  startInterviewRecording");
 
@@ -932,6 +926,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	 *
 	 * @param c - client who stopped recording
 	 */
+	/*
 	public void stopInterviewRecording(org.apache.openmeetings.db.entity.basic.IClient c) {
 		_log.debug("-----------  stopInterviewRecording");
 		recordingService.stopRecording(getChildScope(c.getRoomId()), c);
@@ -947,6 +942,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 	/*
 	 * SIP transport methods
 	 */
+	/*
 	public List<String> listRoomBroadcast() {
 		List<String> ids = new ArrayList<>();
 		IConnection current = Red5.getConnectionLocal();
@@ -991,43 +987,48 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
 		return new ArrayList<>(clientManager.getActiveRoomIds());
 	}
 
+	/*
 	public synchronized int updateSipTransport() {
-		_log.debug("-----------  updateSipTransport");
+		log.debug("-----------  updateSipTransport");
 		IConnection current = Red5.getConnectionLocal();
 		StreamClient client = streamClientManager.get(IClientUtil.getId(current.getClient()));
 		Long roomId = client.getRoomId();
 		Integer count = getSipConferenceMembersNumber(roomId);
 		String newNumber = getSipTransportLastname(count);
-		_log.debug("getSipConferenceMembersNumber: " + newNumber);
+		log.debug("getSipConferenceMembersNumber: " + newNumber);
 		if (!newNumber.equals(client.getLastname())) {
 			Client cl = clientManager.getBySid(client.getSid());
 			cl.getUser().setLastname(newNumber);
 			client.setLastname(newNumber);
 			streamClientManager.update(client);
-			_log.debug("updateSipTransport: {}, {}, {}, {}, {}", new Object[] { client.getUid(), client.getRoomId(),
+			log.debug("updateSipTransport: {}, {}, {}, {}, {}", new Object[] { client.getUid(), client.getRoomId(),
 					client.getFirstname(), client.getLastname(), client.getAvsettings() });
 			WebSocketHelper.sendRoom(new TextRoomMessage(client.getRoomId(), client, RoomMessage.Type.rightUpdated, client.getUid()));
 			sendMessageWithClient(new String[] { "personal", client.getFirstname(), client.getLastname() });
 		}
 		return count != null && count > 0 ? count - 1 : 0;
 	}
-
+	*/
 	public CheckDto check() {
-		IConnection current = Red5.getConnectionLocal();
+		/*IConnection current = Red5.getConnectionLocal();
 		StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
 		Client cl = clientManager.getBySid(c.getSid());
 		return new CheckDto(cl);
+		*/
+		return new CheckDto(null);
 	}
 
 	public void resize(Double width, Double height) {
 		if (width == null || height == null) {
 			return;
 		}
+		/*
 		IConnection current = Red5.getConnectionLocal();
 		StreamClient c = streamClientManager.get(IClientUtil.getId(current.getClient()));
 		if (c == null) {
 			return;
 		}
 		streamClientManager.update(c.setWidth(width.intValue()).setHeight(height.intValue()));
+		*/
 	}
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/rss/LoadAtomRssFeed.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/rss/LoadAtomRssFeed.java
index 36fd61a..fb31334 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/rss/LoadAtomRssFeed.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/rss/LoadAtomRssFeed.java
@@ -18,19 +18,17 @@
  */
 package org.apache.openmeetings.core.rss;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.IOException;
 import java.net.HttpURLConnection;
 import java.net.URL;
 
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 
 public class LoadAtomRssFeed {
-	private static final Logger log = Red5LoggerFactory.getLogger(LoadAtomRssFeed.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LoadAtomRssFeed.class);
 	private static JSONArray rss = new JSONArray();
 
 	private LoadAtomRssFeed() {}
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/MainService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/MainService.java
index 0a33c33..0a2aff1 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/MainService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/MainService.java
@@ -25,9 +25,8 @@ import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.room.RoomGroup;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
-import org.apache.openmeetings.util.OpenmeetingsVariables;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -38,7 +37,7 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class MainService {
-	private static final Logger log = Red5LoggerFactory.getLogger(MainService.class, OpenmeetingsVariables.getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MainService.class);
 
 	@Autowired
 	private AppointmentDao appointmentDao;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/RecordingService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/RecordingService.java
index ca93b4e..abcbc6d 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/RecordingService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/service/RecordingService.java
@@ -18,52 +18,28 @@
  */
 package org.apache.openmeetings.core.service;
 
-import static org.apache.openmeetings.core.converter.BaseConverter.printMetaInfo;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Date;
 import java.util.Map;
-import java.util.UUID;
 import java.util.concurrent.ConcurrentHashMap;
 
 import org.apache.openmeetings.core.data.record.converter.InterviewConverterTask;
 import org.apache.openmeetings.core.data.record.converter.RecordingConverterTask;
 import org.apache.openmeetings.core.data.record.listener.StreamListener;
 import org.apache.openmeetings.core.remote.ScopeApplicationAdapter;
-import org.apache.openmeetings.core.util.IClientUtil;
-import org.apache.openmeetings.core.util.WebSocketHelper;
 import org.apache.openmeetings.db.dao.record.RecordingDao;
 import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.basic.Client;
-import org.apache.openmeetings.db.entity.basic.IClient;
-import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
-import org.apache.openmeetings.db.entity.record.Recording;
-import org.apache.openmeetings.db.entity.record.RecordingMetaData;
-import org.apache.openmeetings.db.entity.record.RecordingMetaData.Status;
-import org.apache.openmeetings.db.entity.room.StreamClient;
-import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.manager.IClientManager;
 import org.apache.openmeetings.db.manager.IStreamClientManager;
-import org.apache.openmeetings.db.util.ws.RoomMessage;
-import org.apache.openmeetings.db.util.ws.TextRoomMessage;
 import org.apache.openmeetings.util.CalendarPatterns;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.IConnection;
-import org.red5.server.api.scope.IScope;
-import org.red5.server.api.service.IServiceCapableConnection;
-import org.red5.server.api.stream.IBroadcastStream;
-import org.red5.server.api.stream.IStreamListener;
-import org.red5.server.stream.ClientBroadcastStream;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import com.github.openjson.JSONObject;
-
 @Service
 public class RecordingService {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingService.class);
 
 	/**
 	 * Stores a reference to all available listeners we need that reference, as the internal references stored with the
@@ -94,6 +70,7 @@ public class RecordingService {
 		return "rec_" + recordingId + "_stream_" + streamid + "_" + dateString;
 	}
 
+	/*
 	public void startRecording(final IScope scope, IClient client, boolean isInterview) {
 		try {
 			log.debug("##REC:: recordMeetingStream ::");
@@ -204,7 +181,7 @@ public class RecordingService {
 			log.error("[-- stopRecording --]", err);
 		}
 	}
-
+	*/
 	/**
 	 * Start recording the published stream for the specified broadcast-Id
 	 *
@@ -215,6 +192,7 @@ public class RecordingService {
 	 * @param isScreenSharing
 	 * @param isInterview
 	 */
+	/*
 	private void addListener(IConnection conn, String broadcastid, String streamName, Long metaId, boolean isScreenSharing, boolean isInterview) {
 		log.debug("Recording show for: {}", conn.getScope().getContextPath());
 		log.debug("Name of CLient and Stream to be recorded: {}", broadcastid);
@@ -234,7 +212,7 @@ public class RecordingService {
 
 		streamListeners.put(metaId, streamListener);
 		stream.addStreamListener(streamListener);
-	}
+	}*/
 
 	/**
 	 * Stops recording the publishing stream for the specified IConnection.
@@ -243,6 +221,7 @@ public class RecordingService {
 	 * @param broadcastId
 	 * @param metaId
 	 */
+	/*
 	private void removeListener(IScope scope, String broadcastId, Long metaId) {
 		try {
 			log.debug("** removeListener: scope: {}, broadcastId: {} || {}", scope, broadcastId, scope.getContextPath());
@@ -370,4 +349,5 @@ public class RecordingService {
 		}
 		log.debug("startStreamRecord[{}]:: resulting metaId: {}", broadcastId, rcl.getMetaId());
 	}
+	*/
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/IClientUtil.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/IClientUtil.java
index c2c6136..ba4bfbb 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/IClientUtil.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/IClientUtil.java
@@ -18,10 +18,6 @@
  */
 package org.apache.openmeetings.core.util;
 
-import org.apache.openmeetings.db.entity.room.StreamClient;
-import org.red5.server.api.IClient;
-import org.red5.server.api.scope.IScope;
-
 public class IClientUtil {
 	private enum ConAttrs {
 		omId
@@ -29,10 +25,12 @@ public class IClientUtil {
 		, recordingId
 	}
 
+	/*
 	public static void init(IClient client, String uid, boolean sharing) {
 		client.setAttribute(ConAttrs.omId.name(), uid);
 		client.setAttribute(ConAttrs.sharing.name(), sharing);
 	}
+	*/
 
 	/**
 	 * Id of {@link StreamClient} for this IConnection
@@ -40,6 +38,7 @@ public class IClientUtil {
 	 * @param client - {@link IClient} to get if from
 	 * @return - Id of {@link StreamClient} for this IConnection, or <code>null</code>
 	 */
+	/*
 	public static String getId(IClient client) {
 		Object o = client.getAttribute(ConAttrs.omId.name());
 		return o instanceof String ? (String)o : null;
@@ -56,4 +55,5 @@ public class IClientUtil {
 	public static void setRecordingId(IScope scope, Long recordingId) {
 		scope.setAttribute(ConAttrs.recordingId.name(), recordingId);
 	}
+	*/
 }
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
index d0097c9..e4533df 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.core.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Map;
 
 import org.apache.directory.api.util.Strings;
@@ -29,12 +27,12 @@ import org.apache.wicket.util.collections.MicroMap;
 import org.apache.wicket.validation.IValidatable;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.ValidationError;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class StrongPasswordValidator implements IValidator<String> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(StrongPasswordValidator.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(StrongPasswordValidator.class);
 	private final int minLength;
 	private final boolean web;
 	private User u;
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java
index a0ede37..44e5429 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.core.util;
 
 import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.getApp;
 import static org.apache.openmeetings.db.util.FormatHelper.getDisplayName;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 import java.util.Arrays;
@@ -52,14 +51,14 @@ import org.apache.wicket.protocol.ws.api.IWebSocketConnection;
 import org.apache.wicket.protocol.ws.api.registry.IWebSocketConnectionRegistry;
 import org.apache.wicket.protocol.ws.api.registry.PageIdKey;
 import org.apache.wicket.protocol.ws.concurrent.Executor;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
 
 public class WebSocketHelper {
-	private static final Logger log = Red5LoggerFactory.getLogger(WebSocketHelper.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(WebSocketHelper.class);
 	public static final String ID_TAB_PREFIX = "chatTab-";
 	public static final String ID_ALL = ID_TAB_PREFIX + "all";
 	public static final String ID_ROOM_PREFIX = ID_TAB_PREFIX + "r";
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/EditorPaneLinkDetector.java b/openmeetings-core/src/test/java/org/apache/openmeetings/EditorPaneLinkDetector.java
deleted file mode 100644
index d415240..0000000
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/EditorPaneLinkDetector.java
+++ /dev/null
@@ -1,319 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") +  you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings;
-
-/**
- * David Bismut, david.bismut@gmail.com
- * Intern, SETLabs, Infosys Technologies Ltd. May 2004 - Jul 2004
- * Ecole des Mines de Nantes, France
- */
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
-import java.awt.event.KeyAdapter;
-import java.awt.event.KeyEvent;
-import java.awt.event.MouseEvent;
-import java.awt.event.MouseMotionAdapter;
-import java.io.IOException;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.accessibility.AccessibleHypertext;
-import javax.swing.JEditorPane;
-import javax.swing.text.AttributeSet;
-import javax.swing.text.BadLocationException;
-import javax.swing.text.Element;
-import javax.swing.text.html.HTML;
-import javax.swing.text.html.HTMLDocument;
-import javax.swing.text.html.HTMLEditorKit;
-import javax.swing.text.html.StyleSheet;
-import javax.swing.text.html.parser.ParserDelegator;
-
-import org.red5.logging.Red5LoggerFactory;
-import org.slf4j.Logger;
-
-/**
- * A "HTML" JEditorPane embedded with a special HTMLDocument that detects urls
- * and displays them as hyperlinks. When CTRL is pressed, the urls are
- * clickable.
- *
- * @author David Bismut
- *
- */
-public class EditorPaneLinkDetector extends JEditorPane {
-	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(EditorPaneLinkDetector.class, getWebAppRootKey());
-
-	/**
-	 * Creates a <code>EditorPaneLinkDetector</code>.
-	 */
-	public EditorPaneLinkDetector() {
-
-		HTMLEditorKit htmlkit = new HTMLEditorKit();
-
-		StyleSheet styles = htmlkit.getStyleSheet();
-		StyleSheet ss = new StyleSheet();
-
-		ss.addStyleSheet(styles);
-
-		ss.addRule("body {font-family:arial;font-size:12pt}");
-		ss.addRule("p {font-family:arial;margin:2}");
-
-		HTMLDocument doc = new HTMLDocLinkDetector(ss);
-
-		setEditorKit(htmlkit);
-
-		setDocument(doc);
-
-		addMouseMotionListener(new MouseMotionAdapter() {
-			@Override
-			public void mouseMoved(MouseEvent e) {
-
-				AccessibleJTextComponent context = (AccessibleJTextComponent) getAccessibleContext()
-						.getAccessibleEditableText();
-
-				AccessibleHypertext accText = (AccessibleHypertext) context
-						.getAccessibleText();
-
-				int index = accText.getIndexAtPoint(e.getPoint());
-
-				int linkIndex = accText.getLinkIndex(index);
-				if (linkIndex == -1) {
-					setToolTipText(null);
-					return;
-				}
-
-				String linkDesc = accText.getLink(linkIndex)
-						.getAccessibleActionDescription(0);
-
-				String toolTipText = "<html><body style='margin: 3'>"
-						+ linkDesc
-						+ "<br><b>CTRL + click to follow link</b></body></html>";
-				setToolTipText(toolTipText);
-			}
-		});
-
-		addKeyListener(new KeyAdapter() {
-			@Override
-			public void keyPressed(KeyEvent e) {
-
-				if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
-					if (isEditable()) {
-						setEditable(false);
-					}
-				} else {
-					if (!isEditable()) {
-						setEditable(true);
-					}
-				}
-
-			}
-
-			@Override
-			public void keyReleased(KeyEvent e) {
-
-				if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
-					setEditable(true);
-				}
-
-			}
-		});
-	}
-
-	protected class HTMLDocLinkDetector extends HTMLDocument {
-		private static final long serialVersionUID = 1L;
-
-		public HTMLDocLinkDetector(StyleSheet ss) {
-			super(ss);
-
-			setAsynchronousLoadPriority(4);
-			setTokenThreshold(100);
-			setParser(new ParserDelegator());
-		}
-
-		/**
-		 * Returns true if the Element contains a HTML.Tag.A attribute, false
-		 * otherwise.
-		 *
-		 * @param e
-		 *            the Element to be checkd
-		 * @return
-		 */
-		protected boolean isLink(Element e) {
-
-			return (e.getAttributes().getAttribute(HTML.Tag.A) != null);
-
-		}
-
-		/**
-		 * This method corrects or creates a url contained in an Element as an
-		 * hyperlink.
-		 *
-		 * @param e
-		 *            the Element to be computed
-		 * @throws BadLocationException
-		 */
-		protected void computeLinks(Element e) throws BadLocationException {
-
-			int caretPos = getCaretPosition();
-			try {
-				if (isLink(e))
-					correctLink(e);
-				else
-					createLink(e);
-			} catch (IOException ex) {
-				log.error("Error", ex);
-			}
-			setCaretPosition(Math.min(caretPos, getLength()));
-		}
-
-		/**
-		 * The method corrects the url inside an Element, that is supposed to be
-		 * an element containing a link only. This function is typically called
-		 * when the url is beeing edited. What the function does is to remove
-		 * the html tags, so the url is actually edited in plain text and not as
-		 * an hyperlink.
-		 *
-		 * @param e
-		 *            the Element that contains the url
-		 * @throws BadLocationException
-		 * @throws IOException
-		 */
-		protected void correctLink(Element e) throws BadLocationException,
-				IOException {
-
-			int length = e.getEndOffset() - e.getStartOffset();
-
-			boolean endOfDoc = e.getEndOffset() == getLength() + 1;
-
-			// to avoid catching the final '\n' of the document.
-			if (endOfDoc)
-				length--;
-
-			String text = getText(e.getStartOffset(), length);
-
-			setOuterHTML(e, text);
-
-			// insert final spaces ignored by the html
-			Matcher spaceMatcher = Pattern.compile("(\\s+)$").matcher(text);
-
-			if (spaceMatcher.find()) {
-				String endingSpaces = spaceMatcher.group(1);
-				insertString(Math.min(getLength(), e.getEndOffset()),
-						endingSpaces, null);
-			}
-		}
-
-		/**
-		 * The method check if the element contains a url in plain text, and if
-		 * so, it creates the html tag HTML.Tag.A to have the url displayed as
-		 * an hyperlink.
-		 *
-		 * @param e
-		 *            element that contains the url
-		 * @throws BadLocationException
-		 * @throws IOException
-		 */
-		protected void createLink(Element e) throws BadLocationException,
-				IOException {
-
-			int caretPos = getCaretPosition();
-
-			int startOffset = e.getStartOffset();
-			int length = e.getEndOffset() - e.getStartOffset();
-
-			boolean endOfDoc = e.getEndOffset() == getLength() + 1;
-			// to avoid catching the final '\n' of the document.
-			if (endOfDoc)
-				length--;
-
-			String text = getText(startOffset, length);
-
-			Matcher matcher = Pattern.compile(
-					"(?i)(\\b(http://|https://|www.|ftp://|file:/|mailto:)\\S+)(\\s+)")
-					.matcher(text);
-
-			if (matcher.find()) {
-				String url = matcher.group(1);
-				//String prefix = matcher.group(2);
-				String endingSpaces = matcher.group(3);
-
-				// to ignore characters after the caret
-				int validPos = startOffset + matcher.start(3) + 1;
-				if (validPos > caretPos)
-					return;
-
-				Matcher dotEndMatcher = Pattern.compile("([\\W&&[^/]]+)$")
-						.matcher(url);
-
-				//Ending non alpha characters like [.,?%] shouldn't be included
-				// in the url.
-				String endingDots = "";
-				if (dotEndMatcher.find()) {
-					endingDots = dotEndMatcher.group(1);
-					url = dotEndMatcher.replaceFirst("");
-				}
-
-				text = matcher.replaceFirst("<a href='" + url + "'>" + url
-						+ "</a>" + endingDots + endingSpaces);
-
-				setOuterHTML(e, text);
-
-				// insert initial spaces ignored by the html
-				Matcher spaceMatcher = Pattern.compile("^(\\s+)").matcher(text);
-
-				if (spaceMatcher.find()) {
-					String initialSpaces = spaceMatcher.group(1);
-					insertString(startOffset, initialSpaces, null);
-				}
-
-				// insert final spaces ignored by the html
-				spaceMatcher = Pattern.compile("(\\s+)$").matcher(text);
-
-				if (spaceMatcher.find()) {
-					String extraSpaces = spaceMatcher.group(1);
-					int endoffset = e.getEndOffset();
-					if (extraSpaces.charAt(extraSpaces.length() - 1) == '\n') {
-						extraSpaces = extraSpaces.substring(0, extraSpaces
-								.length() - 1);
-						endoffset--;
-					}
-					insertString(Math.min(getLength(), endoffset), extraSpaces,
-							null);
-				}
-			}
-		}
-
-		@Override
-		public void remove(int offs, int len) throws BadLocationException {
-
-			super.remove(offs, len);
-			Element e = getCharacterElement(offs - len);
-			computeLinks(e);
-		}
-
-		@Override
-		public void insertString(int offs, String str, AttributeSet a)
-				throws BadLocationException {
-
-			super.insertString(offs, str, a);
-			Element e = getCharacterElement(offs);
-			computeLinks(e);
-		}
-	}
-}
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/jai/TestInterpolation.java b/openmeetings-core/src/test/java/org/apache/openmeetings/jai/TestInterpolation.java
deleted file mode 100644
index a33c7c2..0000000
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/jai/TestInterpolation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") +  you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.jai;
-
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
-import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
-import org.slf4j.Logger;
-
-public class TestInterpolation {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestInterpolation.class, getWebAppRootKey());
-
-	@Test
-	public void testInterpolate() {
-		try {
-
-//			GeomPoint p1 = new Point(-60,-100);
-//			GeomPoint p2 = new Point(20, 50);
-//
-//			//double[] samples = {-100,-50};
-//
-//			GeomPoint gPoint = GeomPoint.interpolate(p1, p2, new Float(0.5));
-//
-//			log.debug("Interpolated: "+gPoint);
-//
-//
-//			GeomPoint p3 = new GeomPoint();
-//			p3.setLocation(-2,4);
-//			//p3.setLocation(3,4);
-//			p3.normalize(10);
-//			//GeomPoint
-//
-//
-//			p3.setLocation(2,-4);
-//			//p3.setLocation(3,4);
-//			p3.normalize(10);
-//
-		} catch (Exception er) {
-			log.error("ERROR ", er);
-		}
-	}
-
-
-}
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestKeyCodesNumber.java b/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestKeyCodesNumber.java
index 40850b1..14e1a9b 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestKeyCodesNumber.java
+++ b/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestKeyCodesNumber.java
@@ -18,16 +18,14 @@
  */
 package org.apache.openmeetings.rdc;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.awt.event.KeyEvent;
 
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TestKeyCodesNumber {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestKeyCodesNumber.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestKeyCodesNumber.class);
 
 	@Test
 	public void testKeyCodes() {
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestReadKeyCodesNumber.java b/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestReadKeyCodesNumber.java
index d09567d..572cff7 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestReadKeyCodesNumber.java
+++ b/openmeetings-core/src/test/java/org/apache/openmeetings/rdc/TestReadKeyCodesNumber.java
@@ -18,14 +18,12 @@
  */
 package org.apache.openmeetings.rdc;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TestReadKeyCodesNumber {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestReadKeyCodesNumber.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestReadKeyCodesNumber.class);
 
 	@Test
 	public void testTestKeyCodesNumber() {
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/LoadTestRtmpClient.java b/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/LoadTestRtmpClient.java
deleted file mode 100644
index 2a4d4df..0000000
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/LoadTestRtmpClient.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") +  you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.rtmp;
-
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Map.Entry;
-
-import org.red5.client.net.rtmp.ClientExceptionHandler;
-import org.red5.client.net.rtmp.INetStreamEventHandler;
-import org.red5.client.net.rtmp.RTMPClient;
-import org.red5.server.api.service.IPendingServiceCall;
-import org.red5.server.api.service.IPendingServiceCallback;
-import org.red5.server.net.rtmp.event.Notify;
-
-public class LoadTestRtmpClient extends RTMPClient implements IPendingServiceCallback, INetStreamEventHandler, ClientExceptionHandler {
-	private static class CallObject {
-		Date started;
-		Date ended;
-
-		public CallObject(Date started) {
-			super();
-			this.started = started;
-		}
-
-		public Date getStarted() {
-			return started;
-		}
-
-		public Date getEnded() {
-			return ended;
-		}
-
-		public void setEnded(Date ended) {
-			this.ended = ended;
-		}
-	}
-
-	private int counterCalls = 0; // a call is always 2 steps
-	private Map<Integer, CallObject> calls = new HashMap<>();
-	private boolean isConnected = false;
-	private final int instanceId;
-
-	public LoadTestRtmpClient(int instanceId) {
-		this.instanceId = instanceId;
-	}
-
-	public boolean performCall() {
-		// System.err.println("performCall " + isConnected);
-
-		if (!isConnected) {
-			return false;
-		}
-
-		if (counterCalls % 2 == 0) {
-
-			if (counterCalls > 10) {
-
-				return true;
-
-			}
-
-			System.err.println("Rest o do new call " + counterCalls);
-			counterCalls++;
-
-			Map<String, Integer> map = new HashMap<>();
-			map.put("instanceId", instanceId);
-			map.put("count", counterCalls);
-			calls.put(counterCalls, new CallObject(new Date()));
-			invoke("sendMessageToCurrentScope", new Object[] {"syncMessageToCurrentScopeResult", map, true, false }, this);
-
-		} else {
-			System.err.println("Call running " + counterCalls);
-		}
-		return false;
-	}
-
-	public double getAverageTime() {
-		long overallTime = 0L;
-
-		for (Entry<Integer, CallObject> tCallObjectEntry : calls.entrySet()) {
-
-			long deltaTime = tCallObjectEntry.getValue().getEnded().getTime()
-					- tCallObjectEntry.getValue().getStarted().getTime();
-
-			// System.err.println("Key " + tCallObjectEntry.getKey()
-			// + "deltaTime " + deltaTime);
-
-			overallTime += deltaTime;
-
-		}
-
-		double averageTime = Long.valueOf(overallTime).doubleValue()
-				/ Integer.valueOf(calls.size()).doubleValue();
-
-		return averageTime;
-	}
-
-	@Override
-	public void resultReceived(IPendingServiceCall call) {
-		String method = call == null ? null : call.getServiceMethodName();
-		System.err.println("method "+method);
-		if (method == null) {
-			return;
-		}
-		if ("connect".equals(method)) {
-			isConnected = true;
-		}
-
-		if ("loadTestSyncMessage".equals(method)) {
-
-			CallObject tCallObject = calls.get(counterCalls);
-			if (tCallObject == null) {
-
-				for (Entry<Integer, CallObject> tCallObjectEntry : calls.entrySet()) {
-
-					System.err.println("Key " + tCallObjectEntry.getKey()
-							+ "tCallObjectEntry "
-							+ tCallObjectEntry.getValue().getStarted());
-
-				}
-
-				throw new RuntimeException(
-						"tCallObject is null currentCountReturn "
-								+ counterCalls + " list size "
-								+ calls.size());
-			}
-			tCallObject.setEnded(new Date());
-			calls.put(counterCalls, tCallObject);
-
-			System.err.println("Call received " + counterCalls
-					+ " instanceId: " + instanceId);
-
-			counterCalls++;
-		}
-	}
-
-	@Override
-	public void onStreamEvent(Notify notify) {
-		// no-op
-	}
-
-	public int getNumberOfCalls() {
-		return calls.size();
-	}
-}
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/SimulateLoad.java b/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/SimulateLoad.java
deleted file mode 100644
index 65ba126..0000000
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/SimulateLoad.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") +  you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.rtmp;
-
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
-import org.red5.logging.Red5LoggerFactory;
-import org.slf4j.Logger;
-
-public class SimulateLoad extends Thread {
-	private static final Logger log = Red5LoggerFactory.getLogger(SimulateLoad.class, getWebAppRootKey());
-
-	private LoadTestRtmpClient loadTestRtmpClient;
-	private boolean testRunning = true;
-
-	public double getAverageTime() {
-		return loadTestRtmpClient.getAverageTime();
-	}
-
-	public boolean isTestRunning() {
-		return testRunning;
-	}
-
-	public static void main(String... args) {
-		try {
-			if (args.length != 4) {
-				throw new RuntimeException("4 args needed, host, port, context, instanceId");
-			}
-			for (String arg : args) {
-				System.err.println("arg: " + arg);
-			}
-			SimulateLoad simulateLoad = new SimulateLoad(args[0], Integer
-					.valueOf(args[1]).intValue(), args[2], Integer.valueOf(
-					args[3]).intValue());
-			simulateLoad.start();
-			System.err.println("started ");
-
-		} catch (Exception er) {
-			log.error("Error", er);
-		}
-	}
-
-	public SimulateLoad(String host, int port, String applicationContext,
-			int instanceId) {
-		super();
-
-		loadTestRtmpClient = new LoadTestRtmpClient(instanceId);
-		loadTestRtmpClient.connect(host, port, applicationContext,
-				loadTestRtmpClient);
-	}
-
-	@Override
-	public void run() {
-		try {
-
-			System.err.println("######### start client");
-
-			while (testRunning) {
-				testRunning = !loadTestRtmpClient.performCall();
-				try {
-					Thread.sleep(200);
-				} catch (InterruptedException e) {
-					log.error("Error", e);
-				}
-			}
-
-		} catch (Exception e) {
-			log.error("Error", e);
-		}
-	}
-
-	public int getNumberOfCalls() {
-		return loadTestRtmpClient.getNumberOfCalls();
-	}
-
-}
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/SimulateLoadTest.java b/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/SimulateLoadTest.java
deleted file mode 100644
index 2ebd2c7..0000000
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/rtmp/SimulateLoadTest.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") +  you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.rtmp;
-
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
-import org.slf4j.Logger;
-
-public class SimulateLoadTest {
-	private static final Logger log = Red5LoggerFactory.getLogger(SimulateLoadTest.class, getWebAppRootKey());
-	private int numberOfClients = 25;
-	private List<SimulateLoad> simulateLoadList = new ArrayList<>();
-
-	private String host = "192.168.1.7";
-	private final int port = 1935;
-	private final String applicationContext = "openmeetings/1";
-
-	public SimulateLoadTest(String host, int numberOfClients) {
-		this.host = host;
-		this.numberOfClients = numberOfClients;
-	}
-
-	public static void main(String... args) {
-		if (args.length != 2) {
-			return;
-		}
-		SimulateLoadTest simulateLoadTest = new SimulateLoadTest(args[0],
-				Integer.valueOf(args[1]).intValue());
-		simulateLoadTest.test();
-	}
-
-
-	@Test
-	public void test() {
-		try {
-			for (int i = 0; i < numberOfClients; i++) {
-				SimulateLoad simulateLoad = new SimulateLoad(host, port,
-						applicationContext, i);
-				simulateLoadList.add(simulateLoad);
-				Thread.sleep(100);
-			}
-
-			log.error("Clients initialized");
-
-			for (SimulateLoad simulateLoad : simulateLoadList) {
-				simulateLoad.start();
-				Thread.sleep(50);
-			}
-
-			log.error("Clients started");
-
-			boolean running = true;
-			while (running) {
-				boolean doRunStill = false;
-				for (SimulateLoad simulateLoad : simulateLoadList) {
-					if (simulateLoad.isTestRunning()) {
-						doRunStill = true;
-						break;
-					}
-				}
-				running = doRunStill;
-				try {
-					Thread.sleep(200);
-				} catch (InterruptedException e) {
-					log.error("Error", e);
-				}
-			}
-
-			double overallTime = 0;
-
-			for (SimulateLoad simulateLoad : simulateLoadList) {
-				overallTime += simulateLoad.getAverageTime();
-				log.error("Number of calls: "
-						+ simulateLoad.getNumberOfCalls() + "overallTime: "
-						+ overallTime + " averageTime"
-						+ simulateLoad.getAverageTime());
-			}
-
-			double deltaAllClients = overallTime
-					/ Integer.valueOf(simulateLoadList.size()).doubleValue();
-
-			log.error("Average time per call: " + deltaAllClients);
-
-		} catch (Exception err) {
-			log.error("Error", err);
-		}
-
-	}
-
-}
diff --git a/openmeetings-core/src/test/java/org/apache/openmeetings/user/TestMailSending.java b/openmeetings-core/src/test/java/org/apache/openmeetings/user/TestMailSending.java
index c8077f4..e0e159c 100644
--- a/openmeetings-core/src/test/java/org/apache/openmeetings/user/TestMailSending.java
+++ b/openmeetings-core/src/test/java/org/apache/openmeetings/user/TestMailSending.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.user;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertTrue;
 
 import javax.mail.Message;
@@ -28,8 +27,8 @@ import javax.mail.internet.MimeMessage;
 
 import org.apache.openmeetings.core.mail.MailHandler;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  *
@@ -37,7 +36,7 @@ import org.slf4j.Logger;
  *
  */
 public class TestMailSending {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestMailSending.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestMailSending.class);
 
 	//Example GMail email server data
 	private String smtpServer = "smtp.gmail.com";
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 c370666..b3adf95 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
@@ -58,7 +58,6 @@ 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.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.setAudioBitrate;
@@ -102,8 +101,8 @@ import org.apache.openmeetings.util.OmFileHelper;
 import org.apache.openmeetings.util.OpenmeetingsVariables;
 import org.apache.openmeetings.util.crypt.CryptProvider;
 import org.apache.wicket.Application;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -127,7 +126,7 @@ import com.github.openjson.JSONObject;
 @Repository
 @Transactional
 public class ConfigurationDao implements IDataProviderDao<Configuration> {
-	private static final Logger log = Red5LoggerFactory.getLogger(ConfigurationDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ConfigurationDao.class);
 	private static final String[] searchFields = {"key", "value"};
 
 	@PersistenceContext
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
index 2b905e4..fea70b1 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.db.dao.calendar;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_CALENDAR_ROOM_CAPACITY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.ArrayList;
 import java.util.Calendar;
@@ -42,8 +41,8 @@ import org.apache.openmeetings.db.entity.calendar.Appointment.Reminder;
 import org.apache.openmeetings.db.entity.calendar.MeetingMember;
 import org.apache.openmeetings.db.entity.room.Invitation.MessageType;
 import org.apache.openmeetings.db.entity.room.Room;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -51,7 +50,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class AppointmentDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(AppointmentDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AppointmentDao.class);
 	@PersistenceContext
 	private EntityManager em;
 	@Autowired
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
index 4fe4f0c..481f058 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
@@ -28,15 +26,15 @@ import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.entity.calendar.MeetingMember;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class MeetingMemberDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(MeetingMemberDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MeetingMemberDao.class);
 	@PersistenceContext
 	private EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/BaseFileItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/BaseFileItemDao.java
index 27bfba6..dda4eaf 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/BaseFileItemDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/BaseFileItemDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.file;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Date;
 import java.util.List;
 
@@ -27,15 +25,15 @@ import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.entity.file.BaseFileItem;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class BaseFileItemDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(BaseFileItemDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BaseFileItemDao.class);
 	@PersistenceContext
 	protected EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
index e831a8b..5bd0f42 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.file;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.File;
 import java.util.Collection;
 import java.util.List;
@@ -32,8 +30,8 @@ import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
 import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.db.entity.user.Group;
 import org.apache.openmeetings.util.OmFileHelper;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -44,7 +42,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class FileItemDao extends BaseFileItemDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(FileItemDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(FileItemDao.class);
 
 	public List<FileItem> getByRoom(Long roomId) {
 		log.debug("getByRoom roomId :: " + roomId);
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
index d5b59a5..b90b29b 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.file;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Date;
 import java.util.List;
 
@@ -29,15 +27,15 @@ import javax.persistence.PersistenceContext;
 import org.apache.openmeetings.db.entity.file.BaseFileItem;
 import org.apache.openmeetings.db.entity.file.FileItemLog;
 import org.apache.openmeetings.util.process.ProcessResult;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class FileItemLogDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(FileItemLogDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(FileItemLogDao.class);
 	@PersistenceContext
 	private EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java
index cc559cd..a3412b4 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.db.dao.label;
 
 import static org.apache.openmeetings.db.util.ApplicationHelper._ensureApplication;
 import static org.apache.openmeetings.util.DaoHelper.UNSUPPORTED;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.io.IOException;
@@ -50,8 +49,8 @@ import org.apache.wicket.util.string.Strings;
 import org.dom4j.Document;
 import org.dom4j.Element;
 import org.dom4j.io.SAXReader;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  *
@@ -61,7 +60,7 @@ import org.slf4j.Logger;
  *
  */
 public class LabelDao implements IDataProviderDao<StringLabel>{
-	private static final Logger log = Red5LoggerFactory.getLogger(LabelDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LabelDao.class);
 	private static final String ENTRY_ELEMENT = "entry";
 	private static final String KEY_ATTR = "key";
 	public static final String APP_RESOURCES_EN = "Application.properties.xml";
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
index 6c55732..9262cce 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.log;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Date;
 
 import javax.persistence.EntityManager;
@@ -27,15 +25,15 @@ import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.entity.log.ConferenceLog;
 import org.apache.openmeetings.db.entity.log.ConferenceLog.Type;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class ConferenceLogDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(ConferenceLogDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ConferenceLogDao.class);
 
 	@PersistenceContext
 	private EntityManager em;
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
index 25b3f3a..8c37aa6 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.db.dao.record;
 
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.time.Duration;
 import java.time.Instant;
@@ -37,8 +36,8 @@ import org.apache.openmeetings.db.entity.file.BaseFileItem;
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.record.Recording.Status;
 import org.apache.openmeetings.db.entity.user.GroupUser;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -50,7 +49,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class RecordingDao extends BaseFileItemDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingDao.class);
 
 	@Autowired
 	private UserDao userDao;
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
index 2a84d43..a5f355b 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.record;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Date;
 import java.util.List;
 
@@ -28,8 +26,8 @@ import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.entity.record.RecordingMetaData;
 import org.apache.openmeetings.db.entity.record.RecordingMetaData.Status;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -37,7 +35,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class RecordingMetaDataDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingMetaDataDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingMetaDataDao.class);
 	@PersistenceContext
 	private EntityManager em;
 	@Autowired
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
index 8718f81..f1bf90e 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
@@ -18,16 +18,14 @@
  */
 package org.apache.openmeetings.db.dao.record;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.List;
 
 import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.entity.record.RecordingMetaDelta;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -38,7 +36,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class RecordingMetaDeltaDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingMetaDeltaDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingMetaDeltaDao.class);
 	@PersistenceContext
 	private EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
index 780fe02..1194c06 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.db.dao.room;
 
 import static org.apache.openmeetings.util.CalendarHelper.getZoneId;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.time.LocalDateTime;
 import java.time.ZonedDateTime;
@@ -33,15 +32,15 @@ import javax.persistence.PersistenceContext;
 import org.apache.openmeetings.db.entity.room.Invitation;
 import org.apache.openmeetings.util.CalendarHelper;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class InvitationDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(InvitationDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InvitationDao.class);
 
 	@PersistenceContext
 	private EntityManager em;
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
index 52f931e..b5b6b15 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.db.dao.room;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Date;
 import java.util.List;
@@ -30,15 +29,15 @@ import javax.persistence.Query;
 
 import org.apache.openmeetings.db.entity.room.RoomPoll;
 import org.apache.openmeetings.db.entity.room.RoomPollAnswer;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class PollDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(PollDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(PollDao.class);
 
 	@PersistenceContext
 	private EntityManager em;
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 0300f57..83674a6 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
@@ -22,7 +22,6 @@ import static org.apache.openmeetings.db.util.TimezoneUtil.getTimeZone;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SIP_ROOM_PREFIX;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 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;
@@ -51,8 +50,8 @@ import org.apache.openmeetings.db.entity.room.Room.Type;
 import org.apache.openmeetings.db.entity.room.RoomFile;
 import org.apache.openmeetings.db.entity.room.RoomGroup;
 import org.apache.openmeetings.util.DaoHelper;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -60,7 +59,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class RoomDao implements IGroupAdminDataProviderDao<Room> {
-	private static final Logger log = Red5LoggerFactory.getLogger(RoomDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RoomDao.class);
 	private static final String[] searchFields = {"name"};
 
 	@PersistenceContext
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/SipDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/SipDao.java
index cfa81d4..bdf3f40 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/SipDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/SipDao.java
@@ -33,11 +33,11 @@ import org.asteriskjava.manager.action.ManagerAction;
 import org.asteriskjava.manager.action.OriginateAction;
 import org.asteriskjava.manager.response.ManagerError;
 import org.asteriskjava.manager.response.ManagerResponse;
-import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.LoggerFactory;
 import org.slf4j.Logger;
 
 public class SipDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(SipDao.class);
+	private static final Logger log = LoggerFactory.getLogger(SipDao.class);
 	public static final String ASTERISK_OM_FAMILY = "openmeetings";
 	public static final String ASTERISK_OM_KEY = "rooms";
 	public static final String SIP_FIRST_NAME = "SIP Transport";
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
index 77db419..74df103 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.server;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -33,8 +31,8 @@ import org.apache.openmeetings.db.dao.IDataProviderDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.server.LdapConfig;
 import org.apache.openmeetings.util.DaoHelper;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -49,7 +47,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class LdapConfigDao implements IDataProviderDao<LdapConfig> {
-	private static final Logger log = Red5LoggerFactory.getLogger(LdapConfigDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LdapConfigDao.class);
 	private static final String[] searchFields = {"name", "configFileName", "domain", "comment"};
 
 	@PersistenceContext
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
index 9001a1b..850b2e9 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.server;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Date;
 import java.util.List;
 import java.util.UUID;
@@ -28,15 +26,15 @@ import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.entity.server.SOAPLogin;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class SOAPLoginDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(SOAPLoginDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SOAPLoginDao.class);
 
 	@PersistenceContext
 	private EntityManager em;
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
index b51aae0..d033fb4 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dao.server;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -32,8 +30,8 @@ import javax.persistence.TypedQuery;
 import org.apache.openmeetings.db.entity.room.StreamClient;
 import org.apache.openmeetings.db.entity.server.Sessiondata;
 import org.apache.openmeetings.db.manager.IStreamClientManager;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -46,7 +44,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class SessiondataDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(SessiondataDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SessiondataDao.class);
 	@PersistenceContext
 	private EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
index b4fb916..93e5605 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.db.dao.user;
 import static org.apache.openmeetings.db.entity.user.PrivateMessage.INBOX_FOLDER_ID;
 import static org.apache.openmeetings.util.DaoHelper.UNSUPPORTED;
 import static org.apache.openmeetings.util.DaoHelper.getStringParam;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Collection;
 import java.util.Date;
@@ -36,15 +35,15 @@ import org.apache.openmeetings.db.dao.IDataProviderDao;
 import org.apache.openmeetings.db.entity.user.PrivateMessage;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> {
-	private static final Logger log = Red5LoggerFactory.getLogger(PrivateMessageDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(PrivateMessageDao.class);
 	@PersistenceContext
 	private EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
index 98aa241..e661bbc 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.db.dao.user;
 
 import static org.apache.openmeetings.util.DaoHelper.UNSUPPORTED;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Date;
 import java.util.List;
@@ -29,15 +28,15 @@ import javax.persistence.PersistenceContext;
 
 import org.apache.openmeetings.db.dao.IDataProviderDao;
 import org.apache.openmeetings.db.entity.user.PrivateMessageFolder;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 @Repository
 @Transactional
 public class PrivateMessageFolderDao implements IDataProviderDao<PrivateMessageFolder> {
-	private static final Logger log = Red5LoggerFactory.getLogger(PrivateMessageFolderDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(PrivateMessageFolderDao.class);
 	@PersistenceContext
 	private EntityManager em;
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
index bac4307..88a3c86 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.db.dao.user;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Date;
 import java.util.List;
@@ -29,8 +28,8 @@ import javax.persistence.PersistenceContext;
 import javax.persistence.TypedQuery;
 
 import org.apache.openmeetings.db.entity.user.UserContact;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -38,7 +37,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class UserContactDao {
-	private static final Logger log = Red5LoggerFactory.getLogger(UserContactDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserContactDao.class);
 	@PersistenceContext
 	private EntityManager em;
 	@Autowired
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
index c092bd9..8ccba80 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
@@ -23,7 +23,6 @@ import static org.apache.openmeetings.db.util.UserHelper.getMinLoginLength;
 import static org.apache.openmeetings.util.DaoHelper.getStringParam;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getDefaultLang;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.security.NoSuchAlgorithmException;
 import java.util.ArrayList;
@@ -60,8 +59,8 @@ import org.apache.openmeetings.util.OmException;
 import org.apache.openmeetings.util.crypt.CryptProvider;
 import org.apache.openmeetings.util.crypt.ICrypt;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
@@ -75,7 +74,7 @@ import org.springframework.transaction.annotation.Transactional;
 @Repository
 @Transactional
 public class UserDao implements IGroupAdminDataProviderDao<User> {
-	private static final Logger log = Red5LoggerFactory.getLogger(UserDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserDao.class);
 	private static final String[] searchFields = {"lastname", "firstname", "login", "address.email", "address.town"};
 
 	@PersistenceContext
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java
index 320c028..e24cac9 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dto.room;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.Serializable;
 import java.text.ParseException;
 import java.util.Date;
@@ -36,14 +34,14 @@ import org.apache.openmeetings.db.entity.room.Invitation;
 import org.apache.openmeetings.db.entity.room.Invitation.Valid;
 import org.apache.openmeetings.db.entity.user.User.Type;
 import org.apache.openmeetings.util.crypt.CryptProvider;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 @XmlRootElement
 @XmlAccessorType(XmlAccessType.FIELD)
 public class InvitationDTO implements Serializable {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(InvitationDTO.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InvitationDTO.class);
 	private static final FastDateFormat SDF = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss");
 
 	private String email;
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
index 07fbfad..c85fd58 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.dto.room;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.BufferedWriter;
 import java.io.IOException;
 import java.io.Serializable;
@@ -35,15 +33,15 @@ import java.util.Map.Entry;
 
 import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.util.NullStringer;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
 
 public class Whiteboard implements Serializable {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(Whiteboard.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(Whiteboard.class);
 	public static final String ATTR_TYPE = "type";
 	public static final String ATTR_FILE_ID = "fileId";
 	public static final String ATTR_FILE_TYPE = "fileType";
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
index fe1ac24..1fb0982 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
@@ -18,16 +18,14 @@
  */
 package org.apache.openmeetings.db.dto.user;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.Serializable;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.Map;
 
 import org.apache.openmeetings.db.entity.server.OAuthServer;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONException;
@@ -35,7 +33,7 @@ import com.github.openjson.JSONObject;
 
 public class OAuthUser implements Serializable {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(OAuthUser.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(OAuthUser.class);
 	private final String uid;
 	private String email;
 	private String firstName;
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/server/RemoteSessionObject.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/server/RemoteSessionObject.java
index 4cef503..5e83929 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/server/RemoteSessionObject.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/server/RemoteSessionObject.java
@@ -18,17 +18,15 @@
  */
 package org.apache.openmeetings.db.entity.server;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.StringReader;
 import java.io.StringWriter;
 
-import org.red5.logging.Red5LoggerFactory;
 import org.simpleframework.xml.Element;
 import org.simpleframework.xml.Root;
 import org.simpleframework.xml.Serializer;
 import org.simpleframework.xml.core.Persister;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * This Class is marshaled as an XML-Object and stored as a String in the DB to make
@@ -39,7 +37,7 @@ import org.slf4j.Logger;
  */
 @Root
 public class RemoteSessionObject {
-	private static final Logger log = Red5LoggerFactory.getLogger(RemoteSessionObject.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RemoteSessionObject.class);
 	@Element(required = false)
 	private String username;
 	@Element(required = false)
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java
index 57a7ef5..854c4f4 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/ApplicationHelper.java
@@ -18,9 +18,7 @@
  */
 package org.apache.openmeetings.db.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 import static org.springframework.web.context.WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE;
 import static org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext;
 
@@ -44,11 +42,12 @@ import org.apache.wicket.protocol.http.servlet.ServletWebRequest;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.cycle.RequestCycleContext;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.web.context.WebApplicationContext;
 import org.springframework.web.context.support.XmlWebApplicationContext;
 
 public class ApplicationHelper {
-	private static final Logger log = getLogger(ApplicationHelper.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ApplicationHelper.class);
 	private static final Object SYNC_OBJ = new Object();
 
 	private ApplicationHelper() {}
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/AuthLevelUtil.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/AuthLevelUtil.java
index bc9a979..c20bdb3 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/AuthLevelUtil.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/AuthLevelUtil.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.HashSet;
 import java.util.Set;
 
@@ -29,11 +27,11 @@ import org.apache.openmeetings.db.entity.room.RoomGroup;
 import org.apache.openmeetings.db.entity.room.RoomModerator;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class AuthLevelUtil {
-	private static final Logger log = Red5LoggerFactory.getLogger(AuthLevelUtil.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AuthLevelUtil.class);
 
 	private AuthLevelUtil() {}
 
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java
index 92ad78b..d215903 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.db.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.List;
@@ -28,11 +26,11 @@ import java.util.Set;
 
 import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.entity.user.User;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class LocaleHelper {
-	private static final Logger log = Red5LoggerFactory.getLogger(LocaleHelper.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LocaleHelper.class);
 
 	private LocaleHelper() {}
 
diff --git a/openmeetings-install/pom.xml b/openmeetings-install/pom.xml
index c82c172..6e9fd9d 100644
--- a/openmeetings-install/pom.xml
+++ b/openmeetings-install/pom.xml
@@ -36,7 +36,7 @@
 	<dependencies>
 		<dependency>
 			<groupId>org.springframework</groupId>
-			<artifactId>spring-core</artifactId>
+			<artifactId>spring-context-support</artifactId>
 		</dependency>
 		<dependency>
 			<groupId>org.apache.openmeetings</groupId>
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
index 45e09ac..9fdd2d5 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
@@ -27,7 +27,6 @@ import static org.apache.openmeetings.util.OmFileHelper.IMPORT_DIR;
 import static org.apache.openmeetings.util.OmFileHelper.getCustomCss;
 import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
 import static org.apache.openmeetings.util.OmFileHelper.getUploadDir;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.ByteArrayOutputStream;
 import java.io.File;
@@ -89,7 +88,6 @@ import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.User.Salutation;
 import org.apache.openmeetings.installation.ImportInitvalues;
 import org.apache.openmeetings.installation.InstallationConfig;
-import org.red5.logging.Red5LoggerFactory;
 import org.simpleframework.xml.Serializer;
 import org.simpleframework.xml.convert.Registry;
 import org.simpleframework.xml.convert.RegistryStrategy;
@@ -99,6 +97,7 @@ import org.simpleframework.xml.stream.Format;
 import org.simpleframework.xml.stream.NodeBuilder;
 import org.simpleframework.xml.stream.OutputNode;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -109,7 +108,7 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class BackupExport {
-	private static final Logger log = Red5LoggerFactory.getLogger(BackupExport.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BackupExport.class);
 	private static final String BACKUP_COMMENT =
 			"###############################################\n"
 			+ "This File is auto-generated by the Backup Tool \n"
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
index e1e0800..a3572be 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
@@ -99,7 +99,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_TIM
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_TLS;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_USER;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getDefaultTimezone;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -179,7 +178,6 @@ import org.apache.openmeetings.util.OmFileHelper;
 import org.apache.openmeetings.util.StoredFile;
 import org.apache.openmeetings.util.crypt.SCryptImplementation;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.simpleframework.xml.Serializer;
 import org.simpleframework.xml.convert.Registry;
 import org.simpleframework.xml.convert.RegistryStrategy;
@@ -189,12 +187,13 @@ import org.simpleframework.xml.stream.InputNode;
 import org.simpleframework.xml.stream.NodeBuilder;
 import org.simpleframework.xml.transform.RegistryMatcher;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class BackupImport {
-	private static final Logger log = Red5LoggerFactory.getLogger(BackupImport.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BackupImport.class);
 	private static final String LDAP_EXT_TYPE = "LDAP";
 	private static final Map<String, String> outdatedConfigKeys = new HashMap<>();
 	private static final Map<String, Configuration.Type> configTypes = new HashMap<>();
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/RecordingStatusConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/RecordingStatusConverter.java
index de41999..e974f44 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/RecordingStatusConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/RecordingStatusConverter.java
@@ -18,18 +18,16 @@
  */
 package org.apache.openmeetings.backup.converter;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.record.Recording.Status;
-import org.red5.logging.Red5LoggerFactory;
 import org.simpleframework.xml.convert.Converter;
 import org.simpleframework.xml.stream.InputNode;
 import org.simpleframework.xml.stream.OutputNode;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class RecordingStatusConverter implements Converter<Recording.Status> {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingStatusConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingStatusConverter.class);
 	private static final String PROCESSING = "PROCESSING";
 
 	@Override
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
index d2b6025..d4d6eff 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
@@ -25,7 +25,6 @@ import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_FILE_TYPE;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_SLIDE;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_TYPE;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_WML;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -44,8 +43,8 @@ import org.apache.openmeetings.db.dto.room.Whiteboard;
 import org.apache.openmeetings.db.entity.file.BaseFileItem;
 import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.util.OmFileHelper;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
@@ -53,7 +52,7 @@ import com.thoughtworks.xstream.XStream;
 import com.thoughtworks.xstream.io.xml.XppDriver;
 
 public class WbConverter {
-	private static final Logger log = Red5LoggerFactory.getLogger(WbConverter.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(WbConverter.class);
 	private static final String ATTR_STROKE = "strokeWidth";
 	private static final String ATTR_OPACITY = "opacity";
 	private static final String TYPE_IMAGE = "image";
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
index 6d21419..7fc0537 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
@@ -71,13 +71,13 @@ import org.apache.openmeetings.util.OmFileHelper;
 import org.apache.openmeetings.util.mail.MailUtil;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.Validatable;
-import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.LoggerFactory;
 import org.slf4j.Logger;
 import org.springframework.scheduling.quartz.SchedulerFactoryBean;
 import org.springframework.web.context.WebApplicationContext;
 
 public class Admin {
-	private static final Logger _log = Red5LoggerFactory.getLogger(Admin.class);
+	private static final Logger _log = LoggerFactory.getLogger(Admin.class);
 	private static final String OPTION_DB_TYPE = "db-type";
 	private static final String OPTION_DB_HOST = "db-host";
 	private static final String OPTION_DB_PORT = "db-port";
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
index 646f8d5..963a415 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
@@ -34,11 +34,11 @@ import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.util.OmFileHelper;
-import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.LoggerFactory;
 import org.slf4j.Logger;
 
 public class CleanupHelper {
-	private static final Logger log = Red5LoggerFactory.getLogger(CleanupHelper.class);
+	private static final Logger log = LoggerFactory.getLogger(CleanupHelper.class);
 	private static File hibernateDir = OmFileHelper.getStreamsHibernateDir();
 
 	private CleanupHelper() {}
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
index cc66f0c..be0d15b 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
@@ -95,7 +95,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.USER_PASSWORD_M
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getAudioBitrate;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getAudioRate;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getExtProcessTtl;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -119,14 +118,14 @@ import org.apache.openmeetings.db.entity.user.Group;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.User.Right;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class ImportInitvalues {
-	private static final Logger log = Red5LoggerFactory.getLogger(ImportInitvalues.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ImportInitvalues.class);
 	private static final String VER_1_8 = "1.8.x";
 	private static final String VER_1_9 = "1.9.x";
 	private static final String VER_2_0 = "2.0.x";
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
index 6fbaa61..ce6805c 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
@@ -22,7 +22,6 @@ import static org.apache.openmeetings.db.util.TimezoneUtil.getTimeZone;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_APPOINTMENT_REMINDER_MINUTES;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.DEFAULT_MINUTES_REMINDER_SEND;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Calendar;
 import java.util.List;
@@ -36,14 +35,14 @@ import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.calendar.MeetingMember;
 import org.apache.openmeetings.db.entity.room.Invitation;
 import org.apache.openmeetings.db.entity.user.User;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 @Component
 public class AppointmentLogic {
-	private static final Logger log = Red5LoggerFactory.getLogger(AppointmentLogic.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AppointmentLogic.class);
 
 	@Autowired
 	private AppointmentDao appointmentDao;
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java
index a47b435..8d8db38 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.service.calendar.caldav;
 
 import static javax.servlet.http.HttpServletResponse.SC_NO_CONTENT;
 import static javax.servlet.http.HttpServletResponse.SC_OK;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 import java.net.URI;
@@ -55,8 +54,8 @@ import org.apache.openmeetings.service.calendar.caldav.handler.EtagsHandler;
 import org.apache.openmeetings.service.calendar.caldav.handler.WebDAVSyncHandler;
 import org.apache.wicket.util.string.Strings;
 import org.osaf.caldav4j.CalDAVConstants;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.w3c.dom.Element;
@@ -67,7 +66,7 @@ import org.w3c.dom.Element;
  */
 @Component
 public class AppointmentManager {
-	private static final Logger log = Red5LoggerFactory.getLogger(AppointmentManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AppointmentManager.class);
 
 	//HttpClient and ConnectionManager Params
 	private static final int IDLE_CONNECTION_TIMEOUT = 30000; // 30 seconds
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/IcalUtils.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/IcalUtils.java
index 25935f1..392b40a 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/IcalUtils.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/IcalUtils.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.service.calendar.caldav;
 
 import static org.apache.openmeetings.db.util.TimezoneUtil.getTimeZone;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.net.URI;
 import java.text.ParsePosition;
@@ -40,8 +39,8 @@ import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.wicket.protocol.http.WebSession;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import net.fortuna.ical4j.model.Calendar;
@@ -76,7 +75,7 @@ import net.fortuna.ical4j.model.property.Version;
  */
 @org.springframework.stereotype.Component
 public class IcalUtils {
-	private static final Logger log = Red5LoggerFactory.getLogger(IcalUtils.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(IcalUtils.class);
 	public static final String PROD_ID = "-//Events Calendar//Apache Openmeetings//EN";
 
 	@Autowired
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/AbstractCalendarHandler.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/AbstractCalendarHandler.java
index b459628..a3a39d1 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/AbstractCalendarHandler.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/AbstractCalendarHandler.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.service.calendar.caldav.handler;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.IOException;
 import java.util.HashMap;
 import java.util.List;
@@ -32,14 +30,14 @@ import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.calendar.OmCalendar;
 import org.apache.openmeetings.service.calendar.caldav.IcalUtils;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Abstract Class which contains all the common code for all Handlers.
  */
 public abstract class AbstractCalendarHandler implements CalendarHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(AbstractCalendarHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AbstractCalendarHandler.class);
 
 	protected HttpClient client;
 	protected OmCalendar calendar;
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/CtagHandler.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/CtagHandler.java
index fd3dfbb..ac0453e 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/CtagHandler.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/CtagHandler.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.service.calendar.caldav.handler;
 
 import static javax.servlet.http.HttpServletResponse.SC_OK;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 
@@ -38,8 +37,8 @@ import org.apache.openmeetings.service.calendar.caldav.AppointmentManager;
 import org.apache.openmeetings.service.calendar.caldav.IcalUtils;
 import org.osaf.caldav4j.CalDAVConstants;
 import org.osaf.caldav4j.methods.PropFindMethod;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Class for Syncing through the help of Ctags.
@@ -49,7 +48,7 @@ import org.slf4j.Logger;
  * @see CalendarHandler
  */
 public class CtagHandler extends AbstractCalendarHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(CtagHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(CtagHandler.class);
 
 	public static final Namespace NAMESPACE_CALSERVER = Namespace.getNamespace("cs", "http://calendarserver.org/ns/");
 	public static final DavPropertyName DNAME_GETCTAG = DavPropertyName.create("getctag", NAMESPACE_CALSERVER);
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/EtagsHandler.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/EtagsHandler.java
index 8142551..fceea13 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/EtagsHandler.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/EtagsHandler.java
@@ -22,7 +22,6 @@ import static javax.servlet.http.HttpServletResponse.SC_CREATED;
 import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
 import static javax.servlet.http.HttpServletResponse.SC_NO_CONTENT;
 import static javax.servlet.http.HttpServletResponse.SC_OK;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -52,8 +51,8 @@ import org.osaf.caldav4j.model.request.CalendarQuery;
 import org.osaf.caldav4j.model.request.CompFilter;
 import org.osaf.caldav4j.model.response.CalendarDataProperty;
 import org.osaf.caldav4j.util.UrlUtils;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import net.fortuna.ical4j.data.CalendarOutputter;
 import net.fortuna.ical4j.model.Calendar;
@@ -72,7 +71,7 @@ import net.fortuna.ical4j.model.Component;
  * </ul>
  */
 public class EtagsHandler extends AbstractCalendarHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(EtagsHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(EtagsHandler.class);
 
 	public EtagsHandler(String path, OmCalendar calendar, HttpClient client, AppointmentDao appointmentDao, IcalUtils utils) {
 		super(path, calendar, client, appointmentDao, utils);
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/MultigetHandler.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/MultigetHandler.java
index 99e3ce3..752eb98 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/MultigetHandler.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/MultigetHandler.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.service.calendar.caldav.handler;
 
 import static javax.servlet.http.HttpServletResponse.SC_OK;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 import java.util.List;
@@ -42,8 +41,8 @@ import org.osaf.caldav4j.model.request.CalendarData;
 import org.osaf.caldav4j.model.request.CalendarMultiget;
 import org.osaf.caldav4j.model.request.CompFilter;
 import org.osaf.caldav4j.model.response.CalendarDataProperty;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import net.fortuna.ical4j.model.Calendar;
 import net.fortuna.ical4j.model.Component;
@@ -56,7 +55,7 @@ import net.fortuna.ical4j.model.Component;
  * @see CalendarHandler
  */
 public class MultigetHandler extends AbstractCalendarHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(MultigetHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MultigetHandler.class);
 
 	private CalendarMultiget query;
 	private boolean isMultigetDisabled = false, onlyEtag = false;
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/WebDAVSyncHandler.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/WebDAVSyncHandler.java
index 3dde420..274bc48 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/WebDAVSyncHandler.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/handler/WebDAVSyncHandler.java
@@ -24,7 +24,6 @@ import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
 import static javax.servlet.http.HttpServletResponse.SC_OK;
 import static javax.servlet.http.HttpServletResponse.SC_PRECONDITION_FAILED;
 import static org.apache.jackrabbit.webdav.DavServletResponse.SC_INSUFFICIENT_SPACE_ON_RESOURCE;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -44,8 +43,8 @@ import org.apache.openmeetings.service.calendar.caldav.IcalUtils;
 import org.apache.openmeetings.service.calendar.caldav.methods.SyncMethod;
 import org.apache.openmeetings.service.calendar.caldav.methods.SyncReportInfo;
 import org.osaf.caldav4j.model.response.CalendarDataProperty;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Class used to sync events using WebDAV-Sync defined in RFC 6578.
@@ -54,7 +53,7 @@ import org.slf4j.Logger;
  * modified or deleted.
  */
 public class WebDAVSyncHandler extends AbstractCalendarHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(WebDAVSyncHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(WebDAVSyncHandler.class);
 
 	public static final DavPropertyName DNAME_SYNCTOKEN = DavPropertyName.create(SyncReportInfo.XML_SYNC_TOKEN,
 			SyncReportInfo.NAMESPACE);
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/methods/SyncMethod.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/methods/SyncMethod.java
index 43e1241..696c2c9 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/methods/SyncMethod.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/methods/SyncMethod.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.service.calendar.caldav.methods;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.IOException;
 
 import org.apache.commons.httpclient.HttpConnection;
@@ -33,8 +31,8 @@ import org.apache.jackrabbit.webdav.client.methods.DavMethodBase;
 import org.apache.jackrabbit.webdav.client.methods.ReportMethod;
 import org.apache.jackrabbit.webdav.header.DepthHeader;
 import org.apache.jackrabbit.webdav.xml.DomUtil;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.w3c.dom.Document;
 
 /**
@@ -43,7 +41,7 @@ import org.w3c.dom.Document;
  * @see SyncReportInfo for Request Report to be given as argument
  */
 public class SyncMethod extends DavMethodBase {
-	private static final Logger log = Red5LoggerFactory.getLogger(ReportMethod.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ReportMethod.class);
 
 	private MultiStatus multiStatus = null;
 	private String synctoken = null;
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
index d16b5c6..b64dd84 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.service.mail;
 import static org.apache.openmeetings.db.util.ApplicationHelper.ensureApplication;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_AT_REGISTER;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getDefaultLang;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName;
 
 import org.apache.openmeetings.IApplication;
@@ -30,8 +29,8 @@ import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.service.mail.template.RegisterUserTemplate;
 import org.apache.wicket.Application;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -41,7 +40,7 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class EmailManager {
-	private static final Logger log = Red5LoggerFactory.getLogger(EmailManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(EmailManager.class);
 
 	@Autowired
 	private ConfigurationDao cfgDao;
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java
index 514648e..49f81f0 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.service.notifier;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REMINDER_MESSAGE;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import javax.annotation.PostConstruct;
 
@@ -31,15 +30,15 @@ import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.room.Invitation;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.task.TaskExecutor;
 import org.springframework.stereotype.Component;
 
 @Component
 public class TextNotifier implements INotifier {
-	private static final Logger log = Red5LoggerFactory.getLogger(TextNotifier.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TextNotifier.class);
 	@Autowired
 	private NotifierService notifier;
 	@Autowired
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/AbstractJob.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/AbstractJob.java
index 024b4d0..f1b641b 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/AbstractJob.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/AbstractJob.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.service.quartz.scheduler;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.isInitComplete;
 
 import java.time.Instant;
@@ -29,12 +28,12 @@ import org.apache.openmeetings.db.dao.record.RecordingDao;
 import org.apache.openmeetings.db.dao.user.GroupDao;
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.user.Group;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public abstract class AbstractJob {
-	private static Logger log = Red5LoggerFactory.getLogger(AbstractJob.class, getWebAppRootKey());
+	private static Logger log = LoggerFactory.getLogger(AbstractJob.class);
 	@Autowired
 	private GroupDao groupDao;
 	@Autowired
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/CleanupJob.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/CleanupJob.java
index 33b34b1..5f69d1b 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/CleanupJob.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/CleanupJob.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.service.quartz.scheduler;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
 import static org.apache.openmeetings.util.OmFileHelper.TEST_SETUP_PREFIX;
 import static org.apache.openmeetings.util.OmFileHelper.getStreamsDir;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.isInitComplete;
 
 import java.io.File;
@@ -37,12 +36,12 @@ import org.apache.openmeetings.db.dto.room.Whiteboards;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.manager.IStreamClientManager;
 import org.apache.openmeetings.db.manager.IWhiteboardManager;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class CleanupJob extends AbstractJob {
-	private static Logger log = Red5LoggerFactory.getLogger(CleanupJob.class, getWebAppRootKey());
+	private static Logger log = LoggerFactory.getLogger(CleanupJob.class);
 	private long sessionTimeout = 30 * 60 * 1000L;
 	private long testSetupTimeout = 60 * 60 * 1000L; // 1 hour
 	private long roomFilesTtl = 60 * 60 * 1000L; // 1 hour
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
index bb9f38c..980ce88 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
@@ -24,7 +24,6 @@ import static org.apache.openmeetings.core.rss.LoadAtomRssFeed.setRss;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_RSS_FEED1;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_RSS_FEED2;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_RSS;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.isInitComplete;
 
 import java.io.IOException;
@@ -43,8 +42,8 @@ import org.dom4j.Document;
 import org.dom4j.DocumentException;
 import org.dom4j.Element;
 import org.dom4j.io.SAXReader;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -53,7 +52,7 @@ import com.github.openjson.JSONObject;
 
 @Component("reminderJob")
 public class ReminderJob extends AbstractJob {
-	private static Logger log = Red5LoggerFactory.getLogger(ReminderJob.class, getWebAppRootKey());
+	private static Logger log = LoggerFactory.getLogger(ReminderJob.class);
 	private static final int MAX_ITEM_COUNT = 5;
 	@Autowired
 	private AppointmentLogic appointmentLogic;
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
index 30c8d3c..0a36b8d 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.service.room;
 
 import static org.apache.openmeetings.db.util.ApplicationHelper.ensureApplication;
 import static org.apache.openmeetings.db.util.TimezoneUtil.getTimeZone;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -51,8 +50,8 @@ import org.apache.openmeetings.service.mail.template.subject.UpdatedAppointmentT
 import org.apache.openmeetings.util.crypt.CryptProvider;
 import org.apache.openmeetings.util.mail.IcalHandler;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -63,7 +62,7 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class InvitationManager implements IInvitationManager {
-	private static final Logger log = Red5LoggerFactory.getLogger(InvitationManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InvitationManager.class);
 
 	@Autowired
 	private InvitationDao invitationDao;
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 057e364..7248fac 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
@@ -21,23 +21,19 @@ package org.apache.openmeetings.service.user;
 import static org.apache.openmeetings.db.util.TimezoneUtil.getTimeZone;
 import static org.apache.openmeetings.db.util.UserHelper.getMinLoginLength;
 import static org.apache.openmeetings.util.OmException.UNKNOWN;
-import static org.apache.openmeetings.util.OmFileHelper.HIBERNATE;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_GROUP_ID;
 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.getDefaultLang;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.IOException;
 import java.security.NoSuchAlgorithmException;
 import java.security.SecureRandom;
 import java.util.Arrays;
 import java.util.Date;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
-import java.util.Map;
 import java.util.Set;
 import java.util.TimeZone;
 import java.util.UUID;
@@ -51,7 +47,6 @@ import org.apache.openmeetings.db.dao.user.GroupDao;
 import org.apache.openmeetings.db.dao.user.IUserManager;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.dto.user.OAuthUser;
-import org.apache.openmeetings.db.entity.room.StreamClient;
 import org.apache.openmeetings.db.entity.user.Address;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
@@ -62,9 +57,8 @@ import org.apache.openmeetings.db.manager.IStreamClientManager;
 import org.apache.openmeetings.service.mail.EmailManager;
 import org.apache.openmeetings.util.OmException;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.api.scope.IScope;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -75,7 +69,7 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class UserManager implements IUserManager {
-	private static final Logger log = Red5LoggerFactory.getLogger(UserManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserManager.class);
 
 	@Autowired
 	private SessiondataDao sessionDao;
@@ -279,6 +273,7 @@ public class UserManager implements IUserManager {
 	 */
 	@Override
 	public boolean kickUsersByRoomId(Long roomId) {
+		/*
 		try {
 			sessionDao.clearSessionByRoomId(roomId);
 
@@ -298,11 +293,13 @@ public class UserManager implements IUserManager {
 		} catch (Exception err) {
 			log.error("[kickUsersByRoomId]", err);
 		}
+		*/
 		return false;
 	}
 
 	@Override
 	public boolean kickById(String uid) {
+		/*
 		try {
 			StreamClient rcl = streamClientManager.get(uid);
 
@@ -327,6 +324,7 @@ public class UserManager implements IUserManager {
 		} catch (Exception err) {
 			log.error("[kickById]", err);
 		}
+		*/
 		return false;
 	}
 
diff --git a/openmeetings-util/pom.xml b/openmeetings-util/pom.xml
index 55e5125..8ce63dd 100644
--- a/openmeetings-util/pom.xml
+++ b/openmeetings-util/pom.xml
@@ -79,10 +79,6 @@
 	</profiles>
 	<dependencies>
 		<dependency>
-			<groupId>org.red5</groupId>
-			<artifactId>red5-server</artifactId>
-		</dependency>
-		<dependency>
 			<groupId>org.dom4j</groupId>
 			<artifactId>dom4j</artifactId>
 			<version>${dom4j.version}</version>
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/CalendarPatterns.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/CalendarPatterns.java
index a4ffba3..caf2273 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/CalendarPatterns.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/CalendarPatterns.java
@@ -18,22 +18,20 @@
  */
 package org.apache.openmeetings.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.text.ParseException;
 import java.util.Date;
 import java.util.TimeZone;
 
 import org.apache.commons.lang3.time.FastDateFormat;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * @author Sebastian Wagner 27.08.2005 - 19:24:25
  *
  */
 public class CalendarPatterns {
-	private static final Logger log = Red5LoggerFactory.getLogger(CalendarPatterns.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(CalendarPatterns.class);
 
 	public static final FastDateFormat dateFormat__ddMMyyyyHHmmss = FastDateFormat.getInstance("dd.MM.yyyy HH:mm:ss");
 	public static final FastDateFormat dateFormat__ddMMyyyy = FastDateFormat.getInstance("dd.MM.yyyy");
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
index 0f944af..d6bd72e 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OMContextListener.java
@@ -18,22 +18,16 @@
  */
 package org.apache.openmeetings.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.setWebAppRootKey;
-
 import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
 
-import org.red5.logging.ContextLoggingListener;
-
-public class OMContextListener extends ContextLoggingListener {
+public class OMContextListener implements ServletContextListener {
 
 	@Override
 	public void contextInitialized(ServletContextEvent event) {
-		setWebAppRootKey(pathToName(event));
-		System.setProperty("current_openmeetings_context_name", getWebAppRootKey());
-		System.setProperty("webapp.contextPath", String.format("/%s", getWebAppRootKey()));
+		System.setProperty("current_openmeetings_context_name", pathToName(event));
+		System.setProperty("webapp.contextPath", String.format("/%s"));
 		System.setProperty("logback.configurationFile", "logback-config.xml");
-		super.contextInitialized(event);
 	}
 
 	private static String pathToName(ServletContextEvent event) {
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 b17fbcd..d7643f8 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
@@ -115,7 +115,6 @@ public class OpenmeetingsVariables {
 	public static final int DEFAULT_MINUTES_REMINDER_SEND = 15;
 	public static final String DEFAULT_BASE_URL = "http://localhost:5080/openmeetings/";
 
-	private static String webAppRootKey = null;
 	private static String cryptClassName = null;
 	private static String wicketApplicationName = null;
 	private static String applicationName = null;
@@ -182,14 +181,6 @@ public class OpenmeetingsVariables {
 		wicketApplicationName = name;
 	}
 
-	public static String getWebAppRootKey() {
-		return webAppRootKey;
-	}
-
-	public static void setWebAppRootKey(String key) {
-		webAppRootKey = key;
-	}
-
 	/**
 	 *
 	 * @return returns the max upload size configured by max_upload_size config key
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java
index 6a7b3dc..1de8713 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/StoredFile.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.util;
 import static org.apache.openmeetings.util.OmFileHelper.FILE_NAME_FMT;
 import static org.apache.openmeetings.util.OmFileHelper.JPG_MIME_TYPE;
 import static org.apache.openmeetings.util.OmFileHelper.getFileExt;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.tika.metadata.TikaMetadataKeys.RESOURCE_NAME_KEY;
 import static org.apache.tika.mime.MediaType.application;
 
@@ -40,11 +39,11 @@ import org.apache.tika.io.TikaInputStream;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.mime.MediaType;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class StoredFile {
-	private static final Logger log = Red5LoggerFactory.getLogger(StoredFile.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(StoredFile.class);
 	private static final String MIME_AUDIO = "audio";
 	private static final String MIME_VIDEO = "video";
 	private static final String MIME_IMAGE = "image";
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/Version.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/Version.java
index 000bdb6..cb23636 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/Version.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/Version.java
@@ -21,11 +21,11 @@ package org.apache.openmeetings.util;
 import java.io.InputStream;
 import java.util.Properties;
 
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class Version {
-	private static final Logger log = Red5LoggerFactory.getLogger(Version.class, OpenmeetingsVariables.getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(Version.class);
 	private static final int TOTAL_LENGTH = 78;
 	private static String version = null;
 	private static String revision = null;
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 d009acf..d5c0a0d 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
@@ -19,13 +19,12 @@
 package org.apache.openmeetings.util.crypt;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getCryptClassName;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class CryptProvider {
-	private static final Logger log = Red5LoggerFactory.getLogger(CryptProvider.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(CryptProvider.class);
 	private static volatile ICrypt crypt;
 
 	private CryptProvider() {}
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/MD5Implementation.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/MD5Implementation.java
index 3879741..b98c2ca 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/MD5Implementation.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/MD5Implementation.java
@@ -18,19 +18,17 @@
  */
 package org.apache.openmeetings.util.crypt;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.security.NoSuchAlgorithmException;
 
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Package private SHA256 implementation to be able to authenticate against
  * passwords created using OM earlier than 3.1.0
  */
 class MD5Implementation {
-	private static final Logger log = Red5LoggerFactory.getLogger(MD5Implementation.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MD5Implementation.class);
 
 	private MD5Implementation() {}
 
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/SCryptImplementation.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/SCryptImplementation.java
index 94dec75..1fac3b1 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/SCryptImplementation.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/crypt/SCryptImplementation.java
@@ -19,18 +19,17 @@
 package org.apache.openmeetings.util.crypt;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.security.NoSuchAlgorithmException;
 import java.security.SecureRandom;
 
 import org.apache.commons.codec.binary.Base64;
 import org.bouncycastle.crypto.generators.SCrypt;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class SCryptImplementation implements ICrypt {
-	private static final Logger log = Red5LoggerFactory.getLogger(SCryptImplementation.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SCryptImplementation.class);
 	private static final String SECURE_RND_ALG = "SHA1PRNG";
 	private static final int COST = 1024 * 16;
 	private static final int KEY_LENGTH = 512;
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
index 5f6596f..f147a35 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.util.mail;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.ByteArrayOutputStream;
 import java.io.FileOutputStream;
 import java.net.URI;
@@ -31,8 +29,8 @@ import java.util.NoSuchElementException;
 import java.util.UUID;
 
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import net.fortuna.ical4j.data.CalendarOutputter;
 import net.fortuna.ical4j.model.Calendar;
@@ -61,7 +59,7 @@ import net.fortuna.ical4j.model.property.Version;
  *
  */
 public class IcalHandler {
-	private static final Logger log = Red5LoggerFactory.getLogger(IcalHandler.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(IcalHandler.class);
 	static {
 		System.setProperty("net.fortuna.ical4j.timezone.update.enabled", "false");
 		System.setProperty("net.fortuna.ical4j.timezone.cache.impl", "net.fortuna.ical4j.util.MapTimeZoneCache");
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/process/ProcessHelper.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/process/ProcessHelper.java
index ea406c3..b9f3835 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/process/ProcessHelper.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/process/ProcessHelper.java
@@ -26,12 +26,11 @@ import java.util.Map;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.commons.io.IOUtils;
-import org.apache.openmeetings.util.OpenmeetingsVariables;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class ProcessHelper {
-	public static final Logger log = Red5LoggerFactory.getLogger(ProcessHelper.class, OpenmeetingsVariables.getWebAppRootKey());
+	public static final Logger log = LoggerFactory.getLogger(ProcessHelper.class);
 
 	private ProcessHelper() {}
 
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 b23a47e..30cf9e7 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
@@ -19,7 +19,6 @@
 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;
 
@@ -50,8 +49,8 @@ import org.apache.wicket.request.resource.IResource;
 import org.apache.wicket.resource.FileSystemResource;
 import org.apache.wicket.util.lang.Bytes;
 import org.apache.wicket.util.time.Duration;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.Options;
 import com.googlecode.wicket.jquery.ui.form.button.AjaxButton;
@@ -64,7 +63,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
  *
  */
 public class BackupPanel extends AdminBasePanel {
-	private static final Logger log = Red5LoggerFactory.getLogger(BackupPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BackupPanel.class);
 	private static final long serialVersionUID = 1L;
 
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
index 677e656..fc8bdb9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.admin.labels;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.wicket.request.resource.ContentDisposition.ATTACHMENT;
 import static org.apache.wicket.util.time.Duration.NONE;
 
@@ -58,8 +57,8 @@ import org.apache.wicket.request.resource.ResourceStreamResource;
 import org.apache.wicket.util.resource.AbstractResourceStream;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.Options;
 import com.googlecode.wicket.jquery.ui.form.button.AjaxButton;
@@ -73,7 +72,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
  */
 public class LangPanel extends AdminBasePanel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(LangPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(LangPanel.class);
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
 	private LangForm langForm;
 	private final FileUploadField fileUploadField = new FileUploadField("fileInput");
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
index a911d88..e1e6805 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
@@ -23,7 +23,6 @@ import static org.apache.openmeetings.db.util.AuthLevelUtil.hasGroupAdminLevel;
 import static org.apache.openmeetings.db.util.UserHelper.getMinLoginLength;
 import static org.apache.openmeetings.db.util.UserHelper.getMinPasswdLength;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_AT_REGISTER;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getRights;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
@@ -72,8 +71,8 @@ import org.apache.wicket.model.Model;
 import org.apache.wicket.util.string.Strings;
 import org.apache.wicket.util.time.Duration;
 import org.danekja.java.util.function.serializable.SerializableConsumer;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wicketstuff.select2.Response;
 import org.wicketstuff.select2.Select2MultiChoice;
 
@@ -87,7 +86,7 @@ import com.googlecode.wicket.jquery.ui.widget.dialog.MessageDialog;
  */
 public class UserForm extends AdminBaseForm<User> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(UserForm.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserForm.class);
 	private final WebMarkupContainer listContainer;
 	private final WebMarkupContainer domain = new WebMarkupContainer("domain");
 	private GeneralUserForm generalForm;
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 7571782..495b04f 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
@@ -21,7 +21,6 @@ package org.apache.openmeetings.web.app;
 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;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setWicketApplicationName;
@@ -29,7 +28,6 @@ import static org.apache.openmeetings.web.pages.HashPage.INVITATION_HASH;
 import static org.apache.openmeetings.web.user.rooms.RoomEnterBehavior.getRoomUrlFragment;
 import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_MESSAGES;
 import static org.apache.wicket.resource.JQueryResourceReference.getV3;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 import static org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext;
 
 import java.net.UnknownHostException;
@@ -109,6 +107,7 @@ import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.mapper.parameter.PageParametersEncoder;
 import org.apache.wicket.validation.validator.UrlValidator;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.web.context.WebApplicationContext;
 import org.wicketstuff.dashboard.WidgetRegistry;
 import org.wicketstuff.dashboard.web.DashboardContext;
@@ -126,7 +125,7 @@ import com.hazelcast.core.MembershipEvent;
 import com.hazelcast.core.MembershipListener;
 
 public class Application extends AuthenticatedWebApplication implements IApplication {
-	private static final Logger log = getLogger(Application.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(Application.class);
 	private static boolean isInstalled;
 	private static final String INVALID_SESSIONS_KEY = "INVALID_SESSIONS_KEY";
 	public static final String NAME_ATTR_KEY = "name";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
index d3b8e85..0bedf6e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
@@ -19,9 +19,7 @@
 package org.apache.openmeetings.web.app;
 
 import static org.apache.openmeetings.core.util.WebSocketHelper.sendRoom;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getHazelcast;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.util.ArrayList;
 import java.util.HashSet;
@@ -38,12 +36,11 @@ import org.apache.openmeetings.db.dao.log.ConferenceLogDao;
 import org.apache.openmeetings.db.entity.basic.Client;
 import org.apache.openmeetings.db.entity.basic.IClient;
 import org.apache.openmeetings.db.entity.log.ConferenceLog;
-import org.apache.openmeetings.db.entity.room.StreamClient;
 import org.apache.openmeetings.db.manager.IClientManager;
 import org.apache.openmeetings.db.util.ws.RoomMessage;
 import org.apache.wicket.util.collections.ConcurrentHashSet;
-import org.red5.server.api.scope.IScope;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -52,7 +49,7 @@ import com.hazelcast.core.IMap;
 
 @Component
 public class ClientManager implements IClientManager {
-	private static final Logger log = getLogger(ClientManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ClientManager.class);
 	private static final String ROOMS_KEY = "ROOMS_KEY";
 	private static final String ONLINE_USERS_KEY = "ONLINE_USERS_KEY";
 	private static final String UID_BY_SID_KEY = "UID_BY_SID_KEY";
@@ -158,6 +155,7 @@ public class ClientManager implements IClientManager {
 	}
 
 	public IClient removeFromRoom(IClient _c) {
+		/*
 		Long roomId = _c.getRoomId();
 		log.debug("Removing online room client: {}, room: {}", _c.getUid(), roomId);
 		if (roomId != null) {
@@ -185,6 +183,7 @@ public class ClientManager implements IClientManager {
 				update(c);
 			}
 		}
+		*/
 		return _c;
 	}
 
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/QuickPollManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/QuickPollManager.java
index b143603..67545b7 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/QuickPollManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/QuickPollManager.java
@@ -18,10 +18,8 @@
  */
 package org.apache.openmeetings.web.app;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getHazelcast;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
@@ -34,6 +32,7 @@ import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.util.ws.RoomMessage.Type;
 import org.apache.openmeetings.db.util.ws.TextRoomMessage;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 
 import com.github.openjson.JSONObject;
@@ -42,7 +41,7 @@ import com.hazelcast.core.IMap;
 
 @Component
 public class QuickPollManager {
-	private static final Logger log = getLogger(QuickPollManager.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(QuickPollManager.class);
 	private static final String QPOLLS_KEY = "QPOLLS_KEY";
 	private HazelcastInstance hazelcast;
 
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/StreamClientManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/StreamClientManager.java
index 74ad459..63fbc7f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/StreamClientManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/StreamClientManager.java
@@ -22,7 +22,6 @@ import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.getApp
 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.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getHazelcast;
 
 import java.util.Collection;
@@ -53,9 +52,8 @@ import org.apache.openmeetings.db.entity.server.Sessiondata;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.manager.IStreamClientManager;
 import org.apache.openmeetings.db.util.ws.RoomMessage;
-import org.red5.logging.Red5LoggerFactory;
-import org.red5.server.Server;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -71,7 +69,7 @@ import com.hazelcast.core.HazelcastInstance;
  */
 @Component
 public class StreamClientManager implements IStreamClientManager {
-	protected static final Logger log = Red5LoggerFactory.getLogger(StreamClientManager.class, getWebAppRootKey());
+	protected static final Logger log = LoggerFactory.getLogger(StreamClientManager.class);
 	private static final String STREAM_CLIENT_KEY = "STREAM_CLIENT_KEY";
 	private HazelcastInstance hazelcast;
 
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
index b2c7386..618f52b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
@@ -24,13 +24,11 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOAR
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_RSS;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getDefaultLang;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getAuthenticationStrategy;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.getDashboardContext;
 import static org.apache.openmeetings.web.app.Application.isInvaldSession;
 import static org.apache.openmeetings.web.app.Application.removeInvalidSession;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.util.Arrays;
 import java.util.Calendar;
@@ -83,6 +81,7 @@ import org.apache.wicket.request.Request;
 import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.string.Strings;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wicketstuff.dashboard.Dashboard;
 import org.wicketstuff.dashboard.Widget;
 import org.wicketstuff.dashboard.WidgetFactory;
@@ -90,7 +89,7 @@ import org.wicketstuff.dashboard.web.DashboardContext;
 
 public class WebSession extends AbstractAuthenticatedWebSession implements IWebSession {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = getLogger(WebSession.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(WebSession.class);
 	public static final int MILLIS_IN_MINUTE = 60000;
 	public static final List<String> AVAILABLE_TIMEZONES = Arrays.asList(TimeZone.getAvailableIDs());
 	public static final Set<String> AVAILABLE_TIMEZONE_SET = new LinkedHashSet<>(AVAILABLE_TIMEZONES);
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ErrorMessagePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ErrorMessagePanel.java
index 2fad7a4..4868177 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ErrorMessagePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ErrorMessagePanel.java
@@ -18,18 +18,16 @@
  */
 package org.apache.openmeetings.web.common;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.PrintWriter;
 
 import org.apache.commons.io.output.StringBuilderWriter;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class ErrorMessagePanel extends Panel {
-	private static final Logger log = Red5LoggerFactory.getLogger(ErrorMessagePanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ErrorMessagePanel.class);
 	private static final long serialVersionUID = 1L;
 
 	public ErrorMessagePanel(String id, String msg, Throwable err) {
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationForm.java
index d6e9eab..9044a32 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationForm.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.common;
 
 import static org.apache.openmeetings.util.CalendarHelper.getDate;
-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.getInvitationLink;
 import static org.apache.openmeetings.web.app.WebSession.AVAILABLE_TIMEZONES;
@@ -58,8 +57,8 @@ import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.util.CollectionModel;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.Options;
 import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
@@ -67,7 +66,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public abstract class InvitationForm extends Form<Invitation> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(InvitationForm.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InvitationForm.class);
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
 	private final PasswordTextField passwd = new PasswordTextField("password");
 	private final DropDownChoice<String> timeZoneId = new DropDownChoice<>("timeZoneId", Model.of((String)null), AVAILABLE_TIMEZONES);
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
index 10eb391..6823ee3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
@@ -22,7 +22,6 @@ import static org.apache.openmeetings.db.util.AuthLevelUtil.hasAdminLevel;
 import static org.apache.openmeetings.db.util.AuthLevelUtil.hasGroupAdminLevel;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.util.CallbackFunctionHelper.getNamedFunction;
@@ -86,8 +85,8 @@ import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
 import org.apache.wicket.protocol.ws.api.message.ErrorMessage;
 import org.apache.wicket.protocol.ws.api.message.TextMessage;
 import org.apache.wicket.util.time.Duration;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wicketstuff.urlfragment.UrlFragment;
 
 import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
@@ -95,7 +94,7 @@ import com.googlecode.wicket.jquery.ui.widget.menu.IMenuItem;
 
 public class MainPanel extends Panel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(MainPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(MainPanel.class);
 	private static final String DELIMITER = "     ";
 	private final WebMarkupContainer EMPTY = new WebMarkupContainer(CHILD_ID);
 	private String uid = null;
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 c1f289d..03dae52 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
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.common;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getMaxUploadSize;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.File;
 
@@ -33,12 +32,12 @@ import org.apache.wicket.markup.html.form.upload.FileUpload;
 import org.apache.wicket.markup.html.form.upload.FileUploadField;
 import org.apache.wicket.model.util.ListModel;
 import org.apache.wicket.util.lang.Bytes;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public abstract class UploadableImagePanel extends ImagePanel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(UploadableImagePanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UploadableImagePanel.class);
 	private final FileUploadField fileUploadField = new FileUploadField("image", new ListModel<FileUpload>());
 
 	public UploadableImagePanel(String id) {
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 b2d45e9..2dd695a 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
@@ -19,7 +19,6 @@
 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;
 
@@ -53,8 +52,8 @@ import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.validation.IValidatable;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.Validatable;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.Options;
 import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
@@ -63,7 +62,7 @@ import com.googlecode.wicket.jquery.ui.widget.dialog.MessageDialog;
 import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public class ForgetPasswordDialog extends AbstractFormDialog<String> {
-	private static final Logger log = Red5LoggerFactory.getLogger(ForgetPasswordDialog.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ForgetPasswordDialog.class);
 	private static final long serialVersionUID = 1L;
 	private DialogButton send;
 	private DialogButton cancel;
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 a37a18e..789ab81 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
@@ -24,7 +24,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_
 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;
 
@@ -56,8 +55,8 @@ import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.util.string.Strings;
 import org.apache.wicket.validation.IValidatable;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.Options;
 import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
@@ -66,7 +65,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public class RegisterDialog extends NonClosableDialog<String> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(RegisterDialog.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RegisterDialog.class);
 	private DialogButton cancelBtn;
 	private DialogButton registerBtn;
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
index e512e77..027546a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.pages.auth;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LDAP_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getAuthenticationStrategy;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.pages.auth.SignInPage.allowOAuthLogin;
@@ -67,8 +66,8 @@ import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.JQueryBehavior;
 import com.googlecode.wicket.jquery.core.Options;
@@ -79,7 +78,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public class SignInDialog extends NonClosableDialog<String> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(SignInDialog.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SignInDialog.class);
 	private Form<String> form;
 	private DialogButton loginBtn;
 	private DialogButton registerBtn;
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 920f3e9..c94de72 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
@@ -22,7 +22,6 @@ 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;
 
@@ -61,15 +60,15 @@ import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.flow.RedirectToUrlException;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.string.StringValue;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONException;
 import com.github.openjson.JSONObject;
 
 public class SignInPage extends BaseInitedPage {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(SignInPage.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SignInPage.class);
 	private SignInDialog d;
 	private KickMessageDialog m;
 
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
index 4a9dee0..1e4bfc3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.web.pages.install;
 import static org.apache.openmeetings.core.converter.BaseConverter.EXEC_EXT;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.USER_LOGIN_MINIMUM_LENGTH;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.USER_PASSWORD_MINIMUM_LENGTH;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.WebSession.AVAILABLE_TIMEZONES;
 import static org.apache.openmeetings.web.app.WebSession.AVAILABLE_TIMEZONE_SET;
 import static org.apache.wicket.validation.validator.RangeValidator.range;
@@ -79,8 +78,8 @@ import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.StringResourceModel;
 import org.apache.wicket.util.string.Strings;
 import org.apache.wicket.util.time.Duration;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.orm.jpa.LocalEntityManagerFactoryBean;
 import org.springframework.web.context.support.XmlWebApplicationContext;
 
@@ -96,7 +95,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public class InstallWizard extends AbstractWizard<InstallationConfig> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(InstallWizard.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(InstallWizard.class);
 	private final IDynamicWizardStep welcomeStep;
 	private final IDynamicWizardStep dbStep;
 	private final ParamsStep1 paramsStep1;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomBroadcaster.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomBroadcaster.java
index 2d2a3e4..e3615c1 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomBroadcaster.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomBroadcaster.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.room;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 
 import org.apache.openmeetings.core.remote.ScopeApplicationAdapter;
@@ -26,11 +25,11 @@ import org.apache.openmeetings.db.entity.basic.Client;
 import org.apache.openmeetings.db.entity.room.StreamClient;
 import org.apache.openmeetings.web.app.ClientManager;
 import org.apache.openmeetings.web.app.StreamClientManager;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class RoomBroadcaster {
-	private static final Logger log = Red5LoggerFactory.getLogger(RoomBroadcaster.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RoomBroadcaster.class);
 
 	private RoomBroadcaster() {}
 
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 2da8a6c..19b3e26 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.web.room;
 
 import static org.apache.openmeetings.db.util.RoomHelper.videoJson;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
@@ -90,8 +89,8 @@ import org.apache.wicket.util.resource.AbstractResourceStream;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 import com.googlecode.wicket.jquery.core.JQueryBehavior;
@@ -105,7 +104,7 @@ import com.googlecode.wicket.jquery.ui.widget.dialog.MessageDialog;
 @AuthorizeInstantiation("Room")
 public class RoomPanel extends BasePanel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(RoomPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RoomPanel.class);
 	private static final String ACCESS_DENIED_ID = "access-denied";
 	private static final String EVENT_DETAILS_ID = "event-details";
 	public enum Action {
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
index 5c7a353..8aa9893 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/SwfPanel.java
@@ -22,7 +22,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_NATIVE_SS
 import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_PORT;
 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.getWebAppRootKey;
 
 import java.net.URL;
 
@@ -40,15 +39,15 @@ import org.apache.wicket.request.resource.JavaScriptResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
 import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
 
 public class SwfPanel extends BasePanel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(SwfPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SwfPanel.class);
 	public static final ResourceReference FLASH_JS_REFERENCE = new JavaScriptResourceReference(SwfPanel.class, "swf-functions.js");
 	public static final String SWF = "swf";
 	public static final String SWF_TYPE_NETWORK = "network";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
index 69892d5..e24464d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/VideoSettings.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.web.room;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.FLASH_PORT;
 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.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.NAME_ATTR_KEY;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.room.SwfPanel.FLASH_JS_REFERENCE;
@@ -45,15 +44,15 @@ import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.request.resource.JavaScriptResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 import com.hazelcast.core.Member;
 
 public class VideoSettings extends Panel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(VideoSettings.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(VideoSettings.class);
 	private static final ResourceReference SETTINGS_JS_REFERENCE = new JavaScriptResourceReference(VideoSettings.class, "settings.js");
 	public static final String URL = "url";
 	public static final String FALLBACK = "fallback";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
index 4f8a3f8..e1a0bb0 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.room.activities;
 
 import static org.apache.openmeetings.core.util.WebSocketHelper.sendRoom;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.util.CallbackFunctionHelper.getNamedFunction;
@@ -46,14 +45,14 @@ import org.apache.wicket.markup.head.JavaScriptHeaderItem;
 import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.request.resource.JavaScriptResourceReference;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 
 public class ActivitiesPanel extends Panel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(ActivitiesPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ActivitiesPanel.class);
 	private static final String PARAM_ID = "id";
 	private static final String ACTION = "action";
 	private static final String PARAM_ROOM_ID = "roomid";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
index 15bdcc7..d24b6d9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.room.menu;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.room.sidebar.RoomSidebar.PARAM_ACTION;
@@ -43,12 +42,12 @@ import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
 import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.PriorityHeaderItem;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class PollsSubMenu implements Serializable {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(PollsSubMenu.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(PollsSubMenu.class);
 	private static final String FUNC_QPOLL_ACTION = "quickPollAction";
 	private static final String PARAM_VOTE = "vote";
 	private static final String ACTION_CLOSE = "close";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
index 4165a7b..05e3b3e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.room.menu;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getRights;
 
@@ -45,15 +44,15 @@ import org.apache.wicket.markup.html.form.RadioGroup;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.util.CollectionModel;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wicketstuff.select2.Select2MultiChoice;
 
 import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
 
 public class RoomInvitationForm extends InvitationForm {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(RoomInvitationForm.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RoomInvitationForm.class);
 	private final RadioGroup<InviteeType> rdi = new RadioGroup<>("inviteeType", Model.of(InviteeType.user));
 	private final Long roomId;
 	private final WebMarkupContainer groupContainer = new WebMarkupContainer("groupContainer");
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 d558989..9870802 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
@@ -26,7 +26,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSH
 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.WebSession.getLanguage;
 import static org.apache.wicket.util.time.Duration.NONE;
@@ -50,14 +49,14 @@ import org.apache.wicket.extensions.ajax.AjaxDownloadBehavior;
 import org.apache.wicket.request.resource.ResourceStreamResource;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.apache.wicket.util.resource.StringResourceStream;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 
 public class StartSharingButton extends OmButton {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(StartSharingButton.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(StartSharingButton.class);
 	private static final String CDATA_BEGIN = "<![CDATA[";
 	private static final String CDATA_END = "]]>";
 	private final AjaxDownloadBehavior download;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
index c16b630..2422ef1 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.room.sidebar;
 
-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.kickUser;
 import static org.apache.openmeetings.web.room.RoomBroadcaster.sendUpdatedClient;
@@ -60,8 +59,8 @@ import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 import com.googlecode.wicket.jquery.core.Options;
@@ -69,7 +68,7 @@ import com.googlecode.wicket.jquery.ui.JQueryUIBehavior;
 
 public class RoomSidebar extends Panel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(RoomSidebar.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RoomSidebar.class);
 	public static final String FUNC_TOGGLE_RIGHT = "toggleRight";
 	public static final String FUNC_TOGGLE_ACTIVITY = "toggleActivity";
 	public static final String FUNC_ACTION = "roomAction";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/AbstractWbPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/AbstractWbPanel.java
index 337aacb..413b22a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/AbstractWbPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/AbstractWbPanel.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.room.wb;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.room.wb.WbWebSocketHelper.PARAM_OBJ;
 import static org.apache.openmeetings.web.util.CallbackFunctionHelper.getNamedFunction;
 import static org.apache.wicket.ajax.attributes.CallbackParameter.explicit;
@@ -35,14 +34,14 @@ import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.util.string.StringValue;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 
 public abstract class AbstractWbPanel extends Panel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(AbstractWbPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AbstractWbPanel.class);
 	public static final String FUNC_ACTION = "wbAction";
 	public static final String PARAM_ACTION = "action";
 	protected static final String ROLE_NONE = "none";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
index 32f9f87..1bd8e88 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
@@ -18,16 +18,10 @@
  */
 package org.apache.openmeetings.web.room.wb;
 
-import static org.apache.openmeetings.web.app.Application.getBean;
-
 import java.io.IOException;
 
-import org.apache.openmeetings.core.remote.ScopeApplicationAdapter;
-import org.apache.openmeetings.db.entity.basic.Client;
 import org.apache.openmeetings.db.entity.file.BaseFileItem;
-import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.room.Room.Right;
-import org.apache.openmeetings.web.app.StreamClientManager;
 import org.apache.openmeetings.web.room.RoomPanel;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.request.resource.JavaScriptResourceReference;
@@ -55,6 +49,7 @@ public class InterviewWbPanel extends AbstractWbPanel {
 
 	@Override
 	protected void processWbAction(WbAction a, JSONObject obj, AjaxRequestTarget target) throws IOException {
+		/*
 		Client c = rp.getClient();
 		if (c.hasRight(Room.Right.moderator)) {
 			switch (a) {
@@ -72,5 +67,6 @@ public class InterviewWbPanel extends AbstractWbPanel {
 					//no-op
 			}
 		}
+		*/
 	}
 }
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
index 0265c5d..3cbf9e3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
@@ -25,7 +25,6 @@ import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_TYPE;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ITEMS_KEY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_STATUS;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.room.wb.WbWebSocketHelper.getObjWbJson;
 import static org.apache.openmeetings.web.room.wb.WbWebSocketHelper.getWbJson;
@@ -86,8 +85,8 @@ import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.request.resource.JavaScriptResourceReference;
 import org.apache.wicket.request.resource.ResourceReference;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
@@ -95,7 +94,7 @@ import com.github.openjson.JSONTokener;
 
 public class WbPanel extends AbstractWbPanel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(WbPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(WbPanel.class);
 	private static final int UPLOAD_WB_LEFT = 0;
 	private static final int UPLOAD_WB_TOP = 0;
 	private static final int DEFAULT_WIDTH = 640;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
index 51a69e8..348e94c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.user.calendar;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getRights;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
@@ -81,8 +80,8 @@ import org.apache.wicket.model.LoadableDetachableModel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.util.CollectionModel;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wicketstuff.select2.Select2MultiChoice;
 
 import com.googlecode.wicket.jquery.core.JQueryBehavior;
@@ -101,7 +100,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public class AppointmentDialog extends AbstractFormDialog<Appointment> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(AppointmentDialog.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AppointmentDialog.class);
 
 	private AppointmentForm form;
 	private DialogButton save;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
index d257e19..c60f360 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.user.calendar;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_CALENDAR_FIRST_DAY;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.util.CalendarWebHelper.getDate;
@@ -57,8 +56,8 @@ import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.LoadableDetachableModel;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.util.time.Duration;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONArray;
 import com.github.openjson.JSONObject;
@@ -69,7 +68,7 @@ import com.googlecode.wicket.jquery.ui.calendar.EventSource.GoogleCalendar;
 import com.googlecode.wicket.jquery.ui.form.button.Button;
 
 public class CalendarPanel extends UserBasePanel {
-	private static final Logger log = Red5LoggerFactory.getLogger(CalendarPanel.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(CalendarPanel.class);
 	private static final long serialVersionUID = 1L;
 	private static final String JS_MARKUP = "setCalendarHeight();";
 	private final AbstractAjaxTimerBehavior refreshTimer = new AbstractAjaxTimerBehavior(Duration.seconds(10)) {
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.java
index a510f49..d49e99b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/Chat.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.web.user.chat;
 import static org.apache.openmeetings.core.util.WebSocketHelper.ID_ALL;
 import static org.apache.openmeetings.core.util.WebSocketHelper.ID_ROOM_PREFIX;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_CHAT;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.room.RoomPanel.isModerator;
@@ -56,14 +55,14 @@ import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.resource.JavaScriptResourceReference;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 
 public class Chat extends Panel {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(Chat.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(Chat.class);
 	private static final String PARAM_MSG_ID = "msgid";
 	private static final String PARAM_ROOM_ID = "roomid";
 	private static final String PARAM_TYPE = "type";
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatForm.java
index 257c1bb..30e88af 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatForm.java
@@ -22,7 +22,6 @@ import static org.apache.openmeetings.core.util.WebSocketHelper.ID_ALL;
 import static org.apache.openmeetings.core.util.WebSocketHelper.ID_ROOM_PREFIX;
 import static org.apache.openmeetings.core.util.WebSocketHelper.ID_USER_PREFIX;
 import static org.apache.openmeetings.db.util.FormatHelper.getDisplayName;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
@@ -53,8 +52,8 @@ import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.form.HiddenField;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.github.openjson.JSONObject;
 import com.googlecode.wicket.jquery.ui.form.button.AjaxButton;
@@ -62,7 +61,7 @@ import com.googlecode.wicket.jquery.ui.plugins.wysiwyg.WysiwygEditor;
 
 public class ChatForm extends Form<Void> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(ChatForm.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ChatForm.class);
 	private final HiddenField<String> activeTab = new HiddenField<>("activeTab", Model.of(""));
 
 	public ChatForm(String id) {
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
index 95c27a8..12c4fb3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.web.user.profile;
 
 import static org.apache.openmeetings.db.util.UserHelper.getMinPasswdLength;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
@@ -34,8 +33,8 @@ import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.form.PasswordTextField;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.util.string.Strings;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.core.Options;
 import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
@@ -44,7 +43,7 @@ import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
 
 public class ChangePasswordDialog extends AbstractFormDialog<String> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(ChangePasswordDialog.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ChangePasswordDialog.class);
 	private DialogButton update;
 	private DialogButton cancel;
 	private final PasswordTextField current = new PasswordTextField("current", Model.of((String)null));
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
index b25e900..48b330d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web.user.profile;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
@@ -41,14 +40,14 @@ import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.util.string.Strings;
 import org.apache.wicket.util.time.Duration;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.ui.form.button.ButtonBehavior;
 
 public class ProfileForm extends Form<User> {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(ProfileForm.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ProfileForm.class);
 	private final PasswordTextField passwd = new PasswordTextField("passwd", new Model<String>());
 	private final GeneralUserForm userForm;
 	private final ChangePasswordDialog chPwdDlg;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
index 7577c58..366fd0e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
@@ -18,9 +18,6 @@
  */
 package org.apache.openmeetings.web.util;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
-
 import java.io.File;
 import java.io.IOException;
 
@@ -32,10 +29,11 @@ import org.apache.wicket.request.resource.IResource.Attributes;
 import org.apache.wicket.resource.FileSystemResource;
 import org.apache.wicket.resource.FileSystemResourceReference;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public abstract class FileItemResourceReference<T extends BaseFileItem> extends FileSystemResourceReference {
 	private static final long serialVersionUID = 1L;
-	protected static final Logger log = getLogger(FileItemResourceReference.class, getWebAppRootKey());
+	protected static final Logger log = LoggerFactory.getLogger(FileItemResourceReference.class);
 
 	public FileItemResourceReference(String name) {
 		super(name);
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/GroupLogoResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/GroupLogoResourceReference.java
index dab7428..f2c484d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/GroupLogoResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/GroupLogoResourceReference.java
@@ -21,11 +21,9 @@ package org.apache.openmeetings.web.util;
 import static org.apache.openmeetings.db.util.AuthLevelUtil.hasAdminLevel;
 import static org.apache.openmeetings.util.OmFileHelper.PNG_MIME_TYPE;
 import static org.apache.openmeetings.util.OmFileHelper.getGroupLogo;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getRights;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.io.File;
 import java.io.IOException;
@@ -44,10 +42,11 @@ import org.apache.wicket.resource.FileSystemResource;
 import org.apache.wicket.resource.FileSystemResourceReference;
 import org.apache.wicket.util.string.StringValue;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class GroupLogoResourceReference extends FileSystemResourceReference {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = getLogger(GroupLogoResourceReference.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(GroupLogoResourceReference.class);
 
 	public GroupLogoResourceReference() {
 		super(GroupLogoResourceReference.class, "grouplogo");
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
index bfa9a4d..fdbc71f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ProfileImageResourceReference.java
@@ -20,7 +20,6 @@ package org.apache.openmeetings.web.util;
 
 import static org.apache.openmeetings.util.OmFileHelper.JPG_MIME_TYPE;
 import static org.apache.openmeetings.util.OmFileHelper.SIP_USER_ID;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 
 import java.io.File;
@@ -40,12 +39,12 @@ import org.apache.wicket.request.resource.ByteArrayResource;
 import org.apache.wicket.request.resource.IResource;
 import org.apache.wicket.request.resource.ResourceReference;
 import org.apache.wicket.util.io.IOUtils;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class ProfileImageResourceReference extends ResourceReference {
 	private static final long serialVersionUID = 1L;
-	private static final Logger log = Red5LoggerFactory.getLogger(ProfileImageResourceReference.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ProfileImageResourceReference.class);
 
 	public ProfileImageResourceReference() {
 		super(ProfileImageResourceReference.class, "profile");
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserDashboardPersister.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserDashboardPersister.java
index 10ee875..b08e873 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserDashboardPersister.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserDashboardPersister.java
@@ -20,9 +20,7 @@ package org.apache.openmeetings.web.util;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 import static org.apache.openmeetings.util.OmFileHelper.getUserDashboard;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -32,6 +30,7 @@ import java.io.OutputStream;
 import java.util.Collections;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.wicketstuff.dashboard.Dashboard;
 import org.wicketstuff.dashboard.DashboardPersister;
 import org.wicketstuff.dashboard.WidgetComparator;
@@ -40,7 +39,7 @@ import com.thoughtworks.xstream.XStream;
 import com.thoughtworks.xstream.io.xml.DomDriver;
 
 public class UserDashboardPersister implements DashboardPersister {
-	private static final Logger log = getLogger(UserDashboardPersister.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserDashboardPersister.class);
 
 	@Override
 	public Dashboard load() {
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 29f5d20..0215cd9 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
@@ -39,12 +39,12 @@ import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.installation.ImportInitvalues;
 import org.apache.openmeetings.installation.InstallationConfig;
 import org.junit.Before;
-import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.LoggerFactory;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
-	private static final Logger log = Red5LoggerFactory.getLogger(AbstractJUnitDefaults.class);
+	private static final Logger log = LoggerFactory.getLogger(AbstractJUnitDefaults.class);
 	private static final String timeZone = "Europe/Berlin";
 	public static final int ONE_HOUR = 60 * 60 * 1000;
 	public static final String adminUsername = "admin";
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
index 0f7211f..6d5015d 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
@@ -19,14 +19,12 @@
 package org.apache.openmeetings;
 
 import static org.apache.openmeetings.db.util.ApplicationHelper.ensureApplication;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setInitComplete;
 import static org.apache.wicket.util.string.Strings.escapeMarkup;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 import static org.springframework.web.context.WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE;
 
 import java.io.Serializable;
@@ -51,13 +49,14 @@ import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.Assert;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.web.context.support.XmlWebApplicationContext;
 
 import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
 import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
 
 public class AbstractWicketTester extends AbstractJUnitDefaults {
-	private static final Logger log = getLogger(AbstractWicketTester.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(AbstractWicketTester.class);
 	public static final String PATH_CHILD = "main-container:main:contents:child";
 	public static final String PATH_MENU = "main-container:main:topControls:menu:menu";
 	protected WicketTester tester;
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 da437ae..08bfad1 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
@@ -20,7 +20,6 @@ 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;
 import static org.junit.Assert.fail;
@@ -37,12 +36,12 @@ import org.apache.openmeetings.db.dao.user.GroupDao;
 import org.apache.openmeetings.db.entity.basic.Configuration;
 import org.junit.After;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestOldBackups extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestOldBackups.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestOldBackups.class);
 	private String cryptClass = null;
 
 	@Autowired
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java
index b3e293a..733f06a 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
@@ -43,12 +42,12 @@ import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.string.Strings;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestAppointmentAddAppointment extends AbstractWicketTester {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestAppointmentAddAppointment.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestAppointmentAddAppointment.class);
 
 	@Autowired
 	private AppointmentLogic appointmentLogic;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentSchedulerTask.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentSchedulerTask.java
index b28d254..5451c56 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentSchedulerTask.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentSchedulerTask.java
@@ -18,18 +18,17 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertTrue;
 
 import org.apache.openmeetings.AbstractJUnitDefaults;
 import org.apache.openmeetings.service.calendar.AppointmentLogic;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestAppointmentSchedulerTask extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestAppointmentSchedulerTask.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestAppointmentSchedulerTask.class);
 
 	@Autowired
 	private AppointmentLogic appointmentLogic;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureAppointment.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureAppointment.java
index 3cb9daf..f864ea0 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureAppointment.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureAppointment.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
@@ -30,12 +28,12 @@ import org.apache.openmeetings.AbstractJUnitDefaults;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestDatabaseStructureAppointment extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestDatabaseStructureAppointment.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestDatabaseStructureAppointment.class);
 
 	@Autowired
 	private AppointmentDao appointmentDao;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetAppointmentByRange.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetAppointmentByRange.java
index ceacb41..3e1a61e 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetAppointmentByRange.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetAppointmentByRange.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertEquals;
 
 import java.util.ArrayList;
@@ -29,12 +28,12 @@ import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.calendar.MeetingMember;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestDatabaseStructureGetAppointmentByRange extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestDatabaseStructureGetAppointmentByRange.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestDatabaseStructureGetAppointmentByRange.class);
 
 	@Autowired
 	private AppointmentDao appointmentDao;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetUserStart.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetUserStart.java
index 98ac88e..28e3d72 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetUserStart.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureGetUserStart.java
@@ -18,15 +18,13 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import org.apache.openmeetings.AbstractJUnitDefaults;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TestDatabaseStructureGetUserStart extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestDatabaseStructureGetUserStart.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestDatabaseStructureGetUserStart.class);
 
 	@Test
 	public void testAddingGroup() {
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureUsersSearch.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureUsersSearch.java
index f6196e9..21f01f9 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureUsersSearch.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestDatabaseStructureUsersSearch.java
@@ -18,18 +18,16 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.util.List;
 
 import org.apache.openmeetings.AbstractJUnitDefaults;
 import org.apache.openmeetings.db.entity.user.User;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TestDatabaseStructureUsersSearch extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestDatabaseStructureUsersSearch.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestDatabaseStructureUsersSearch.class);
 
 	@Test
 	public void testAddingGroup(){
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestGetAppointment.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestGetAppointment.java
index 40e7955..5572c0b 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestGetAppointment.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestGetAppointment.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
@@ -30,12 +29,12 @@ import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestGetAppointment extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestGetAppointment.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestGetAppointment.class);
 
 	@Autowired
 	private AppointmentDao appointmentDao;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestSendIcalMessage.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestSendIcalMessage.java
index 6c3c81b..3318070 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestSendIcalMessage.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestSendIcalMessage.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.calendar;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.net.URI;
@@ -46,8 +44,8 @@ import org.apache.openmeetings.core.mail.MailHandler;
 import org.apache.openmeetings.util.mail.ByteArrayDataSource;
 import org.apache.openmeetings.util.mail.IcalHandler;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import net.fortuna.ical4j.data.CalendarOutputter;
@@ -68,7 +66,7 @@ import net.fortuna.ical4j.model.property.Uid;
 import net.fortuna.ical4j.model.property.Version;
 
 public class TestSendIcalMessage extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestSendIcalMessage.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestSendIcalMessage.class);
 
 	@Autowired
 	private MailHandler mailHandler;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/config/TestConfig.java b/openmeetings-web/src/test/java/org/apache/openmeetings/config/TestConfig.java
index dfb15c3..b17032e 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/config/TestConfig.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/config/TestConfig.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.config;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SMTP_SERVER;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
 
@@ -28,11 +27,11 @@ import java.util.List;
 import org.apache.openmeetings.AbstractJUnitDefaults;
 import org.apache.openmeetings.db.entity.basic.Configuration;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TestConfig extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestConfig.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestConfig.class);
 
 	@Test
 	public void getConfigKey() {
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/db/dao/TestRoomDao.java b/openmeetings-web/src/test/java/org/apache/openmeetings/db/dao/TestRoomDao.java
index 4510492..6a81ad8 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/db/dao/TestRoomDao.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/db/dao/TestRoomDao.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.db.dao;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
@@ -29,12 +28,12 @@ import org.apache.openmeetings.db.entity.room.Room.RoomElement;
 import org.apache.openmeetings.db.entity.user.User;
 import org.junit.Assert;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestRoomDao extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestRoomDao.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestRoomDao.class);
 	@Autowired
 	protected RoomDao roomDao;
 
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/derby/PrepareSystemFiles.java b/openmeetings-web/src/test/java/org/apache/openmeetings/derby/PrepareSystemFiles.java
index 6c142f0..3e6f6f7 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/derby/PrepareSystemFiles.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/derby/PrepareSystemFiles.java
@@ -18,15 +18,13 @@
  */
 package org.apache.openmeetings.derby;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.File;
 
 import org.apache.openmeetings.cli.ConnectionPropertiesPatcher;
 import org.apache.openmeetings.util.ConnectionProperties.DbType;
 import org.apache.openmeetings.util.OmFileHelper;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * This file is called from command line to patch the derby configuration
@@ -36,7 +34,7 @@ import org.slf4j.Logger;
  *
  */
 public class PrepareSystemFiles {
-	private static final Logger log = Red5LoggerFactory.getLogger(PrepareSystemFiles.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(PrepareSystemFiles.class);
 
 	public static void main(String... args) {
 		try {
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestAddGroup.java b/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestAddGroup.java
index 5375365..00b13ba 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestAddGroup.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestAddGroup.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.domain;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertNotNull;
 
 import org.apache.openmeetings.AbstractJUnitDefaults;
@@ -27,12 +26,12 @@ import org.apache.openmeetings.db.entity.user.Group;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 
 public class TestAddGroup extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestAddGroup.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestAddGroup.class);
 
 	@Autowired
 	private GroupDao groupDao;
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestUserGroupAggregation.java b/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestUserGroupAggregation.java
index c0ab4eb..6f9d0ac 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestUserGroupAggregation.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/domain/TestUserGroupAggregation.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.domain;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
@@ -26,11 +25,11 @@ import org.apache.openmeetings.AbstractJUnitDefaults;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
 import org.junit.Test;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TestUserGroupAggregation extends AbstractJUnitDefaults {
-	private static final Logger log = Red5LoggerFactory.getLogger(TestUserGroupAggregation.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestUserGroupAggregation.class);
 
 	@Test
 	public void testitNow() {
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/selenium/SeleniumUtils.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/selenium/SeleniumUtils.java
index 1344fa1..0bc2490 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/selenium/SeleniumUtils.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/selenium/SeleniumUtils.java
@@ -18,8 +18,6 @@
  */
 package org.apache.openmeetings.test.selenium;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
-
 import java.io.File;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
@@ -32,11 +30,11 @@ import org.openqa.selenium.OutputType;
 import org.openqa.selenium.TakesScreenshot;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class SeleniumUtils {
-	private static final Logger log = Red5LoggerFactory.getLogger(SeleniumUtils.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(SeleniumUtils.class);
 	// we need to retry some actions because our web site is dynamic
 	static int numberOfRetries = 10;
 
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java b/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java
index 7be7c81..75387da 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.web;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.util.OmUrlFragment.TYPE_BACKUP;
 import static org.apache.openmeetings.web.util.OmUrlFragment.TYPE_CALENDAR;
 import static org.apache.openmeetings.web.util.OmUrlFragment.TYPE_CONFIG;
@@ -37,7 +36,6 @@ import static org.apache.openmeetings.web.util.OmUrlFragment.TYPE_ROOM;
 import static org.apache.openmeetings.web.util.OmUrlFragment.TYPE_USER;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.util.function.Consumer;
 
@@ -70,11 +68,12 @@ import org.apache.wicket.authorization.UnauthorizedInstantiationException;
 import org.apache.wicket.behavior.AbstractAjaxBehavior;
 import org.junit.Test;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.ui.widget.tabs.TabbedPanel;
 
 public class TestMainAreas extends AbstractWicketTester {
-	private static final Logger log = getLogger(TestMainAreas.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestMainAreas.class);
 
 	@Test
 	public void testDashboard() throws OmException {
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java b/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
index 3e9f426..15dbada 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
@@ -29,12 +29,10 @@ import static org.apache.openmeetings.AbstractWicketTester.countErrors;
 import static org.apache.openmeetings.AbstractWicketTester.getButtonBehavior;
 import static org.apache.openmeetings.AbstractWicketTester.getWicketTester;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.DEFAULT_APP_NAME;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.setWicketApplicationName;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
-import static org.red5.logging.Red5LoggerFactory.getLogger;
 
 import java.io.File;
 import java.io.IOException;
@@ -54,11 +52,12 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
 
 public class TestInstall {
-	private static final Logger log = getLogger(TestInstall.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(TestInstall.class);
 	private static final String DERBY_HOME = "derby.system.home";
 	private static final String WIZARD_PATH = "wizard";
 	private File tempFolder;
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/BaseWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/BaseWebService.java
index e008c16..d790264 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/BaseWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/BaseWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName;
 import static org.apache.openmeetings.webservice.error.ServiceException.NO_PERMISSION;
 
@@ -38,11 +37,11 @@ import org.apache.openmeetings.db.entity.user.User.Right;
 import org.apache.openmeetings.db.util.AuthLevelUtil;
 import org.apache.openmeetings.webservice.error.ServiceException;
 import org.apache.wicket.Application;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public abstract class BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(BaseWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(BaseWebService.class);
 
 	static IApplication getApp() {
 		return (IApplication)Application.get(getWicketApplicationName());
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
index 1703043..f292b4c 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 
 import java.util.Calendar;
@@ -50,8 +49,8 @@ import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.User.Right;
 import org.apache.openmeetings.db.util.AuthLevelUtil;
 import org.apache.openmeetings.webservice.error.ServiceException;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -66,7 +65,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/calendar")
 public class CalendarWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(CalendarWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(CalendarWebService.class);
 
 	private static AppointmentDao getDao() {
 		return getBean(AppointmentDao.class);
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
index 6dc3ca3..ea9edaf 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 
 import javax.jws.WebMethod;
@@ -37,8 +36,8 @@ import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.dto.basic.ServiceResult;
 import org.apache.openmeetings.db.dto.basic.ServiceResult.Type;
 import org.apache.openmeetings.db.entity.server.Sessiondata;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -54,7 +53,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/error")
 public class ErrorWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(ErrorWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(ErrorWebService.class);
 
 	/**
 	 * loads an Error-Object. If a Method returns a negative Result, its an
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
index d5e038d..a06e520 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 
 import java.io.InputStream;
@@ -52,8 +51,8 @@ import org.apache.openmeetings.db.entity.user.User.Right;
 import org.apache.openmeetings.db.util.AuthLevelUtil;
 import org.apache.openmeetings.util.process.ProcessResultList;
 import org.apache.openmeetings.webservice.error.ServiceException;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -70,7 +69,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/file")
 public class FileWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(FileWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(FileWebService.class);
 
 	/**
 	 * deletes files or folders based on it id
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
index e7a7a03..163662c 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
@@ -19,7 +19,6 @@
 package org.apache.openmeetings.webservice;
 
 import static org.apache.commons.lang3.StringUtils.isAlphanumeric;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 
 import java.util.ArrayList;
@@ -52,8 +51,8 @@ import org.apache.openmeetings.db.entity.room.RoomGroup;
 import org.apache.openmeetings.db.entity.user.Group;
 import org.apache.openmeetings.db.entity.user.GroupUser;
 import org.apache.openmeetings.db.entity.user.User;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -70,7 +69,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/group")
 public class GroupWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(GroupWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(GroupWebService.class);
 
 	private static GroupDao getDao() {
 		return getBean(GroupDao.class);
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
index 49015e1..ccf2dfc 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
@@ -36,14 +35,14 @@ import javax.ws.rs.core.Response;
 import javax.ws.rs.core.Response.ResponseBuilder;
 
 import org.apache.cxf.jaxrs.ext.multipart.Multipart;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 @Service("netTestWebService")
 @Path("/networktest")
 public class NetTestWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(UserWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserWebService.class);
 	enum TestType {
 		UNKNOWN,
 		PING,
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
index d429143..eaa7890 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 
 import java.util.List;
@@ -40,8 +39,8 @@ import org.apache.openmeetings.db.dto.basic.ServiceResult;
 import org.apache.openmeetings.db.dto.basic.ServiceResult.Type;
 import org.apache.openmeetings.db.dto.record.RecordingDTO;
 import org.apache.openmeetings.db.entity.user.User;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -57,7 +56,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/record")
 public class RecordingWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(RecordingWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RecordingWebService.class);
 
 	private static RecordingDao getDao() {
 		return getBean(RecordingDao.class);
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
index fcea5e7..eb81dbb 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
@@ -18,7 +18,6 @@
  */
 package org.apache.openmeetings.webservice;
 
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 
 import java.util.ArrayList;
@@ -56,8 +55,8 @@ import org.apache.openmeetings.db.manager.IClientManager;
 import org.apache.openmeetings.db.util.ws.RoomMessage;
 import org.apache.openmeetings.service.room.InvitationManager;
 import org.apache.openmeetings.webservice.error.ServiceException;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -72,7 +71,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/room")
 public class RoomWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(RoomWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(RoomWebService.class);
 
 	/**
 	 * Returns an Object of Type RoomsList which contains a list of
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
index 1e58ae5..383e79b 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
@@ -21,7 +21,6 @@ package org.apache.openmeetings.webservice;
 import static org.apache.openmeetings.db.dto.basic.ServiceResult.UNKNOWN;
 import static org.apache.openmeetings.db.util.UserHelper.getMinPasswdLength;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getDefaultTimezone;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.webservice.Constants.TNS;
 import static org.apache.openmeetings.webservice.Constants.USER_SERVICE_NAME;
 import static org.apache.openmeetings.webservice.Constants.USER_SERVICE_PORT_NAME;
@@ -68,8 +67,8 @@ import org.apache.wicket.validation.IValidationError;
 import org.apache.wicket.validation.IValidator;
 import org.apache.wicket.validation.Validatable;
 import org.apache.wicket.validation.ValidationError;
-import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 
 /**
@@ -86,7 +85,7 @@ import org.springframework.stereotype.Service;
 @Produces({MediaType.APPLICATION_JSON})
 @Path("/user")
 public class UserWebService extends BaseWebService {
-	private static final Logger log = Red5LoggerFactory.getLogger(UserWebService.class, getWebAppRootKey());
+	private static final Logger log = LoggerFactory.getLogger(UserWebService.class);
 
 	/**
 	 * @param user - login or email of Openmeetings user with admin or SOAP-rights
diff --git a/pom.xml b/pom.xml
index 2f0f912..a03b2c6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,7 +61,6 @@
 		<wicket.version>8.0.0-M9</wicket.version>
 		<wicketju.version>8.0.0-M9.1</wicketju.version>
 		<wickets.version>8.0.0-M9</wickets.version>
-		<red5-server.version>1.0.10-M4</red5-server.version>
 		<red5-client.version>1.0.10-M4</red5-client.version>
 		<spring.version>4.3.14.RELEASE</spring.version>
 		<mina.version>2.0.16</mina.version>
@@ -110,7 +109,6 @@
 			<properties>
 				<maven.test.skip>true</maven.test.skip>
 				<om.quick.build>true</om.quick.build>
-				<red5-server.dwnd.skip>true</red5-server.dwnd.skip>
 				<wicket.mode>DEVELOPMENT</wicket.mode>
 				<src.pack.skip>true</src.pack.skip>
 			</properties>
@@ -639,12 +637,6 @@
 			</dependency>
 			<dependency>
 				<groupId>org.red5</groupId>
-				<artifactId>red5-server</artifactId>
-				<version>${red5-server.version}</version>
-				<optional>true</optional>
-			</dependency>
-			<dependency>
-				<groupId>org.red5</groupId>
 				<artifactId>red5-client</artifactId>
 				<version>${red5-client.version}</version>
 			</dependency>
@@ -661,6 +653,17 @@
 			</dependency>
 			<dependency>
 				<groupId>org.springframework</groupId>
+				<artifactId>spring-context-support</artifactId>
+				<version>${spring.version}</version>
+				<exclusions>
+					<exclusion>
+						<groupId>commons-logging</groupId>
+						<artifactId>commons-logging</artifactId>
+					</exclusion>
+				</exclusions>
+			</dependency>
+			<dependency>
+				<groupId>org.springframework</groupId>
 				<artifactId>spring-orm</artifactId>
 				<version>${spring.version}</version>
 				<exclusions>

-- 
To stop receiving notification emails like this one, please contact
solomax@apache.org.