You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ya...@apache.org on 2025/04/27 02:18:41 UTC

(airavata) 07/07: fix deprecations, cleanup code. add placeholders for job monitor email/pw in airavata-server.properties

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

yasith pushed a commit to branch cybershuttle-dev
in repository https://gitbox.apache.org/repos/asf/airavata.git

commit fba22eaa1c6c1ea030d0427105c0a1c1caa28f15
Author: yasithdev <ya...@icloud.com>
AuthorDate: Fri Mar 21 23:43:19 2025 +0000

    fix deprecations, cleanup code. add placeholders for job monitor email/pw in airavata-server.properties
---
 airavata-api/airavata-api-server/pom.xml           |  21 -
 .../api/server/handler/AiravataServerHandler.java  |  23 +-
 airavata-api/airavata-api-stubs/pom.xml            |  27 -
 .../airavata/api/client/AiravataClientFactory.java |   3 +-
 airavata-api/airavata-base-api/pom.xml             |   2 -
 .../java-client-samples/pom.xml                    |  11 -
 .../airavata/client/samples/CancelExperiments.java |   7 +-
 .../tools/RegisterSampleApplicationsUtils.java     |   3 +-
 airavata-api/airavata-data-models/pom.xml          |  29 -
 airavata-api/airavata-model-utils/pom.xml          |   2 -
 .../airavata/model/util/ComputeResourceUtil.java   |   4 -
 .../GroupComputeResourcePreferenceUtilTest.java    |   8 +-
 airavata-services/pom.xml                          |   2 -
 .../iam-admin-services-core/pom.xml                |  36 +-
 airavata-services/profile-service/pom.xml          |   1 -
 .../profile/client/samples/UserProfileSample.java  |   3 -
 .../profile-service-commons/pom.xml                |  28 +-
 .../commons/repositories/AbstractRepository.java   |  16 +-
 .../commons/tenant/entities/GatewayEntity.java     |   3 +-
 .../user/entities/NSFDemographicsEntity.java       |   1 +
 .../commons/user/entities/UserProfileEntity.java   |   1 +
 .../service/profile/commons/utils/JPAUtils.java    |   1 -
 .../commons/utils/ObjectMapperSingleton.java       |  18 +-
 .../commons/utils/ProfileServiceJDBCConfig.java    |   1 -
 .../handlers/GroupManagerServiceHandler.java       |   8 +-
 .../profile/handlers/IamAdminServicesHandler.java  |   6 +-
 .../handlers/UserProfileServiceHandler.java        |   3 +-
 .../profile/server/ProfileServiceServer.java       |   6 +-
 .../profile-service/profile-tenant-core/pom.xml    |   1 -
 .../profile-service/profile-user-core/pom.xml      |   8 +-
 .../core/repositories/UserProfileRepository.java   |   4 +-
 airavata-services/services-security/pom.xml        |  60 +-
 modules/agent-framework/agent-service/pom.xml      |  20 +-
 .../service/controllers/AgentController.java       |  26 +-
 .../service/controllers/ExperimentController.java  |  11 +-
 .../service/controllers/PlanController.java        |   8 +-
 .../service/db/entity/AgentExecution.java          |   3 +-
 .../service/handlers/AgentConnectionHandler.java   |  46 +-
 .../service/handlers/AgentManagementHandler.java   |  10 +-
 .../service/models/AgentLaunchRequest.java         |   4 +-
 .../service/services/AiravataFileService.java      |  24 +-
 .../service/services/AiravataService.java          |  13 +-
 modules/airavata-helix/agent-api/pom.xml           |  33 +-
 .../apache/airavata/agents/api/AdaptorParams.java  |   2 +-
 .../apache/airavata/agents/api/AgentAdaptor.java   |   3 -
 .../apache/airavata/agents/api/CommandOutput.java  |   2 -
 .../airavata-helix/agent-impl/ssh-agent/pom.xml    |   1 -
 .../airavata/helix/agent/ssh/SshAdaptorParams.java |   4 +-
 .../airavata/helix/agent/ssh/SshAgentAdaptor.java  |   4 +-
 .../helix/agent/ssh/StandardOutReader.java         |   5 +-
 .../airavata/helix/adaptor/PoolingSSHJClient.java  |   4 +-
 .../airavata/helix/adaptor/SSHJAgentAdaptor.java   |   8 +-
 modules/airavata-helix/helix-spectator/pom.xml     |  26 +-
 .../helix/impl/controller/HelixController.java     |   2 -
 .../airavata/helix/impl/task/AiravataTask.java     |  41 +-
 .../airavata/helix/impl/task/TaskContext.java      |  19 +-
 .../impl/task/cancel/CancelCompletingTask.java     |   1 -
 .../helix/impl/task/completing/CompletingTask.java |   2 -
 .../helix/impl/task/parsing/DataParsingTask.java   |   6 +-
 .../impl/task/parsing/ParsingTriggeringTask.java   |   8 +-
 .../impl/task/staging/OutputDataStagingTask.java   |   4 -
 .../task/submission/DefaultJobSubmissionTask.java  |  17 +-
 .../impl/task/submission/JobSubmissionTask.java    |   3 +-
 .../task/submission/LocalJobSubmissionTask.java    |   8 -
 .../task/submission/config/GroovyMapBuilder.java   |   6 +-
 .../config/app/ForkJobConfiguration.java           |   4 +-
 .../config/app/HTCondorJobConfiguration.java       |   6 +-
 .../submission/config/app/LSFJobConfiguration.java |   4 +-
 .../submission/config/app/PBSJobConfiguration.java |   4 +-
 .../config/app/SlurmJobConfiguration.java          |   8 +-
 .../submission/config/app/UGEJobConfiguration.java |   4 +-
 .../config/app/parser/HTCondorOutputParser.java    |   1 -
 .../helix/impl/workflow/ParserWorkflowManager.java |   3 +-
 .../helix/impl/workflow/PostWorkflowManager.java   |  14 +-
 .../helix/impl/workflow/PreWorkflowManager.java    |   4 +-
 modules/airavata-helix/task-api/pom.xml            |  43 +-
 .../helix/task/api/support/AdaptorSupport.java     |   6 +-
 .../task-api/src/main/resources/logback.xml        |  28 +
 modules/airavata-helix/task-core/pom.xml           |  14 -
 .../org/apache/airavata/helix/core/OutPort.java    |   1 -
 .../helix/core/participant/HelixParticipant.java   |   6 +-
 .../core/support/adaptor/AdaptorSupportImpl.java   |   4 +-
 .../helix/core/support/adaptor/AgentStore.java     |   1 -
 .../apache/airavata/helix/core/util/TaskUtil.java  |   5 +-
 modules/airavata-helix/workflow-impl/pom.xml       |  16 -
 .../metadata/analyzer/impl/DataAnalyzerImpl.java   |   1 -
 .../metascheduler/core/api/ProcessScheduler.java   |   4 -
 .../airavata/metascheduler/core/utils/Utils.java   |   1 -
 .../scheduling/api/ProcessSchedulerImpl.java       |   1 -
 .../ComputeResourceSelectionPolicyImpl.java        |   1 -
 .../DefaultComputeResourceSelectionPolicy.java     |   1 -
 .../selection/MultipleComputeResourcePolicy.java   |   6 +-
 .../rescheduler/ExponentialBackOffReScheduler.java |   1 -
 .../engine/rescheduler/ProcessScannerImpl.java     |   2 -
 .../monitoring/ClusterStatusMonitorJob.java        |   2 +-
 .../ClusterStatusMonitorJobScheduler.java          |  12 +-
 modules/commons/pom.xml                            |  70 +--
 .../airavata/common/utils/ApplicationSettings.java |   6 +-
 .../common/utils/DBEventManagerConstants.java      |   2 -
 .../airavata/common/utils/DatabaseCreator.java     |   7 +-
 .../airavata/common/utils/DerbyTestUtil.java       |  16 +-
 .../apache/airavata/common/utils/DerbyUtil.java    |   8 +-
 .../org/apache/airavata/common/utils/IOUtil.java   |  14 +-
 .../org/apache/airavata/common/utils/JPAUtils.java |   8 +-
 .../org/apache/airavata/common/utils/JSONUtil.java |  13 +-
 .../apache/airavata/common/utils/StringUtil.java   | 147 ++---
 .../apache/airavata/common/utils/SwingUtil.java    |  18 +-
 .../airavata/common/utils/ThriftClientPool.java    |   6 +-
 .../apache/airavata/common/utils/WSConstants.java  |   7 -
 .../org/apache/airavata/common/utils/WSDLUtil.java | 525 +++-------------
 .../airavata/common/utils/SecurityUtilTest.java    |   1 -
 .../common/utils/ThriftClientPoolTest.java         |  12 +-
 .../ComputationalResourceMonitoringService.java    |   1 -
 .../monitoring/job/ComputeResourceMonitor.java     |   2 -
 .../resource/monitoring/job/MonitoringJob.java     |   1 -
 .../src/main/resources/airavata-server.properties  | 299 ++++------
 .../server/src/main/resources/logback.xml          |  53 ++
 .../credential-store-service/pom.xml               |  78 +--
 .../impl/certificate/CertificateCredential.java    |   1 +
 .../store/credential/impl/ssh/SSHCredential.java   |   1 +
 .../store/notifier/NotifierBootstrap.java          |   5 +-
 .../store/notifier/impl/EmailNotifier.java         |   5 +-
 .../store/server/CredentialStoreServerHandler.java |   7 +-
 .../store/servlet/CredentialBootstrapper.java      |  34 +-
 .../servlet/CredentialStoreCallbackServlet.java    | 280 ++++-----
 .../store/servlet/CredentialStoreStartServlet.java | 181 +++---
 .../store/impl/CertificateCredentialWriter.java    |   4 +-
 .../store/store/impl/CredentialReaderImpl.java     |   2 +-
 .../store/store/impl/SSHCredentialWriter.java      |   6 +-
 .../credential/store/store/impl/db/ParentDAO.java  |   1 -
 .../credential/store/util/TokenGenerator.java      |   1 -
 .../store/notifier/impl/EmailNotifierTest.java     |   1 -
 .../credential-store-stubs/pom.xml                 |  38 --
 .../store/client/CredentialStoreClientFactory.java |   2 -
 .../credential/store/client/TestSSLClient.java     |   5 +-
 .../db/event/manager/DBEventManagerRunner.java     |   6 +-
 .../messaging/DBEventManagerMessagingFactory.java  |   1 -
 .../messaging/impl/DBEventMessageHandler.java      |   4 -
 .../airavata/db/event/manager/utils/Constants.java |   4 -
 .../event/manager/utils/DbEventManagerZkUtils.java |   1 -
 modules/distribution/pom.xml                       |  82 +--
 .../src/main/assembly/api-server-bin-assembly.xml  |  60 +-
 .../src/main/assembly/api-server-src-assembly.xml  |  78 ---
 .../src/main/assembly/controller-bin-assembly.xml  |  75 +--
 .../main/assembly/email-monitor-bin-assembly.xml   |  17 +-
 .../src/main/assembly/parser-wm-bin-assembly.xml   |  73 +--
 .../src/main/assembly/participant-bin-assembly.xml |  77 +--
 .../src/main/assembly/post-wm-bin-assembly.xml     |  55 +-
 .../src/main/assembly/pre-wm-bin-assembly.xml      |  50 +-
 .../assembly/realtime-monitor-bin-assembly.xml     |  20 +-
 modules/file-server/pom.xml                        |   8 +-
 .../file/server/FileServerApplication.java         |   1 -
 .../file/server/FileServerConfiguration.java       |   1 -
 .../file/server/controller/FileController.java     |   1 -
 modules/ide-integration/pom.xml                    |   4 +
 .../app/tests/selenium/pom.xml                     |  21 +-
 .../src/main/resources/airavata-server.properties  |   5 +-
 modules/job-monitor/email-monitor/pom.xml          |   1 +
 .../airavata/monitor/email/EmailBasedMonitor.java  |  15 +-
 .../email/parser/AiravataCustomMailParser.java     |   4 +-
 .../airavata/monitor/email/parser/EmailParser.java |   5 +-
 .../monitor/email/parser/HTCondorEmailParser.java  |   5 +-
 .../monitor/email/parser/LSFEmailParser.java       |   4 +-
 .../monitor/email/parser/PBSEmailParser.java       |   5 +-
 .../monitor/email/parser/SLURMEmailParser.java     |   4 +-
 .../monitor/email/parser/UGEEmailParser.java       |   4 +-
 modules/job-monitor/job-monitor-api/pom.xml        |   1 -
 .../apache/airavata/monitor/JobStateValidator.java |  10 +-
 .../monitor/kafka/JobStatusResultDeserializer.java |   2 +-
 modules/job-monitor/pom.xml                        |   2 -
 .../src/main/resources/log4j.properties            |  28 -
 .../src/main/resources/log4j2.xml                  |  53 --
 .../src/main/resources/logback.xml                 |  35 ++
 modules/messaging/client/pom.xml                   |   8 +-
 .../messaging/client/RabbitMQListener.java         |  12 +-
 .../airavata/messaging/client/TestReader.java      |   3 -
 modules/messaging/core/pom.xml                     |  12 +-
 .../airavata/messaging/core/MessagingFactory.java  |   9 +-
 .../apache/airavata/messaging/core/TestClient.java |   1 -
 .../messaging/core/impl/ExperimentConsumer.java    |  30 +-
 .../messaging/core/impl/MessageConsumer.java       |  29 +-
 .../messaging/core/impl/ProcessConsumer.java       |  28 +-
 .../messaging/core/impl/RabbitMQPublisher.java     |   7 +-
 .../messaging/core/impl/RabbitMQSubscriber.java    |   9 +-
 .../messaging/core/impl/StatusConsumer.java        |  16 +-
 .../messaging/core/stats/LatencyWriterTask.java    |   1 -
 .../airavata/messaging/core/stats/StatCounter.java |   2 +-
 .../messaging/core/util/DBEventPublisherUtils.java |   8 +-
 modules/orchestrator/orchestrator-client/pom.xml   |  13 +-
 modules/orchestrator/orchestrator-core/pom.xml     |  26 -
 .../orchestrator/core/schedule/HostScheduler.java  |   4 +-
 .../orchestrator/core/utils/OrchestratorUtils.java |   5 +-
 .../core/validator/JobMetadataValidator.java       |   1 -
 .../core/validator/impl/BatchQueueValidator.java   |   3 +-
 modules/orchestrator/orchestrator-service/pom.xml  |  16 +-
 .../server/OrchestratorServerHandler.java          |   2 +-
 .../util/OrchestratorServerThreadPoolExecutor.java |   7 +-
 modules/platform-monitoring/pom.xml                |   2 +-
 modules/registry/registry-core/pom.xml             |  65 +-
 .../AiravataWorkflowEntity.java                    |   1 +
 .../AiravataWorkflowErrorEntity.java               |   1 +
 .../AiravataWorkflowStatusEntity.java              |   2 +-
 .../ApplicationErrorEntity.java                    |   1 +
 .../ApplicationStatusEntity.java                   |   2 +-
 .../HandlerErrorEntity.java                        |   1 +
 .../HandlerInputEntity.java                        |   2 +-
 .../HandlerOutputEntity.java                       |   2 +-
 .../HandlerStatusEntity.java                       |   1 +
 .../WorkflowApplicationEntity.java                 |   3 +-
 .../WorkflowConnectionEntity.java                  |   2 +-
 .../WorkflowDataBlockEntity.java                   |   1 +
 .../WorkflowHandlerEntity.java                     |   2 +-
 .../entities/appcatalog/AppEnvironmentEntity.java  |   1 +
 .../appcatalog/AppModuleMappingEntity.java         |   1 +
 .../appcatalog/ApplicationDeploymentEntity.java    |   2 +-
 .../appcatalog/ApplicationInputEntity.java         |   2 +-
 .../appcatalog/ApplicationInterfaceEntity.java     |   1 +
 .../appcatalog/ApplicationModuleEntity.java        |   1 +
 .../appcatalog/ApplicationOutputEntity.java        |   2 +-
 .../core/entities/appcatalog/BatchQueueEntity.java |   1 +
 .../appcatalog/CloudJobSubmissionEntity.java       |   2 +-
 .../entities/appcatalog/ComputeResourceEntity.java |   2 +-
 .../ComputeResourceFileSystemEntity.java           |   2 +-
 .../ComputeResourcePreferenceEntity.java           |   2 +-
 .../ComputeResourceReservationEntity.java          |  14 +-
 .../appcatalog/DataMovementInterfaceEntity.java    |   2 +-
 .../entities/appcatalog/GatewayGroupsEntity.java   |   1 +
 .../entities/appcatalog/GatewayProfileEntity.java  |   1 +
 .../appcatalog/GlobusGkEndpointEntity.java         |   1 +
 .../appcatalog/GlobusSubmissionEntity.java         |   2 +-
 .../appcatalog/GridftpDataMovementEntity.java      |   2 +-
 .../entities/appcatalog/GridftpEndpointEntity.java |   1 +
 .../appcatalog/GroupComputeResourcePrefEntity.java |  15 +-
 .../appcatalog/GroupResourceProfileEntity.java     |   9 +-
 .../GroupSSHAccountProvisionerConfig.java          |  11 +-
 .../entities/appcatalog/GsisshExportEntity.java    |   1 +
 .../appcatalog/GsisshPostjobcommandEntity.java     |   1 +
 .../appcatalog/GsisshPrejobcommandEntity.java      |   1 +
 .../appcatalog/GsisshSubmissionEntity.java         |   1 +
 .../appcatalog/JobManagerCommandEntity.java        |   2 +-
 .../appcatalog/JobSubmissionInterfaceEntity.java   |   2 +-
 .../appcatalog/LibraryApendPathEntity.java         |   1 +
 .../appcatalog/LibraryPrependPathEntity.java       |   1 +
 .../appcatalog/LocalDataMovementEntity.java        |   1 +
 .../entities/appcatalog/LocalSubmissionEntity.java |   2 +-
 .../entities/appcatalog/ModuleLoadCmdEntity.java   |   2 +
 .../appcatalog/ParallelismCommandEntity.java       |   2 +-
 .../entities/appcatalog/ParserConnectorEntity.java |   1 +
 .../appcatalog/ParserConnectorInputEntity.java     |   1 +
 .../core/entities/appcatalog/ParserEntity.java     |   1 +
 .../entities/appcatalog/ParserInputEntity.java     |   1 +
 .../entities/appcatalog/ParserOutputEntity.java    |   1 +
 .../entities/appcatalog/ParsingTemplateEntity.java |   1 +
 .../appcatalog/ParsingTemplateInputEntity.java     |   1 +
 .../entities/appcatalog/PostjobCommandEntity.java  |   1 +
 .../entities/appcatalog/PrejobCommandEntity.java   |   1 +
 .../appcatalog/ResourceJobManagerEntity.java       |   2 +-
 .../entities/appcatalog/ScpDataMovementEntity.java |   2 +-
 .../appcatalog/SshJobSubmissionEntity.java         |   2 +-
 .../appcatalog/StorageInterfaceEntity.java         |   2 +-
 .../appcatalog/StoragePreferenceEntity.java        |   1 +
 .../entities/appcatalog/StorageResourceEntity.java |   1 +
 .../appcatalog/UnicoreDatamovementEntity.java      |   7 +-
 .../appcatalog/UnicoreSubmissionEntity.java        |   2 +-
 .../UserComputeResourcePreferenceEntity.java       |   1 +
 .../appcatalog/UserResourceProfileEntity.java      |   3 +-
 .../ComputationalResourceSchedulingEntity.java     |   1 +
 .../core/entities/expcatalog/ExperimentEntity.java |   2 +-
 .../entities/expcatalog/ExperimentErrorEntity.java |   2 +-
 .../entities/expcatalog/ExperimentInputEntity.java |   2 +-
 .../expcatalog/ExperimentOutputEntity.java         |   2 +-
 .../expcatalog/ExperimentStatusEntity.java         |   2 +-
 .../expcatalog/ExperimentSummaryEntity.java        |   5 +-
 .../core/entities/expcatalog/GatewayEntity.java    |   2 +-
 .../GatewayUsageReportingCommandEntity.java        |   1 +
 .../entities/expcatalog/GatewayWorkerEntity.java   |   1 +
 .../core/entities/expcatalog/JobEntity.java        |   1 +
 .../core/entities/expcatalog/JobStatusEntity.java  |   2 +-
 .../entities/expcatalog/NotificationEntity.java    |   2 +-
 .../core/entities/expcatalog/ProcessEntity.java    |   1 +
 .../entities/expcatalog/ProcessErrorEntity.java    |   2 +-
 .../entities/expcatalog/ProcessInputEntity.java    |   2 +-
 .../entities/expcatalog/ProcessOutputEntity.java   |   2 +-
 .../expcatalog/ProcessResourceScheduleEntity.java  |   1 +
 .../entities/expcatalog/ProcessStatusEntity.java   |   2 +-
 .../entities/expcatalog/ProcessWorkflowPK.java     |   2 -
 .../core/entities/expcatalog/ProjectEntity.java    |   7 +-
 .../entities/expcatalog/ProjectUserEntity.java     |   1 +
 .../entities/expcatalog/QueueStatusEntity.java     |   2 +-
 .../core/entities/expcatalog/QueueStatusPK.java    |   1 -
 .../core/entities/expcatalog/TaskEntity.java       |   2 +-
 .../core/entities/expcatalog/TaskErrorEntity.java  |   2 +-
 .../core/entities/expcatalog/TaskStatusEntity.java |   2 +-
 .../expcatalog/UserConfigurationDataEntity.java    |   1 +
 .../replicacatalog/ConfigurationEntity.java        |   1 +
 .../entities/replicacatalog/DataProductEntity.java |   2 +-
 .../replicacatalog/DataProductMetadataEntity.java  |   1 +
 .../replicacatalog/DataReplicaLocationEntity.java  |   2 +-
 .../replicacatalog/DataReplicaMetadataEntity.java  |   1 +
 .../workflowcatalog/ComponentStatusEntity.java     |   1 +
 .../core/entities/workflowcatalog/EdgeEntity.java  |   2 +-
 .../core/entities/workflowcatalog/NodeEntity.java  |   2 +-
 .../core/entities/workflowcatalog/PortEntity.java  |   2 +-
 .../entities/workflowcatalog/WorkflowEntity.java   |   7 +-
 .../workflowcatalog/WorkflowInputEntity.java       |   1 +
 .../workflowcatalog/WorkflowOutputEntity.java      |   1 +
 .../workflowcatalog/WorkflowStatusEntity.java      |   1 +
 .../core/repositories/AbstractRepository.java      |   2 +-
 .../appcatalog/AppCatAbstractRepository.java       |   3 +-
 .../ApplicationDeploymentRepository.java           |   4 +-
 .../appcatalog/ApplicationInterfaceRepository.java |   4 +-
 .../appcatalog/ComputeResourceRepository.java      |  37 +-
 .../appcatalog/DataMovementRepository.java         |   2 +-
 .../appcatalog/GroupResourceProfileRepository.java |   6 +-
 .../appcatalog/GwyResourceProfileRepository.java   |   2 +-
 .../JobSubmissionInterfaceRepository.java          |   2 +-
 .../repositories/appcatalog/ParserRepository.java  |   2 +-
 .../appcatalog/ResourceJobManagerRepository.java   |   6 +-
 .../appcatalog/StorageResourceRepository.java      |   3 +-
 .../UserComputeResourcePreferenceRepository.java   |   2 -
 .../appcatalog/UserResourceProfileRepository.java  |   8 +-
 .../UserStoragePreferenceRepository.java           |   2 -
 .../expcatalog/ExpCatAbstractRepository.java       |   3 +-
 .../expcatalog/ExperimentErrorRepository.java      |   2 +-
 .../expcatalog/ExperimentInputRepository.java      |   2 +-
 .../expcatalog/ExperimentOutputRepository.java     |   2 +-
 .../expcatalog/ExperimentRepository.java           |   4 +-
 .../expcatalog/ExperimentStatusRepository.java     |   2 +-
 .../expcatalog/ExperimentSummaryRepository.java    |   9 +-
 .../repositories/expcatalog/GatewayRepository.java |   2 +-
 .../GatewayUsageReportingCommandRepository.java    |   2 +-
 .../repositories/expcatalog/JobRepository.java     |   2 +-
 .../expcatalog/JobStatusRepository.java            |   5 +-
 .../expcatalog/NotificationRepository.java         |   2 +-
 .../expcatalog/ProcessErrorRepository.java         |   9 +-
 .../expcatalog/ProcessInputRepository.java         |   4 +-
 .../expcatalog/ProcessOutputRepository.java        |   4 +-
 .../repositories/expcatalog/ProcessRepository.java |   2 +-
 .../expcatalog/ProcessStatusRepository.java        |   3 +-
 .../expcatalog/ProcessWorkflowRepository.java      |   2 +-
 .../repositories/expcatalog/ProjectRepository.java |   7 +-
 .../expcatalog/QueueStatusRepository.java          |   2 +-
 .../expcatalog/TaskErrorRepository.java            |   2 +-
 .../repositories/expcatalog/TaskRepository.java    |   2 +-
 .../expcatalog/TaskStatusRepository.java           |   2 +-
 .../replicacatalog/DataProductRepository.java      |   9 +-
 .../DataReplicaLocationRepository.java             |   2 +-
 .../replicacatalog/RepCatAbstractRepository.java   |   3 +-
 .../WorkflowCatAbstractRepository.java             |   3 +-
 .../workflowcatalog/WorkflowRepository.java        |   7 +-
 .../core/utils/AppCatalogDBInitConfig.java         |   2 -
 .../registry/core/utils/CustomBeanFactory.java     |  22 +-
 .../utils/DozerConverter/CsvStringConverter.java   |   4 +-
 .../utils/DozerConverter/StorageDateConverter.java |   2 +-
 .../core/utils/JPAUtil/AppCatalogJPAUtils.java     |   1 -
 .../core/utils/JPAUtil/ExpCatalogJPAUtils.java     |   1 -
 .../core/utils/JPAUtil/RepCatalogJPAUtils.java     |   1 -
 .../utils/JPAUtil/WorkflowCatalogJPAUtils.java     |   1 -
 .../registry/core/utils/ObjectMapperSingleton.java |  25 +-
 .../registry/core/utils/QueryConstants.java        |   4 -
 .../core/utils/migration/MappingToolRunner.java    |   3 +-
 .../utils/migration/MigrationSchemaGenerator.java  |  10 +-
 .../ApplicationDeploymentRepositoryTest.java       |  53 +-
 .../appcatalog/GatewayProfileRepositoryTest.java   |   4 +-
 .../GroupResourceProfileRepositoryTest.java        |  12 +-
 .../appcatalog/StorageResourceRepositoryTest.java  |   6 +-
 .../UserResourceProfileRepositoryTest.java         |   4 +-
 .../core/repositories/common/TestBase.java         |   6 +-
 .../expcatalog/ExperimentErrorRepositoryTest.java  |   1 +
 .../expcatalog/ExperimentInputRepositoryTest.java  |   1 +
 .../expcatalog/ExperimentOutputRepositoryTest.java |   1 +
 .../expcatalog/GatewayRepositoryTest.java          |   4 +-
 .../repositories/expcatalog/JobRepositoryTest.java |   5 +-
 .../expcatalog/ProcessErrorRepositoryTest.java     |   1 +
 .../expcatalog/ProcessInputRepositoryTest.java     |   1 +
 .../expcatalog/ProcessOutputRepositoryTest.java    |   1 +
 .../expcatalog/ProcessStatusRepositoryTest.java    |   4 +-
 .../expcatalog/QueueStatusRepositoryTest.java      |   1 +
 .../replicacatalog/DataProductRepositoryTest.java  |  10 +-
 .../DataReplicaLocationRepositoryTest.java         |   1 -
 .../core/utils/ObjectMapperSingletonTest.java      |  25 +
 modules/registry/registry-cpi/pom.xml              |   2 -
 .../airavata/registry/cpi/UsrResourceProfile.java  |   3 +-
 .../airavata/registry/cpi/WorkflowCatalog.java     |   3 -
 .../registry-server/registry-api-service/pom.xml   |   8 -
 .../registry/api/service/RegistryAPIServer.java    |   8 +-
 .../api/service/handler/RegistryServerHandler.java |   3 +-
 .../registry-server/registry-api-stubs/pom.xml     |   3 -
 .../computeresource/BatchQueueGenerator.java       |   5 +-
 .../ComputeResourceDescriptionGenerator.java       |   5 +-
 .../DataMovementInterfaceGenerator.java            |   5 +-
 .../computeresource/FileSystemsGenerator.java      |   5 +-
 .../GridFTPDataMovementGenerator.java              |   5 +-
 .../computeresource/GridFTPEndpointsGenerator.java |   5 +-
 .../JobManagerCommandGenerator.java                |   5 +-
 .../JobSubmissionInterfaceGenerator.java           |   5 +-
 .../LocalDataMovementGenerator.java                |   5 +-
 .../computeresource/LocalSubmissionGenerator.java  |   5 +-
 .../ResourceJobManagerGenerator.java               |   5 +-
 .../computeresource/SCPDataMovementGenerator.java  |   5 +-
 .../computeresource/SSHJobSubmissionGenerator.java |   5 +-
 .../main/java/generators/JPAClassGenerator.java    |   5 +-
 .../java/generators/JPAResourceClassGenerator.java |   5 +-
 .../src/main/java/generators/SQLGenerator.java     |   6 +-
 .../jpa-gen/src/main/java/test/Test.java           |   5 +-
 .../registry/registry-tools/registry-tool/pom.xml  |  21 -
 .../apache/airavata/registry/tool/DBMigrator.java  |   4 +-
 .../research-framework/research-service/pom.xml    | 102 ++--
 .../service/config/DevDataInitializer.java         |   6 +-
 .../research/service/config/OpenApiConfig.java     |   7 -
 .../service/controller/SessionController.java      |   4 -
 .../research/service/handlers/ProjectHandler.java  |   2 -
 .../service/handlers/ResearchHubHandler.java       |   2 +-
 .../research/service/model/entity/Project.java     |  11 +-
 .../research/service/model/entity/Resource.java    |  18 +-
 .../research/service/model/entity/Session.java     |  12 +-
 .../research/service/model/entity/Tag.java         |   6 +-
 modules/security/pom.xml                           |   2 -
 .../airavata/security/AbstractAuthenticator.java   |   2 -
 .../security/userstore/AbstractJDBCUserStore.java  |   1 -
 .../airavata/security/userstore/JDBCUserStore.java |   2 +-
 .../security/userstore/SessionDBUserStore.java     |   2 +-
 .../airavata/security/util/TrustStoreManager.java  |   4 +-
 modules/server/pom.xml                             |   3 +-
 .../org/apache/airavata/server/ServerMain.java     |  17 +-
 .../sharing-registry/sharing-data-migrator/pom.xml |   9 +-
 .../sharing-registry-distribution/pom.xml          |  22 +-
 .../sharing-registry-server/pom.xml                |  29 +-
 .../sharing/registry/db/entities/DomainEntity.java |   3 +-
 .../sharing/registry/db/entities/EntityEntity.java |   3 +-
 .../sharing/registry/db/entities/EntityPK.java     |   4 +-
 .../registry/db/entities/EntityTypeEntity.java     |   3 +-
 .../sharing/registry/db/entities/EntityTypePK.java |   4 +-
 .../registry/db/entities/GroupAdminEntity.java     |   3 +-
 .../sharing/registry/db/entities/GroupAdminPK.java |   4 +-
 .../db/entities/GroupMembershipEntity.java         |   3 +-
 .../registry/db/entities/GroupMembershipPK.java    |   4 +-
 .../registry/db/entities/PermissionTypeEntity.java |   3 +-
 .../registry/db/entities/PermissionTypePK.java     |   4 +-
 .../registry/db/entities/SharingEntity.java        |   3 +-
 .../sharing/registry/db/entities/SharingPK.java    |   4 +-
 .../sharing/registry/db/entities/UserEntity.java   |   3 +-
 .../registry/db/entities/UserGroupEntity.java      |   2 +-
 .../sharing/registry/db/entities/UserGroupPK.java  |   4 +-
 .../sharing/registry/db/entities/UserPK.java       |   4 +-
 .../db/repositories/AbstractRepository.java        |  14 +-
 .../registry/db/repositories/EntityRepository.java |   5 +-
 .../db/repositories/PermissionTypeRepository.java  |   2 +-
 .../db/repositories/SharingRepository.java         |   3 +-
 .../sharing/registry/db/utils/JPAUtils.java        |   1 -
 .../registry/db/utils/ObjectMapperSingleton.java   |  18 +-
 .../messaging/SharingServiceDBEventHandler.java    |   6 +-
 .../server/SharingRegistryServerHandler.java       |   2 +-
 .../registry/SharingRegistryServerHandlerTest.java |   2 +-
 .../sharing-registry-stubs/pom.xml                 |  23 +-
 pom.xml                                            | 663 ++++++++++++++-------
 tools/load-client/pom.xml                          |  27 +-
 .../apache/airavata/tools/load/Configurations.java |   2 -
 .../org/apache/airavata/tools/load/LoadClient.java |   8 +-
 .../airavata/tools/load/SecurityManager.java       |  10 +-
 .../org/apache/airavata/tools/load/UnitLoad.java   |   2 -
 461 files changed, 2144 insertions(+), 3673 deletions(-)

diff --git a/airavata-api/airavata-api-server/pom.xml b/airavata-api/airavata-api-server/pom.xml
index c4d1702487..661c72faa4 100644
--- a/airavata-api/airavata-api-server/pom.xml
+++ b/airavata-api/airavata-api-server/pom.xml
@@ -98,45 +98,25 @@
             <artifactId>compute-account-provisioning</artifactId>
             <version>${project.version}</version>
         </dependency>
-        <!--<dependency>-->
-            <!--<groupId>org.apache.airavata</groupId>-->
-            <!--<artifactId>group-manager</artifactId>-->
-            <!--<version>${project.version}</version>-->
-        <!--</dependency>-->
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.curator</groupId>
             <artifactId>curator-framework</artifactId>
-            <version>${curator.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>${httpclient.version}</version>
         </dependency>
         <dependency>
             <groupId>com.google.inject</groupId>
             <artifactId>guice</artifactId>
-            <version>${guice.version}</version>
         </dependency>
         <dependency>
             <groupId>aopalliance</groupId>
             <artifactId>aopalliance</artifactId>
-            <version>${aopalliance.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.oltu.oauth2</groupId>
-            <artifactId>org.apache.oltu.oauth2.client</artifactId>
-            <version>${oltu.oauth2.client.version}</version>
         </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-databind</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -146,7 +126,6 @@
         <dependency>
             <groupId>org.jmockit</groupId>
             <artifactId>jmockit</artifactId>
-            <version>${jmockit.version}</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index dc62989604..ca7bfcda5a 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -25,9 +25,6 @@ import org.apache.airavata.accountprovisioning.SSHAccountProvisionerFactory;
 import org.apache.airavata.accountprovisioning.SSHAccountProvisionerProvider;
 import org.apache.airavata.api.Airavata;
 import org.apache.airavata.api.airavata_apiConstants;
-import org.apache.airavata.model.appcatalog.parser.Parser;
-import org.apache.airavata.model.appcatalog.parser.ParsingTemplate;
-import org.apache.airavata.service.security.GatewayGroupsInitializer;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.AiravataUtils;
@@ -54,6 +51,8 @@ import org.apache.airavata.model.appcatalog.groupresourceprofile.BatchQueueResou
 import org.apache.airavata.model.appcatalog.groupresourceprofile.ComputeResourcePolicy;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupComputeResourcePreference;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupResourceProfile;
+import org.apache.airavata.model.appcatalog.parser.Parser;
+import org.apache.airavata.model.appcatalog.parser.ParsingTemplate;
 import org.apache.airavata.model.appcatalog.storageresource.StorageResourceDescription;
 import org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference;
 import org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile;
@@ -61,9 +60,12 @@ import org.apache.airavata.model.appcatalog.userresourceprofile.UserStoragePrefe
 import org.apache.airavata.model.application.io.InputDataObjectType;
 import org.apache.airavata.model.application.io.OutputDataObjectType;
 import org.apache.airavata.model.commons.airavata_commonsConstants;
-import org.apache.airavata.model.credential.store.*;
-import org.apache.airavata.model.data.movement.DMType;
+import org.apache.airavata.model.credential.store.CredentialSummary;
+import org.apache.airavata.model.credential.store.PasswordCredential;
+import org.apache.airavata.model.credential.store.SSHCredential;
+import org.apache.airavata.model.credential.store.SummaryType;
 import org.apache.airavata.model.data.movement.*;
+import org.apache.airavata.model.data.movement.DMType;
 import org.apache.airavata.model.data.replica.DataProductModel;
 import org.apache.airavata.model.data.replica.DataReplicaLocationModel;
 import org.apache.airavata.model.error.*;
@@ -78,21 +80,14 @@ import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.scheduling.ComputationalResourceSchedulingModel;
 import org.apache.airavata.model.security.AuthzToken;
-import org.apache.airavata.model.status.ExperimentState;
-import org.apache.airavata.model.status.ExperimentStatus;
-import org.apache.airavata.model.status.JobState;
-import org.apache.airavata.model.status.JobStatus;
-import org.apache.airavata.model.status.ProcessState;
-import org.apache.airavata.model.status.ProcessStatus;
-import org.apache.airavata.model.status.QueueStatusModel;
-import org.apache.airavata.model.status.TaskState;
-import org.apache.airavata.model.status.TaskStatus;
+import org.apache.airavata.model.status.*;
 import org.apache.airavata.model.task.TaskTypes;
 import org.apache.airavata.model.workspace.Gateway;
 import org.apache.airavata.model.workspace.Notification;
 import org.apache.airavata.model.workspace.Project;
 import org.apache.airavata.registry.api.RegistryService;
 import org.apache.airavata.registry.api.exception.RegistryServiceException;
+import org.apache.airavata.service.security.GatewayGroupsInitializer;
 import org.apache.airavata.service.security.interceptor.SecurityCheck;
 import org.apache.airavata.sharing.registry.models.*;
 import org.apache.airavata.sharing.registry.service.cpi.SharingRegistryService;
diff --git a/airavata-api/airavata-api-stubs/pom.xml b/airavata-api/airavata-api-stubs/pom.xml
index 29d610aca0..87f9adc7db 100644
--- a/airavata-api/airavata-api-stubs/pom.xml
+++ b/airavata-api/airavata-api-stubs/pom.xml
@@ -55,34 +55,7 @@
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
-
     </dependencies>
 
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>com.google.code.maven-replacer-plugin</groupId>
-                <artifactId>replacer</artifactId>
-                <version>${maven.replacer.plugin.version}</version>
-                <executions>
-                    <execution>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>replace</goal>
-                        </goals>
-                    </execution>
-                </executions>
-                <configuration>
-                    <includes>
-                        <include>${basedir}/src/main/java/org/apache/airavata/**/*.java</include>
-                    </includes>
-                    <token>, date = ".*"</token>
-                    <value> </value>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
 </project>
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/client/AiravataClientFactory.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/client/AiravataClientFactory.java
index 42bd38f8c3..3ddaf84406 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/client/AiravataClientFactory.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/client/AiravataClientFactory.java
@@ -20,17 +20,16 @@
 package org.apache.airavata.api.client;
 
 import org.apache.airavata.api.Airavata;
-
 import org.apache.airavata.common.utils.Constants;
 import org.apache.airavata.model.error.AiravataClientException;
 import org.apache.airavata.model.security.AuthzToken;
 import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.protocol.TProtocol;
+import org.apache.thrift.transport.TSSLTransportFactory;
 import org.apache.thrift.transport.TSocket;
 import org.apache.thrift.transport.TTransport;
 import org.apache.thrift.transport.TTransportException;
-import org.apache.thrift.transport.TSSLTransportFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/airavata-api/airavata-base-api/pom.xml b/airavata-api/airavata-base-api/pom.xml
index 1884e489cd..62ca3828b6 100644
--- a/airavata-api/airavata-base-api/pom.xml
+++ b/airavata-api/airavata-base-api/pom.xml
@@ -17,12 +17,10 @@
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>jakarta.annotation</groupId>
             <artifactId>jakarta.annotation-api</artifactId>
-            <version>${jakarta.annotation.version}</version>
         </dependency>
         <dependency>
             <groupId>javax.annotation</groupId>
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/pom.xml b/airavata-api/airavata-client-sdks/java-client-samples/pom.xml
index 5ff4a3dcc5..4bb34ace55 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/pom.xml
+++ b/airavata-api/airavata-client-sdks/java-client-samples/pom.xml
@@ -55,7 +55,6 @@
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -67,16 +66,6 @@
             <artifactId>airavata-security</artifactId>
             <version>${project.version}</version>
         </dependency>
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>${httpclient.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpcore</artifactId>
-            <version>${httpcore.version}</version>
-        </dependency>
         <dependency>
             <groupId>com.googlecode.json-simple</groupId>
             <artifactId>json-simple</artifactId>
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CancelExperiments.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CancelExperiments.java
index 4f5288470b..a937366f06 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CancelExperiments.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CancelExperiments.java
@@ -19,16 +19,17 @@
  */
 package org.apache.airavata.client.samples;
 
-import org.apache.airavata.model.error.*;
 import org.apache.airavata.api.Airavata;
 import org.apache.airavata.api.client.AiravataClientFactory;
+import org.apache.airavata.model.error.AiravataClientException;
+import org.apache.airavata.model.error.AiravataSystemException;
+import org.apache.airavata.model.error.ExperimentNotFoundException;
+import org.apache.airavata.model.error.InvalidRequestException;
 import org.apache.airavata.model.security.AuthzToken;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.lang.String;
-
 public class CancelExperiments {
 
     //FIXME: Read from a config file
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java
index 7e9f388db1..39e8794a54 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java
@@ -43,7 +43,7 @@ package org.apache.airavata.client.tools;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
 import org.apache.airavata.model.appcatalog.appdeployment.CommandObject;
-import org.apache.airavata.model.appcatalog.appinterface.*;
+import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
 import org.apache.airavata.model.appcatalog.computeresource.*;
 import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
 import org.apache.airavata.model.application.io.DataType;
@@ -55,7 +55,6 @@ import org.apache.airavata.model.parallelism.ApplicationParallelismType;
 
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 public class RegisterSampleApplicationsUtils {
 
diff --git a/airavata-api/airavata-data-models/pom.xml b/airavata-api/airavata-data-models/pom.xml
index 8fd5d8c260..98c5cb95d4 100644
--- a/airavata-api/airavata-data-models/pom.xml
+++ b/airavata-api/airavata-data-models/pom.xml
@@ -37,16 +37,13 @@
     <url>http://airavata.apache.org/</url>
 
     <dependencies>
-
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>jakarta.annotation</groupId>
             <artifactId>jakarta.annotation-api</artifactId>
-            <version>${jakarta.annotation.version}</version>
         </dependency>
         <dependency>
             <groupId>javax.annotation</groupId>
@@ -55,30 +52,4 @@
         </dependency>
     </dependencies>
 
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>com.google.code.maven-replacer-plugin</groupId>
-                <artifactId>replacer</artifactId>
-                <version>${maven.replacer.plugin.version}</version>
-                <executions>
-                    <execution>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>replace</goal>
-                        </goals>
-                    </execution>
-                </executions>
-                <configuration>
-                    <includes>
-                        <include>${basedir}/src/main/java/org/apache/airavata/**/*.java</include>
-                    </includes>
-                    <token>, date = ".*"</token>
-                    <value> </value>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
 </project>
diff --git a/airavata-api/airavata-model-utils/pom.xml b/airavata-api/airavata-model-utils/pom.xml
index 37be5a96d5..dbd53b65df 100644
--- a/airavata-api/airavata-model-utils/pom.xml
+++ b/airavata-api/airavata-model-utils/pom.xml
@@ -46,13 +46,11 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>${junit.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.jmockit</groupId>
             <artifactId>jmockit</artifactId>
-            <version>${jmockit.version}</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
diff --git a/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java
index 28380f39f6..2e2df7eb5d 100644
--- a/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java
+++ b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java
@@ -19,10 +19,6 @@
  */
 package org.apache.airavata.model.util;
 
-import org.apache.airavata.model.appcatalog.computeresource.*;
-
-import java.util.List;
-
 public class ComputeResourceUtil {
 //    public static ComputeResourceDescription createComputeResource (String resourceName,
 //                                                                    String resourceDesc,
diff --git a/airavata-api/airavata-model-utils/src/test/java/org/apache/airavata/model/util/GroupComputeResourcePreferenceUtilTest.java b/airavata-api/airavata-model-utils/src/test/java/org/apache/airavata/model/util/GroupComputeResourcePreferenceUtilTest.java
index 7f9bedf363..4e9984f547 100644
--- a/airavata-api/airavata-model-utils/src/test/java/org/apache/airavata/model/util/GroupComputeResourcePreferenceUtilTest.java
+++ b/airavata-api/airavata-model-utils/src/test/java/org/apache/airavata/model/util/GroupComputeResourcePreferenceUtilTest.java
@@ -21,15 +21,15 @@
 
 package org.apache.airavata.model.util;
 
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
 import org.apache.airavata.model.appcatalog.groupresourceprofile.ComputeResourceReservation;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupComputeResourcePreference;
 import org.junit.Assert;
 import org.junit.Test;
 
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
 /**
  * GroupComputeResourcePreferenceUtilTest
  */
diff --git a/airavata-services/pom.xml b/airavata-services/pom.xml
index c3519945db..95d27a84e9 100644
--- a/airavata-services/pom.xml
+++ b/airavata-services/pom.xml
@@ -38,13 +38,11 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>${junit.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
diff --git a/airavata-services/profile-service/iam-admin-services-core/pom.xml b/airavata-services/profile-service/iam-admin-services-core/pom.xml
index 9f95c5fa15..72fafcf2e1 100644
--- a/airavata-services/profile-service/iam-admin-services-core/pom.xml
+++ b/airavata-services/profile-service/iam-admin-services-core/pom.xml
@@ -35,41 +35,7 @@
     <name>Iam Admin Services</name>
 
     <dependencies>
-        <!-- https://mvnrepository.com/artifact/org.jboss.resteasy/resteasy-client -->
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-client</artifactId>
-            <version>${resteasy.version}</version>
-        </dependency>
-        <!-- https://mvnrepository.com/artifact/org.jboss.resteasy/resteasy-jackson2-provider -->
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-jackson2-provider</artifactId>
-            <version>${resteasy.version}</version>
-        </dependency>
-        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-            <version>${fasterxml.jackson.version}</version>
-        </dependency>
-        <!-- https://mvnrepository.com/artifact/org.keycloak/keycloak-admin-client -->
-        <dependency>
-            <groupId>org.keycloak</groupId>
-            <artifactId>keycloak-admin-client</artifactId>
-            <version>${keycloak.admin.client.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.eclipse.angus</groupId>
-                    <artifactId>angus-mail</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>profile-service-stubs</artifactId>
-            <version>${project.version}</version>
-        </dependency>
+        
     </dependencies>
     
 </project>
diff --git a/airavata-services/profile-service/pom.xml b/airavata-services/profile-service/pom.xml
index b63a338014..a65a1cd66f 100644
--- a/airavata-services/profile-service/pom.xml
+++ b/airavata-services/profile-service/pom.xml
@@ -43,7 +43,6 @@
         <module>profile-tenant-core</module>
         <module>profile-service-server</module>
         <module>profile-service-client-sdks</module>
-        <module>iam-admin-services-core</module>
     </modules>
     
 </project>
diff --git a/airavata-services/profile-service/profile-service-client-sdks/java-client-samples/src/main/java/org/apache/airavata/service/profile/client/samples/UserProfileSample.java b/airavata-services/profile-service/profile-service-client-sdks/java-client-samples/src/main/java/org/apache/airavata/service/profile/client/samples/UserProfileSample.java
index e5caf41e05..b9b5d6c090 100644
--- a/airavata-services/profile-service/profile-service-client-sdks/java-client-samples/src/main/java/org/apache/airavata/service/profile/client/samples/UserProfileSample.java
+++ b/airavata-services/profile-service/profile-service-client-sdks/java-client-samples/src/main/java/org/apache/airavata/service/profile/client/samples/UserProfileSample.java
@@ -21,16 +21,13 @@ package org.apache.airavata.service.profile.client.samples;
 
 import org.apache.airavata.model.security.AuthzToken;
 import org.apache.airavata.model.user.*;
-import org.apache.airavata.model.workspace.User;
 import org.apache.airavata.service.profile.client.ProfileServiceClientFactory;
 import org.apache.airavata.service.profile.client.util.ProfileServiceClientUtil;
 import org.apache.airavata.service.profile.user.cpi.UserProfileService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.Date;
 import java.util.List;
-import java.util.Random;
 import java.util.concurrent.ThreadLocalRandom;
 
 /**
diff --git a/airavata-services/profile-service/profile-service-commons/pom.xml b/airavata-services/profile-service/profile-service-commons/pom.xml
index d6be72e59d..2b57061cbe 100644
--- a/airavata-services/profile-service/profile-service-commons/pom.xml
+++ b/airavata-services/profile-service/profile-service-commons/pom.xml
@@ -33,7 +33,6 @@
     <description>Module to expose a profile-service-commons as a thrift service</description>
 
     <properties>
-        <derby.version>10.11.1.1</derby.version>
         <surefire.version>2.18.1</surefire.version>
         <skipTests>true</skipTests>
         <mysql.connector.version>8.0.31</mysql.connector.version>
@@ -41,8 +40,8 @@
 
     <dependencies>
         <dependency>
-            <groupId>net.sf.dozer</groupId>
-            <artifactId>dozer</artifactId>
+            <groupId>com.github.dozermapper</groupId>
+            <artifactId>dozer-core</artifactId>
             <version>${dozer.version}</version>
             <exclusions>
                 <exclusion>
@@ -58,33 +57,12 @@
         <dependency>
             <groupId>org.hibernate.orm</groupId>
             <artifactId>hibernate-core</artifactId>
-            <version>${hibernate-core.version}</version>
         </dependency>
         <dependency>
             <groupId>com.mysql</groupId>
             <artifactId>mysql-connector-j</artifactId>
             <version>${mysql.connector.version}</version>
         </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbytools</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
     </dependencies>
 
     <build>
@@ -92,7 +70,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
+                <version>${maven-compiler-plugin.version}</version>
                 <configuration>
                     <release>17</release>
                 </configuration>
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/repositories/AbstractRepository.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/repositories/AbstractRepository.java
index f616a87a0f..c097b7903b 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/repositories/AbstractRepository.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/repositories/AbstractRepository.java
@@ -19,13 +19,13 @@
  */
 package org.apache.airavata.service.profile.commons.repositories;
 
+import com.github.dozermapper.core.Mapper;
+import jakarta.persistence.Query;
 import org.apache.airavata.service.profile.commons.utils.JPAUtils;
 import org.apache.airavata.service.profile.commons.utils.ObjectMapperSingleton;
-import org.dozer.Mapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.persistence.Query;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -46,7 +46,7 @@ public abstract class AbstractRepository<T, E, Id> {
     }
 
     public T update(T t) {
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         E entity = mapper.map(t, dbEntityGenericClass);
         E persistedCopy = JPAUtils.execute(entityManager -> entityManager.merge(entity));
         return mapper.map(persistedCopy, thriftGenericClass);
@@ -64,13 +64,13 @@ public abstract class AbstractRepository<T, E, Id> {
     public T get(Id id) {
         E entity = JPAUtils.execute(entityManager -> entityManager
                 .find(dbEntityGenericClass, id));
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         return mapper.map(entity, thriftGenericClass);
     }
 
     public List<T> select(String query) {
         List resultSet = (List) JPAUtils.execute(entityManager -> entityManager.createQuery(query).getResultList());
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         List<T> resultList = new ArrayList<>();
         resultSet.stream().forEach(rs -> resultList.add(mapper.map(rs, thriftGenericClass)));
         return resultList;
@@ -79,7 +79,7 @@ public abstract class AbstractRepository<T, E, Id> {
     public List<T> select(String query, int limit, int offset) {
         List resultSet = (List) JPAUtils.execute(entityManager -> entityManager.createQuery(query).setFirstResult(offset)
                 .setMaxResults(limit).getResultList());
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         List<T> resultList = new ArrayList<>();
         resultSet.stream().forEach(rs -> resultList.add(mapper.map(rs, thriftGenericClass)));
         return resultList;
@@ -97,7 +97,7 @@ public abstract class AbstractRepository<T, E, Id> {
             return jpaQuery.setFirstResult(offset).setMaxResults(limit).getResultList();
 
         });
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         List<T> resultList = new ArrayList<>();
         resultSet.stream().forEach(rs -> resultList.add(mapper.map(rs, thriftGenericClass)));
         return resultList;
@@ -115,7 +115,7 @@ public abstract class AbstractRepository<T, E, Id> {
             return jpaQuery.getResultList();
 
         });
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         List<T> resultList = new ArrayList<>();
         resultSet.stream().forEach(rs -> resultList.add(mapper.map(rs, thriftGenericClass)));
         return resultList;
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/tenant/entities/GatewayEntity.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/tenant/entities/GatewayEntity.java
index 20e8e6487e..dc6a53aec2 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/tenant/entities/GatewayEntity.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/tenant/entities/GatewayEntity.java
@@ -19,11 +19,10 @@
  */
 package org.apache.airavata.service.profile.commons.tenant.entities;
 
+import jakarta.persistence.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.persistence.*;
-
 import java.io.Serializable;
 import java.util.UUID;
 
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/NSFDemographicsEntity.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/NSFDemographicsEntity.java
index 8468189d66..382ee47897 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/NSFDemographicsEntity.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/NSFDemographicsEntity.java
@@ -20,6 +20,7 @@
 package org.apache.airavata.service.profile.commons.user.entities;
 
 import jakarta.persistence.*;
+
 import java.util.List;
 
 @Entity
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/UserProfileEntity.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/UserProfileEntity.java
index d6fac6c512..1b557c898f 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/UserProfileEntity.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/user/entities/UserProfileEntity.java
@@ -20,6 +20,7 @@
 package org.apache.airavata.service.profile.commons.user.entities;
 
 import jakarta.persistence.*;
+
 import java.util.Date;
 import java.util.List;
 
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/JPAUtils.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/JPAUtils.java
index b89851ca38..5a40fe59d6 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/JPAUtils.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/JPAUtils.java
@@ -21,7 +21,6 @@ package org.apache.airavata.service.profile.commons.utils;
 
 import jakarta.persistence.EntityManager;
 import jakarta.persistence.EntityManagerFactory;
-
 import org.apache.airavata.common.utils.JDBCConfig;
 
 public class JPAUtils {
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ObjectMapperSingleton.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ObjectMapperSingleton.java
index ec54c6b5ec..d6ffd596e0 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ObjectMapperSingleton.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ObjectMapperSingleton.java
@@ -19,20 +19,28 @@
  */
 package org.apache.airavata.service.profile.commons.utils;
 
-import org.dozer.DozerBeanMapper;
+import com.github.dozermapper.core.DozerBeanMapperBuilder;
+import com.github.dozermapper.core.Mapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class ObjectMapperSingleton extends DozerBeanMapper{
+public class ObjectMapperSingleton {
     private final static Logger logger = LoggerFactory.getLogger(ObjectMapperSingleton.class);
 
     private static ObjectMapperSingleton instance;
+    private final Mapper mapper;
 
-    private ObjectMapperSingleton(){}
+    private ObjectMapperSingleton() {
+        mapper = DozerBeanMapperBuilder.buildDefault();
+    }
 
-    public static ObjectMapperSingleton getInstance(){
-        if(instance == null)
+    public static ObjectMapperSingleton getInstance() {
+        if (instance == null)
             instance = new ObjectMapperSingleton();
         return instance;
     }
+
+    public Mapper getMapper() {
+        return mapper;
+    }
 }
\ No newline at end of file
diff --git a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ProfileServiceJDBCConfig.java b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ProfileServiceJDBCConfig.java
index 56d0a748b5..c5198ee6e9 100644
--- a/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ProfileServiceJDBCConfig.java
+++ b/airavata-services/profile-service/profile-service-commons/src/main/java/org/apache/airavata/service/profile/commons/utils/ProfileServiceJDBCConfig.java
@@ -21,7 +21,6 @@
 package org.apache.airavata.service.profile.commons.utils;
 
 import org.apache.airavata.common.utils.JDBCConfig;
-import org.apache.airavata.service.profile.commons.utils.Utils;
 
 public class ProfileServiceJDBCConfig implements JDBCConfig {
 
diff --git a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/GroupManagerServiceHandler.java b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/GroupManagerServiceHandler.java
index ecd8f98225..bcc97cd564 100644
--- a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/GroupManagerServiceHandler.java
+++ b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/GroupManagerServiceHandler.java
@@ -8,16 +8,12 @@ import org.apache.airavata.model.group.GroupModel;
 import org.apache.airavata.model.security.AuthzToken;
 import org.apache.airavata.model.user.UserProfile;
 import org.apache.airavata.service.profile.groupmanager.cpi.GroupManagerService;
-import org.apache.airavata.service.profile.groupmanager.cpi.group_manager_cpiConstants;
 import org.apache.airavata.service.profile.groupmanager.cpi.exception.GroupManagerServiceException;
+import org.apache.airavata.service.profile.groupmanager.cpi.group_manager_cpiConstants;
 import org.apache.airavata.service.profile.user.core.repositories.UserProfileRepository;
 import org.apache.airavata.service.security.interceptor.SecurityCheck;
 import org.apache.airavata.sharing.registry.client.SharingRegistryServiceClientFactory;
-import org.apache.airavata.sharing.registry.models.GroupCardinality;
-import org.apache.airavata.sharing.registry.models.GroupType;
-import org.apache.airavata.sharing.registry.models.SharingRegistryException;
-import org.apache.airavata.sharing.registry.models.User;
-import org.apache.airavata.sharing.registry.models.UserGroup;
+import org.apache.airavata.sharing.registry.models.*;
 import org.apache.airavata.sharing.registry.service.cpi.SharingRegistryService;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
diff --git a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/IamAdminServicesHandler.java b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/IamAdminServicesHandler.java
index 4c6b6d08b3..072a93ca96 100644
--- a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/IamAdminServicesHandler.java
+++ b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/IamAdminServicesHandler.java
@@ -19,8 +19,6 @@
  */
 package org.apache.airavata.service.profile.handlers;
 
-import java.util.List;
-
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.AiravataUtils;
@@ -44,14 +42,16 @@ import org.apache.airavata.registry.api.client.RegistryServiceClientFactory;
 import org.apache.airavata.registry.api.exception.RegistryServiceException;
 import org.apache.airavata.service.profile.iam.admin.services.core.impl.TenantManagementKeycloakImpl;
 import org.apache.airavata.service.profile.iam.admin.services.cpi.IamAdminServices;
-import org.apache.airavata.service.profile.iam.admin.services.cpi.iam_admin_services_cpiConstants;
 import org.apache.airavata.service.profile.iam.admin.services.cpi.exception.IamAdminServicesException;
+import org.apache.airavata.service.profile.iam.admin.services.cpi.iam_admin_services_cpiConstants;
 import org.apache.airavata.service.profile.user.core.repositories.UserProfileRepository;
 import org.apache.airavata.service.security.interceptor.SecurityCheck;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.List;
+
 public class IamAdminServicesHandler implements IamAdminServices.Iface {
 
     private final static Logger logger = LoggerFactory.getLogger(IamAdminServicesHandler.class);
diff --git a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/UserProfileServiceHandler.java b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/UserProfileServiceHandler.java
index 2308d9296f..bf0c8865df 100644
--- a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/UserProfileServiceHandler.java
+++ b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/handlers/UserProfileServiceHandler.java
@@ -31,7 +31,6 @@ import org.apache.airavata.model.error.AuthorizationException;
 import org.apache.airavata.model.security.AuthzToken;
 import org.apache.airavata.model.user.Status;
 import org.apache.airavata.model.user.UserProfile;
-import org.apache.airavata.model.user.user_profile_modelConstants;
 import org.apache.airavata.security.AiravataSecurityException;
 import org.apache.airavata.service.profile.client.ProfileServiceClientFactory;
 import org.apache.airavata.service.profile.iam.admin.services.cpi.IamAdminServices;
@@ -39,10 +38,10 @@ import org.apache.airavata.service.profile.iam.admin.services.cpi.exception.IamA
 import org.apache.airavata.service.profile.user.core.repositories.UserProfileRepository;
 import org.apache.airavata.service.profile.user.cpi.UserProfileService;
 import org.apache.airavata.service.profile.user.cpi.exception.UserProfileServiceException;
+import org.apache.airavata.service.profile.user.cpi.profile_user_cpiConstants;
 import org.apache.airavata.service.security.AiravataSecurityManager;
 import org.apache.airavata.service.security.SecurityManagerFactory;
 import org.apache.airavata.service.security.UserInfo;
-import org.apache.airavata.service.profile.user.cpi.profile_user_cpiConstants;
 import org.apache.airavata.service.security.interceptor.SecurityCheck;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
diff --git a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/server/ProfileServiceServer.java b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/server/ProfileServiceServer.java
index 48819ffdc0..4ca4d7ebb1 100644
--- a/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/server/ProfileServiceServer.java
+++ b/airavata-services/profile-service/profile-service-server/src/main/java/org/apache/airavata/service/profile/server/ProfileServiceServer.java
@@ -27,12 +27,12 @@ import org.apache.airavata.service.profile.groupmanager.cpi.GroupManagerService;
 import org.apache.airavata.service.profile.groupmanager.cpi.group_manager_cpiConstants;
 import org.apache.airavata.service.profile.handlers.GroupManagerServiceHandler;
 import org.apache.airavata.service.profile.handlers.IamAdminServicesHandler;
-import org.apache.airavata.service.profile.iam.admin.services.cpi.IamAdminServices;
-import org.apache.airavata.service.profile.iam.admin.services.cpi.iam_admin_services_cpiConstants;
-import org.apache.airavata.service.profile.tenant.cpi.profile_tenant_cpiConstants;
 import org.apache.airavata.service.profile.handlers.TenantProfileServiceHandler;
 import org.apache.airavata.service.profile.handlers.UserProfileServiceHandler;
+import org.apache.airavata.service.profile.iam.admin.services.cpi.IamAdminServices;
+import org.apache.airavata.service.profile.iam.admin.services.cpi.iam_admin_services_cpiConstants;
 import org.apache.airavata.service.profile.tenant.cpi.TenantProfileService;
+import org.apache.airavata.service.profile.tenant.cpi.profile_tenant_cpiConstants;
 import org.apache.airavata.service.profile.user.core.utils.UserProfileCatalogDBInitConfig;
 import org.apache.airavata.service.profile.user.cpi.UserProfileService;
 import org.apache.airavata.service.profile.user.cpi.profile_user_cpiConstants;
diff --git a/airavata-services/profile-service/profile-tenant-core/pom.xml b/airavata-services/profile-service/profile-tenant-core/pom.xml
index baeb2f7c7c..ae1fc2f8a5 100644
--- a/airavata-services/profile-service/profile-tenant-core/pom.xml
+++ b/airavata-services/profile-service/profile-tenant-core/pom.xml
@@ -33,7 +33,6 @@
     <name>Profile Gateway Core</name>
 
     <properties>
-        <derby.version>10.11.1.1</derby.version>
         <surefire.version>2.18.1</surefire.version>
         <skipTests>false</skipTests>
         <mysql.connector.version>8.0.31</mysql.connector.version>
diff --git a/airavata-services/profile-service/profile-user-core/pom.xml b/airavata-services/profile-service/profile-user-core/pom.xml
index c50b37af0c..42c7f51353 100644
--- a/airavata-services/profile-service/profile-user-core/pom.xml
+++ b/airavata-services/profile-service/profile-user-core/pom.xml
@@ -33,7 +33,6 @@
     <name>Profile User Core</name>
 
     <properties>
-        <derby.version>10.11.1.1</derby.version>
         <surefire.version>2.18.1</surefire.version>
         <skipTests>false</skipTests>
         <mysql.connector.version>8.0.31</mysql.connector.version>
@@ -52,13 +51,9 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
+                <version>${maven-compiler-plugin.version}</version>
                 <configuration>
                    <release>17</release>
-                    <compilerArgs>
-                        <arg>--add-opens=java.base/java.lang=ALL-UNNAMED</arg>
-                    </compilerArgs>
-                    <fork>true</fork>
                 </configuration>
             </plugin>
             <plugin>
@@ -68,7 +63,6 @@
                 <inherited>true</inherited>
                 <configuration>
                     <failIfNoTests>false</failIfNoTests>
-                    <!--<skipTests>${skipTests}</skipTests>-->
                     <skipTests>true</skipTests>
                     <workingDirectory>${project.build.testOutputDirectory}</workingDirectory>
                 </configuration>
diff --git a/airavata-services/profile-service/profile-user-core/src/main/java/org/apache/airavata/service/profile/user/core/repositories/UserProfileRepository.java b/airavata-services/profile-service/profile-user-core/src/main/java/org/apache/airavata/service/profile/user/core/repositories/UserProfileRepository.java
index b39a1f060a..d194c9ccf2 100644
--- a/airavata-services/profile-service/profile-user-core/src/main/java/org/apache/airavata/service/profile/user/core/repositories/UserProfileRepository.java
+++ b/airavata-services/profile-service/profile-user-core/src/main/java/org/apache/airavata/service/profile/user/core/repositories/UserProfileRepository.java
@@ -19,13 +19,13 @@
  */
 package org.apache.airavata.service.profile.user.core.repositories;
 
+import com.github.dozermapper.core.Mapper;
 import org.apache.airavata.model.user.UserProfile;
 import org.apache.airavata.service.profile.commons.repositories.AbstractRepository;
 import org.apache.airavata.service.profile.commons.user.entities.UserProfileEntity;
 import org.apache.airavata.service.profile.commons.utils.JPAUtils;
 import org.apache.airavata.service.profile.commons.utils.ObjectMapperSingleton;
 import org.apache.airavata.service.profile.commons.utils.QueryConstants;
-import org.dozer.Mapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -95,7 +95,7 @@ public class UserProfileRepository extends AbstractRepository<UserProfile, UserP
 
     public UserProfile updateUserProfile(UserProfile userProfile, Runnable postUpdateAction) {
 
-        Mapper mapper = ObjectMapperSingleton.getInstance();
+        Mapper mapper = ObjectMapperSingleton.getInstance().getMapper();
         UserProfileEntity entity = mapper.map(userProfile, UserProfileEntity.class);
         UserProfileEntity persistedCopy = JPAUtils.execute(entityManager -> {
             UserProfileEntity result = entityManager.merge(entity);
diff --git a/airavata-services/services-security/pom.xml b/airavata-services/services-security/pom.xml
index 77ce01b352..5c2b032fe7 100644
--- a/airavata-services/services-security/pom.xml
+++ b/airavata-services/services-security/pom.xml
@@ -61,11 +61,6 @@
             <artifactId>airavata-sharing-registry-stubs</artifactId>
             <version>${project.version}</version>
         </dependency>
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>${httpclient.version}</version>
-        </dependency>
         <dependency>
             <groupId>com.google.inject</groupId>
             <artifactId>guice</artifactId>
@@ -74,28 +69,49 @@
         <dependency>
             <groupId>aopalliance</groupId>
             <artifactId>aopalliance</artifactId>
-            <version>${aopalliance.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.oltu.oauth2</groupId>
-            <artifactId>org.apache.oltu.oauth2.client</artifactId>
-            <version>${oltu.oauth2.client.version}</version>
+            <groupId>org.springframework.security</groupId>
+            <artifactId>spring-security-oauth2-client</artifactId>
+            <version>${spring.security.oauth2.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.security</groupId>
+            <artifactId>spring-security-oauth2-jose</artifactId>
+            <version>${spring.security.oauth2.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j2-impl</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.httpcomponents</groupId>
+            <artifactId>httpclient</artifactId>
         </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-databind</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <dependency>
             <groupId>org.jmockit</groupId>
             <artifactId>jmockit</artifactId>
-            <version>${jmockit.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.json</groupId>
             <artifactId>json</artifactId>
-            <version>${json.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -103,24 +119,4 @@
             <version>${project.version}</version>
         </dependency>
     </dependencies>
-    <build>
-    <plugins>
-        <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-surefire-plugin</artifactId>
-            <version>${surefire.version}</version>
-            <inherited>true</inherited>
-            <configuration>
-                <useSystemClassLoader>false</useSystemClassLoader>
-                <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine>
-
-                <reuseForks>false</reuseForks>
-                <argLine>
-                    -javaagent:${settings.localRepository}/org/jmockit/jmockit/${jmockit.version}/jmockit-${jmockit.version}.jar
-                </argLine>
-                <testSourceDirectory>${basedir}\src\test\java\</testSourceDirectory>
-            </configuration>
-        </plugin>
-    </plugins>
-    </build>
 </project>
diff --git a/modules/agent-framework/agent-service/pom.xml b/modules/agent-framework/agent-service/pom.xml
index 1f53c0652a..e7b93a7bc0 100644
--- a/modules/agent-framework/agent-service/pom.xml
+++ b/modules/agent-framework/agent-service/pom.xml
@@ -35,7 +35,6 @@
         <dependency>
             <groupId>org.mariadb.jdbc</groupId>
             <artifactId>mariadb-java-client</artifactId>
-            <version>${mariadb-java-client.version}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
@@ -91,7 +90,6 @@
         <dependency>
             <groupId>jakarta.annotation</groupId>
             <artifactId>jakarta.annotation-api</artifactId>
-            <version>${jakarta.annotation.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -153,7 +151,7 @@
             <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-compiler-plugin</artifactId>
-              <version>${maven.compiler.plugin.version}</version>
+              <version>${maven-compiler-plugin.version}</version>
               <configuration>
                 <release>17</release>
                 <generatedSourcesDirectory>${project.build.directory}/generated-sources/protobuf</generatedSourcesDirectory>
@@ -162,22 +160,6 @@
                 </includes>
               </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-remote-resources-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>bundle</goal>
-                        </goals>
-                    </execution>
-                </executions>
-                <configuration>
-                    <includes>
-                        <include>**/*.*</include>
-                    </includes>
-                </configuration>
-            </plugin>
         </plugins>
     </build>
 
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
index 0f49324f43..280f3d74ae 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/AgentController.java
@@ -1,34 +1,12 @@
 package org.apache.airavata.agent.connection.service.controllers;
 
 import org.apache.airavata.agent.connection.service.handlers.AgentConnectionHandler;
-import org.apache.airavata.agent.connection.service.models.AgentCommandExecutionAck;
-import org.apache.airavata.agent.connection.service.models.AgentCommandExecutionRequest;
-import org.apache.airavata.agent.connection.service.models.AgentCommandExecutionResponse;
-import org.apache.airavata.agent.connection.service.models.AgentEnvSetupAck;
-import org.apache.airavata.agent.connection.service.models.AgentEnvSetupRequest;
-import org.apache.airavata.agent.connection.service.models.AgentEnvSetupResponse;
-import org.apache.airavata.agent.connection.service.models.AgentInfoResponse;
-import org.apache.airavata.agent.connection.service.models.AgentJupyterExecutionAck;
-import org.apache.airavata.agent.connection.service.models.AgentJupyterExecutionRequest;
-import org.apache.airavata.agent.connection.service.models.AgentJupyterExecutionResponse;
-import org.apache.airavata.agent.connection.service.models.AgentKernelRestartAck;
-import org.apache.airavata.agent.connection.service.models.AgentKernelRestartRequest;
-import org.apache.airavata.agent.connection.service.models.AgentKernelRestartResponse;
-import org.apache.airavata.agent.connection.service.models.AgentPythonExecutionAck;
-import org.apache.airavata.agent.connection.service.models.AgentPythonExecutionRequest;
-import org.apache.airavata.agent.connection.service.models.AgentPythonExecutionResponse;
-import org.apache.airavata.agent.connection.service.models.AgentTunnelAck;
-import org.apache.airavata.agent.connection.service.models.AgentTunnelRequest;
+import org.apache.airavata.agent.connection.service.models.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 @RestController
 @RequestMapping("/api/v1/agent")
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
index 496993aa89..1e2b3ee264 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/ExperimentController.java
@@ -1,7 +1,5 @@
 package org.apache.airavata.agent.connection.service.controllers;
 
-import java.util.List;
-
 import org.apache.airavata.agent.connection.service.handlers.AgentManagementHandler;
 import org.apache.airavata.agent.connection.service.models.AgentLaunchRequest;
 import org.apache.airavata.agent.connection.service.models.AgentLaunchResponse;
@@ -13,12 +11,9 @@ import org.slf4j.LoggerFactory;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
 
 @RestController
 @RequestMapping("/api/v1/exp")
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/PlanController.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/PlanController.java
index 8ef14e8ffc..922d242a46 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/PlanController.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/controllers/PlanController.java
@@ -9,13 +9,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
 
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java
index c80865d9f3..d2935ee487 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/db/entity/AgentExecution.java
@@ -1,11 +1,10 @@
 package org.apache.airavata.agent.connection.service.db.entity;
 
-import org.hibernate.annotations.GenericGenerator;
-
 import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
 import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.Id;
+import org.hibernate.annotations.GenericGenerator;
 
 
 @Entity(name = "AGENT_EXECUTION")
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java
index b809cf4db4..cafa933b3f 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentConnectionHandler.java
@@ -1,49 +1,17 @@
 package org.apache.airavata.agent.connection.service.handlers;
 
-import java.awt.image.Kernel;
+import io.grpc.stub.StreamObserver;
+import net.devh.boot.grpc.server.service.GrpcService;
+import org.apache.airavata.agent.*;
+import org.apache.airavata.agent.connection.service.models.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.util.Map;
 import java.util.Optional;
 import java.util.UUID;
 import java.util.concurrent.ConcurrentHashMap;
 
-import org.apache.airavata.agent.AgentCommunicationServiceGrpc;
-import org.apache.airavata.agent.AgentMessage;
-import org.apache.airavata.agent.AgentPing;
-import org.apache.airavata.agent.CommandExecutionRequest;
-import org.apache.airavata.agent.CommandExecutionResponse;
-import org.apache.airavata.agent.EnvSetupResponse;
-import org.apache.airavata.agent.JupyterExecutionResponse;
-import org.apache.airavata.agent.KernelRestartRequest;
-import org.apache.airavata.agent.KernelRestartResponse;
-import org.apache.airavata.agent.PythonExecutionRequest;
-import org.apache.airavata.agent.PythonExecutionResponse;
-import org.apache.airavata.agent.ServerMessage;
-import org.apache.airavata.agent.TunnelCreationRequest;
-import org.apache.airavata.agent.connection.service.models.AgentCommandExecutionAck;
-import org.apache.airavata.agent.connection.service.models.AgentCommandExecutionRequest;
-import org.apache.airavata.agent.connection.service.models.AgentCommandExecutionResponse;
-import org.apache.airavata.agent.connection.service.models.AgentEnvSetupAck;
-import org.apache.airavata.agent.connection.service.models.AgentEnvSetupRequest;
-import org.apache.airavata.agent.connection.service.models.AgentEnvSetupResponse;
-import org.apache.airavata.agent.connection.service.models.AgentInfoResponse;
-import org.apache.airavata.agent.connection.service.models.AgentJupyterExecutionAck;
-import org.apache.airavata.agent.connection.service.models.AgentJupyterExecutionRequest;
-import org.apache.airavata.agent.connection.service.models.AgentJupyterExecutionResponse;
-import org.apache.airavata.agent.connection.service.models.AgentKernelRestartAck;
-import org.apache.airavata.agent.connection.service.models.AgentKernelRestartRequest;
-import org.apache.airavata.agent.connection.service.models.AgentKernelRestartResponse;
-import org.apache.airavata.agent.connection.service.models.AgentPythonExecutionAck;
-import org.apache.airavata.agent.connection.service.models.AgentPythonExecutionRequest;
-import org.apache.airavata.agent.connection.service.models.AgentPythonExecutionResponse;
-import org.apache.airavata.agent.connection.service.models.AgentTunnelAck;
-import org.apache.airavata.agent.connection.service.models.AgentTunnelRequest;
-import org.apache.airavata.agent.connection.service.models.AgentTunnelResponse;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import io.grpc.stub.StreamObserver;
-import net.devh.boot.grpc.server.service.GrpcService;
-
 @GrpcService
 public class AgentConnectionHandler extends AgentCommunicationServiceGrpc.AgentCommunicationServiceImplBase {
 
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java
index 2edd8abb18..93a1440d38 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/handlers/AgentManagementHandler.java
@@ -1,10 +1,5 @@
 package org.apache.airavata.agent.connection.service.handlers;
 
-import java.nio.file.Paths;
-import java.util.List;
-import java.util.UUID;
-import java.util.stream.Collectors;
-
 import org.apache.airavata.agent.connection.service.UserContext;
 import org.apache.airavata.agent.connection.service.config.ClusterApplicationConfig;
 import org.apache.airavata.agent.connection.service.models.AgentLaunchRequest;
@@ -28,6 +23,11 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import java.nio.file.Paths;
+import java.util.List;
+import java.util.UUID;
+import java.util.stream.Collectors;
+
 @Service
 public class AgentManagementHandler {
 
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentLaunchRequest.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentLaunchRequest.java
index 7934ddf74e..fb24aecf31 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentLaunchRequest.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/models/AgentLaunchRequest.java
@@ -3,8 +3,6 @@ package org.apache.airavata.agent.connection.service.models;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.commons.lang3.StringUtils;
-
 public class AgentLaunchRequest {
 
     private String experimentName;
@@ -86,7 +84,7 @@ public class AgentLaunchRequest {
     }
 
     public String getApplicationInterfaceName() {
-        return remoteCluster + (StringUtils.isNotBlank(group) ? ("_" + group) : "");
+        return remoteCluster + (group != null && !group.trim().isEmpty() ? ("_" + group) : "");
     }
 
     public String getProjectName() {
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
index ac56bd3895..7e3968008b 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataFileService.java
@@ -1,9 +1,10 @@
 package org.apache.airavata.agent.connection.service.services;
 
-import java.util.List;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.TimeUnit;
-
+import com.google.common.cache.Cache;
+import com.google.common.cache.CacheBuilder;
+import com.google.protobuf.Timestamp;
+import io.grpc.Status;
+import io.grpc.stub.StreamObserver;
 import org.apache.airavata.agent.ServerMessage;
 import org.apache.airavata.agent.connection.service.UserContext;
 import org.apache.airavata.agent.connection.service.models.DirectoryInfo;
@@ -16,20 +17,13 @@ import org.apache.airavata.fuse.ReadDirRes;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
+import org.springframework.http.*;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
 
-import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
-import com.google.protobuf.Timestamp;
-
-import io.grpc.Status;
-import io.grpc.stub.StreamObserver;
+import java.util.List;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.TimeUnit;
 
 @Service
 public class AiravataFileService {
diff --git a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
index 69b30a1a51..85adb15b89 100644
--- a/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
+++ b/modules/agent-framework/agent-service/src/main/java/org/apache/airavata/agent/connection/service/services/AiravataService.java
@@ -1,11 +1,6 @@
 package org.apache.airavata.agent.connection.service.services;
 
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
+import io.micrometer.common.util.StringUtils;
 import org.apache.airavata.agent.connection.service.UserContext;
 import org.apache.airavata.api.Airavata;
 import org.apache.airavata.api.client.AiravataClientFactory;
@@ -21,7 +16,11 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
-import io.micrometer.common.util.StringUtils;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 @Service
 public class AiravataService {
diff --git a/modules/airavata-helix/agent-api/pom.xml b/modules/airavata-helix/agent-api/pom.xml
index 3011a6eac1..48e5c1b0b5 100644
--- a/modules/airavata-helix/agent-api/pom.xml
+++ b/modules/airavata-helix/agent-api/pom.xml
@@ -35,7 +35,14 @@
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-databind</artifactId>
-            <version>${fasterxml.jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-annotations</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -54,24 +61,14 @@
             </exclusions>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mapper-asl</artifactId>
-            <version>${codehaus.jackson.version}</version>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j2-impl</artifactId>
+            <version>${log4j2.slf4j.impl}</version>
         </dependency>
     </dependencies>
 
-    <!--<build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
-                <configuration>
-                    <source>${java.version}</source>
-                    <target>${java.version}</target>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>-->
-
 </project>
diff --git a/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AdaptorParams.java b/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AdaptorParams.java
index beab284b45..f177282e02 100644
--- a/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AdaptorParams.java
+++ b/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AdaptorParams.java
@@ -19,7 +19,7 @@
  */
 package org.apache.airavata.agents.api;
 
-import org.codehaus.jackson.map.ObjectMapper;
+import com.fasterxml.jackson.databind.ObjectMapper;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AgentAdaptor.java b/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AgentAdaptor.java
index 107b9ff617..1fcd0c2423 100644
--- a/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AgentAdaptor.java
+++ b/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/AgentAdaptor.java
@@ -19,11 +19,8 @@
  */
 package org.apache.airavata.agents.api;
 
-import java.io.File;
 import java.io.InputStream;
 import java.io.OutputStream;
-import java.nio.channels.ReadableByteChannel;
-import java.nio.channels.WritableByteChannel;
 import java.util.List;
 
 /**
diff --git a/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/CommandOutput.java b/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/CommandOutput.java
index e91dcb630d..e89c5c0c0d 100644
--- a/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/CommandOutput.java
+++ b/modules/airavata-helix/agent-api/src/main/java/org/apache/airavata/agents/api/CommandOutput.java
@@ -19,8 +19,6 @@
  */
 package org.apache.airavata.agents.api;
 
-import java.io.OutputStream;
-
 /**
  * TODO: Class level comments please
  *
diff --git a/modules/airavata-helix/agent-impl/ssh-agent/pom.xml b/modules/airavata-helix/agent-impl/ssh-agent/pom.xml
index ff1d1ed4e8..d7aebd024e 100644
--- a/modules/airavata-helix/agent-impl/ssh-agent/pom.xml
+++ b/modules/airavata-helix/agent-impl/ssh-agent/pom.xml
@@ -24,7 +24,6 @@
         <dependency>
             <groupId>commons-io</groupId>
             <artifactId>commons-io</artifactId>
-            <version>${commons-io.version}</version>
         </dependency>
     </dependencies>
 
diff --git a/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAdaptorParams.java b/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAdaptorParams.java
index 042b818ae4..c4135efc19 100644
--- a/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAdaptorParams.java
+++ b/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAdaptorParams.java
@@ -21,7 +21,9 @@ package org.apache.airavata.helix.agent.ssh;
 
 import org.apache.airavata.agents.api.AdaptorParams;
 
-import java.io.*;
+import java.io.File;
+import java.io.IOException;
+import java.io.Serializable;
 
 /**
  * TODO: Class level comments please
diff --git a/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAgentAdaptor.java b/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAgentAdaptor.java
index b7a6bad46d..97dc271ca5 100644
--- a/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAgentAdaptor.java
+++ b/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/SshAgentAdaptor.java
@@ -21,14 +21,12 @@ package org.apache.airavata.helix.agent.ssh;
 
 import com.jcraft.jsch.*;
 import org.apache.airavata.agents.api.*;
+import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
 import org.apache.airavata.model.credential.store.SSHCredential;
-import org.apache.airavata.model.appcatalog.computeresource.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.*;
-import java.nio.channels.ReadableByteChannel;
-import java.nio.channels.WritableByteChannel;
 import java.util.Arrays;
 import java.util.List;
 import java.util.UUID;
diff --git a/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/StandardOutReader.java b/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/StandardOutReader.java
index 263d5d05c3..4cbb33ca01 100644
--- a/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/StandardOutReader.java
+++ b/modules/airavata-helix/agent-impl/ssh-agent/src/main/java/org/apache/airavata/helix/agent/ssh/StandardOutReader.java
@@ -19,11 +19,12 @@
  */
 package org.apache.airavata.helix.agent.ssh;
 
-import com.jcraft.jsch.Channel;
 import org.apache.airavata.agents.api.CommandOutput;
 import org.apache.commons.io.IOUtils;
 
-import java.io.*;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.StringWriter;
 
 /**
  * TODO: Class level comments please
diff --git a/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/PoolingSSHJClient.java b/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/PoolingSSHJClient.java
index 8010cb5a4d..8a6533d0bf 100644
--- a/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/PoolingSSHJClient.java
+++ b/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/PoolingSSHJClient.java
@@ -39,7 +39,9 @@ import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
 import java.util.*;
-import java.util.concurrent.*;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
 import java.util.concurrent.locks.ReadWriteLock;
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 import java.util.stream.Collectors;
diff --git a/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/SSHJAgentAdaptor.java b/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/SSHJAgentAdaptor.java
index 86d70b2853..ddbc539015 100644
--- a/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/SSHJAgentAdaptor.java
+++ b/modules/airavata-helix/agent-impl/sshj-agent/src/main/java/org/apache/airavata/helix/adaptor/SSHJAgentAdaptor.java
@@ -23,7 +23,8 @@ import net.schmizz.keepalive.KeepAliveProvider;
 import net.schmizz.sshj.DefaultConfig;
 import net.schmizz.sshj.connection.ConnectionException;
 import net.schmizz.sshj.connection.channel.direct.Session;
-import net.schmizz.sshj.sftp.*;
+import net.schmizz.sshj.sftp.FileAttributes;
+import net.schmizz.sshj.sftp.RemoteResourceInfo;
 import net.schmizz.sshj.transport.verification.HostKeyVerifier;
 import net.schmizz.sshj.userauth.keyprovider.KeyProvider;
 import net.schmizz.sshj.userauth.method.AuthKeyboardInteractive;
@@ -50,7 +51,10 @@ import org.apache.airavata.model.credential.store.SSHCredential;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.*;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.security.PublicKey;
 import java.util.*;
 import java.util.stream.Collectors;
diff --git a/modules/airavata-helix/helix-spectator/pom.xml b/modules/airavata-helix/helix-spectator/pom.xml
index 09dfe4909f..028f96e020 100644
--- a/modules/airavata-helix/helix-spectator/pom.xml
+++ b/modules/airavata-helix/helix-spectator/pom.xml
@@ -31,7 +31,6 @@
     <name>Helix Spectator</name>
     <artifactId>helix-spectator</artifactId>
 
-
     <dependencies>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -75,7 +74,7 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy-templates</artifactId>
             <version>${groovy.version}</version>
         </dependency>
@@ -104,5 +103,28 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-classic</artifactId>
+            <version>${logback.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-core</artifactId>
+            <version>${logback.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-to-slf4j</artifactId>
+            <version>2.21.1</version>
+        </dependency>
     </dependencies>
 </project>
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/controller/HelixController.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/controller/HelixController.java
index be3c11fbe9..9cae34a4ef 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/controller/HelixController.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/controller/HelixController.java
@@ -23,8 +23,6 @@ import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.helix.controller.HelixControllerMain;
 import org.apache.helix.manager.zk.ZKHelixAdmin;
-import org.apache.helix.model.BuiltInStateModelDefinitions;
-import org.apache.helix.model.IdealState;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/AiravataTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/AiravataTask.java
index 86dcdf7697..59aa13c8bf 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/AiravataTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/AiravataTask.java
@@ -46,8 +46,6 @@ import org.apache.airavata.registry.api.exception.RegistryServiceException;
 import org.apache.airavata.service.profile.client.ProfileServiceClientFactory;
 import org.apache.airavata.service.profile.user.cpi.UserProfileService;
 import org.apache.airavata.service.profile.user.cpi.exception.UserProfileServiceException;
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.exception.ExceptionUtils;
 import org.apache.helix.HelixManager;
 import org.apache.helix.task.TaskResult;
 import org.json.JSONException;
@@ -58,11 +56,14 @@ import org.slf4j.MDC;
 
 import java.io.File;
 import java.io.IOException;
+import java.io.PrintWriter;
 import java.io.StringWriter;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.Comparator;
 import java.util.List;
-import java.util.UUID;
 
 public abstract class AiravataTask extends AbstractTask {
 
@@ -140,18 +141,9 @@ public abstract class AiravataTask extends AbstractTask {
         if (currentRetryCount >= getRetryCount() || fatal) {
             ProcessStatus status = new ProcessStatus(ProcessState.FAILED);
             StringWriter errors = new StringWriter();
-
-            String errorCode = UUID.randomUUID().toString();
-            String errorMessage = "Error Code : " + errorCode + ", Task " + getTaskId() + " failed due to " + reason +
-                    (error == null ? "" : ", " + error.getMessage());
-
-            // wrapping from new error object with error code
-            error = new TaskOnFailException(errorMessage, true, error);
-
-            status.setReason(errorMessage);
-            errors.write(ExceptionUtils.getStackTrace(error));
-            logger.error(errorMessage, error);
-
+            PrintWriter pw = new PrintWriter(errors);
+            error.printStackTrace(pw);
+            status.setReason(errors.toString());
             status.setTimeOfStateChange(AiravataUtils.getCurrentTimestamp().getTime());
             if (getTaskContext() != null) { // task context could be null if the initialization failed
                 getTaskContext().setProcessStatus(status);
@@ -192,14 +184,13 @@ public abstract class AiravataTask extends AbstractTask {
                 saveAndPublishProcessStatus(requeueStatus);
             }
 
-            return onFail(errorMessage, fatal);
+            return onFail(reason, fatal, error);
         } else {
-            return onFail("Handover back to helix engine to retry", fatal);
+            return onFail("Handover back to helix engine to retry", fatal, error);
         }
     }
 
     protected void cleanup() {
-
         try {
             // cleaning up local data directory
             String localDataPath = ServerSettings.getLocalDataLocation();
@@ -207,14 +198,24 @@ public abstract class AiravataTask extends AbstractTask {
             localDataPath = localDataPath + getProcessId();
 
             try {
-                FileUtils.deleteDirectory(new File(localDataPath));
+                Path directory = Path.of(localDataPath);
+                if (Files.exists(directory)) {
+                    Files.walk(directory)
+                            .sorted(Comparator.reverseOrder())
+                            .forEach(path -> {
+                                try {
+                                    Files.delete(path);
+                                } catch (IOException e) {
+                                    logger.error("Failed to delete path " + path, e);
+                                }
+                            });
+                }
             } catch (IOException e) {
                 logger.error("Failed to delete local data directory " + localDataPath, e);
             }
         } catch (Exception e) {
             logger.error("Failed to clean up", e);
         }
-
     }
     protected void saveAndPublishProcessStatus(ProcessState state) {
 
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/TaskContext.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/TaskContext.java
index 17c48ea45f..9e2d09b72b 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/TaskContext.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/TaskContext.java
@@ -21,17 +21,10 @@ package org.apache.airavata.helix.impl.task;
 
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.common.utils.ThriftUtils;
-import org.apache.airavata.helix.core.util.TaskUtil;
 import org.apache.airavata.messaging.core.Publisher;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.BatchQueue;
-import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
-import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
-import org.apache.airavata.model.appcatalog.computeresource.LOCALSubmission;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager;
-import org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission;
+import org.apache.airavata.model.appcatalog.computeresource.*;
 import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
 import org.apache.airavata.model.appcatalog.gatewayprofile.StoragePreference;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.ComputeResourceReservation;
@@ -65,15 +58,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Calendar;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
+import java.util.*;
 
 /**
  * Note: process context property use lazy loading approach. In runtime you will see some properties as null
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/CancelCompletingTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/CancelCompletingTask.java
index e9b3b0fb65..908fbe900e 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/CancelCompletingTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/CancelCompletingTask.java
@@ -1,6 +1,5 @@
 package org.apache.airavata.helix.impl.task.cancel;
 
-import org.apache.airavata.helix.core.util.MonitoringUtil;
 import org.apache.airavata.helix.impl.task.AiravataTask;
 import org.apache.airavata.helix.impl.task.TaskContext;
 import org.apache.airavata.helix.task.api.TaskHelper;
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/completing/CompletingTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/completing/CompletingTask.java
index 10e9790b29..53bea83afb 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/completing/CompletingTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/completing/CompletingTask.java
@@ -19,12 +19,10 @@
  */
 package org.apache.airavata.helix.impl.task.completing;
 
-import org.apache.airavata.helix.core.util.MonitoringUtil;
 import org.apache.airavata.helix.impl.task.AiravataTask;
 import org.apache.airavata.helix.impl.task.TaskContext;
 import org.apache.airavata.helix.task.api.TaskHelper;
 import org.apache.airavata.helix.task.api.annotation.TaskDef;
-import org.apache.airavata.helix.task.api.annotation.TaskParam;
 import org.apache.airavata.model.status.ProcessState;
 import org.apache.helix.task.TaskResult;
 import org.slf4j.Logger;
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/DataParsingTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/DataParsingTask.java
index 09cfb57427..ac77faadbd 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/DataParsingTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/DataParsingTask.java
@@ -53,11 +53,7 @@ import org.apache.airavata.model.appcatalog.parser.ParserInput;
 import org.apache.airavata.model.appcatalog.parser.ParserOutput;
 import org.apache.airavata.model.appcatalog.storageresource.StorageResourceDescription;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
-import org.apache.airavata.model.data.replica.DataProductModel;
-import org.apache.airavata.model.data.replica.DataProductType;
-import org.apache.airavata.model.data.replica.DataReplicaLocationModel;
-import org.apache.airavata.model.data.replica.ReplicaLocationCategory;
-import org.apache.airavata.model.data.replica.ReplicaPersistentType;
+import org.apache.airavata.model.data.replica.*;
 import org.apache.airavata.patform.monitoring.CountMonitor;
 import org.apache.airavata.registry.api.RegistryService;
 import org.apache.airavata.registry.api.client.RegistryServiceClientFactory;
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/ParsingTriggeringTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/ParsingTriggeringTask.java
index dc1f157d5c..44fcb4e016 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/ParsingTriggeringTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/ParsingTriggeringTask.java
@@ -4,12 +4,12 @@ import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.helix.impl.task.AiravataTask;
 import org.apache.airavata.helix.impl.task.TaskContext;
+import org.apache.airavata.helix.impl.task.parsing.kafka.ProcessCompletionMessageSerializer;
 import org.apache.airavata.helix.task.api.TaskHelper;
 import org.apache.airavata.helix.task.api.annotation.TaskDef;
 import org.apache.helix.task.TaskResult;
 import org.apache.kafka.clients.producer.*;
 import org.apache.kafka.common.serialization.StringSerializer;
-import org.apache.airavata.helix.impl.task.parsing.kafka.ProcessCompletionMessageSerializer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -19,7 +19,7 @@ import java.util.concurrent.ExecutionException;
 @TaskDef(name = "Parsing Triggering Task")
 public class ParsingTriggeringTask extends AiravataTask {
 
-    private final static Logger logger = LoggerFactory.getLogger(DataParsingTask.class);
+    private final static Logger logger = LoggerFactory.getLogger(ParsingTriggeringTask.class);
 
     private static Producer<String, ProcessCompletionMessage> producer;
 
@@ -33,7 +33,7 @@ public class ParsingTriggeringTask extends AiravataTask {
             props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG,
                     StringSerializer.class.getName());
             props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, ProcessCompletionMessageSerializer.class.getName());
-            producer = new KafkaProducer<String, ProcessCompletionMessage>(props);
+            producer = new KafkaProducer<>(props);
         }
     }
 
@@ -49,7 +49,7 @@ public class ParsingTriggeringTask extends AiravataTask {
     @Override
     public TaskResult onRun(TaskHelper helper, TaskContext taskContext) {
 
-        logger.info("Starting parsing triggerring task " + getTaskId() + ", experiment id " + getExperimentId());
+        logger.info("Starting parsing triggering task {}, experiment id {}", getTaskId(), getExperimentId());
 
         ProcessCompletionMessage completionMessage = new ProcessCompletionMessage();
         completionMessage.setExperimentId(getExperimentId());
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/staging/OutputDataStagingTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/staging/OutputDataStagingTask.java
index ba06618f98..99a8d5c7dd 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/staging/OutputDataStagingTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/staging/OutputDataStagingTask.java
@@ -30,12 +30,9 @@ import org.apache.airavata.model.appcatalog.storageresource.StorageResourceDescr
 import org.apache.airavata.model.application.io.DataType;
 import org.apache.airavata.model.application.io.OutputDataObjectType;
 import org.apache.airavata.model.status.ProcessState;
-import org.apache.airavata.model.task.DataStageType;
 import org.apache.airavata.model.task.DataStagingTaskModel;
-import org.apache.airavata.model.task.TaskTypes;
 import org.apache.airavata.patform.monitoring.CountMonitor;
 import org.apache.helix.task.TaskResult;
-import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -43,7 +40,6 @@ import java.io.File;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
 
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/DefaultJobSubmissionTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/DefaultJobSubmissionTask.java
index a7f8ed9f08..06e5c666dc 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/DefaultJobSubmissionTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/DefaultJobSubmissionTask.java
@@ -22,26 +22,27 @@ package org.apache.airavata.helix.impl.task.submission;
 import org.apache.airavata.agents.api.AgentAdaptor;
 import org.apache.airavata.agents.api.JobSubmissionOutput;
 import org.apache.airavata.common.utils.AiravataUtils;
-import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.helix.impl.task.TaskContext;
 import org.apache.airavata.helix.impl.task.submission.config.GroovyMapBuilder;
 import org.apache.airavata.helix.impl.task.submission.config.GroovyMapData;
 import org.apache.airavata.helix.task.api.TaskHelper;
 import org.apache.airavata.helix.task.api.annotation.TaskDef;
 import org.apache.airavata.model.commons.ErrorModel;
- import org.apache.airavata.model.job.JobModel;
-import org.apache.airavata.model.status.*;
+import org.apache.airavata.model.job.JobModel;
+import org.apache.airavata.model.status.JobState;
+import org.apache.airavata.model.status.JobStatus;
+import org.apache.airavata.model.status.ProcessState;
 import org.apache.airavata.model.workspace.GatewayUsageReportingCommand;
 import org.apache.airavata.patform.monitoring.CountMonitor;
 import org.apache.helix.task.TaskResult;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.*;
-import java.net.URLEncoder;
-import java.nio.charset.StandardCharsets;
-import java.text.SimpleDateFormat;
-import java.util.*;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
 
 @TaskDef(name = "Default Job Submission")
 public class DefaultJobSubmissionTask extends JobSubmissionTask {
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/JobSubmissionTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/JobSubmissionTask.java
index 5b815b87fe..a37a81bb33 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/JobSubmissionTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/JobSubmissionTask.java
@@ -43,7 +43,8 @@ import org.slf4j.LoggerFactory;
 
 import java.io.File;
 import java.security.SecureRandom;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
 
 public abstract class JobSubmissionTask extends AiravataTask {
 
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/LocalJobSubmissionTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/LocalJobSubmissionTask.java
index cc03c50d36..f0b34c9a8b 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/LocalJobSubmissionTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/LocalJobSubmissionTask.java
@@ -19,22 +19,14 @@
  */
 package org.apache.airavata.helix.impl.task.submission;
 
-import org.apache.airavata.agents.api.AgentAdaptor;
-import org.apache.airavata.agents.api.JobSubmissionOutput;
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.helix.impl.task.TaskContext;
-import org.apache.airavata.helix.impl.task.submission.config.GroovyMapBuilder;
 import org.apache.airavata.helix.impl.task.submission.config.GroovyMapData;
 import org.apache.airavata.helix.task.api.TaskHelper;
 import org.apache.airavata.helix.task.api.annotation.TaskDef;
 import org.apache.airavata.model.job.JobModel;
-import org.apache.airavata.model.status.JobState;
-import org.apache.airavata.model.status.JobStatus;
-import org.apache.commons.io.FileUtils;
 import org.apache.helix.task.TaskResult;
 
-import java.io.File;
-import java.util.Arrays;
 import java.util.UUID;
 
 @TaskDef(name = "Local Job Submission")
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/GroovyMapBuilder.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/GroovyMapBuilder.java
index b4f2814aac..9971f7818e 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/GroovyMapBuilder.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/GroovyMapBuilder.java
@@ -21,14 +21,16 @@ package org.apache.airavata.helix.impl.task.submission.config;
 
 import groovy.text.GStringTemplateEngine;
 import groovy.text.TemplateEngine;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.helix.impl.task.TaskContext;
 import org.apache.airavata.helix.impl.task.TaskOnFailException;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appdeployment.CommandObject;
 import org.apache.airavata.model.appcatalog.appdeployment.SetEnvPaths;
-import org.apache.airavata.model.appcatalog.computeresource.*;
+import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
+import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
+import org.apache.airavata.model.appcatalog.computeresource.MonitorMode;
+import org.apache.airavata.model.appcatalog.computeresource.SSHJobSubmission;
 import org.apache.airavata.model.application.io.DataType;
 import org.apache.airavata.model.application.io.InputDataObjectType;
 import org.apache.airavata.model.application.io.OutputDataObjectType;
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/ForkJobConfiguration.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/ForkJobConfiguration.java
index 9604ed9302..fe489da215 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/ForkJobConfiguration.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/ForkJobConfiguration.java
@@ -23,9 +23,9 @@ import org.apache.airavata.helix.impl.task.submission.config.JobManagerConfigura
 import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.RawCommandInfo;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.commons.io.FilenameUtils;
 
 import java.io.File;
+import java.nio.file.Path;
 import java.util.Map;
 
 public class ForkJobConfiguration implements JobManagerConfiguration {
@@ -83,7 +83,7 @@ public class ForkJobConfiguration implements JobManagerConfiguration {
     @Override
     public RawCommandInfo getSubmitCommand(String workingDirectory, String forkFilePath) {
         return new RawCommandInfo(this.installedPath + jobManagerCommands.get(JobManagerCommand.SUBMISSION).trim() + " " +
-                workingDirectory + File.separator + FilenameUtils.getName(forkFilePath));
+                workingDirectory + File.separator + Path.of(forkFilePath).getFileName().toString());
     }
 
     @Override
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/HTCondorJobConfiguration.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/HTCondorJobConfiguration.java
index 601c625759..618c577649 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/HTCondorJobConfiguration.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/HTCondorJobConfiguration.java
@@ -23,9 +23,9 @@ import org.apache.airavata.helix.impl.task.submission.config.JobManagerConfigura
 import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.RawCommandInfo;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.commons.io.FilenameUtils;
 
 import java.io.File;
+import java.nio.file.Path;
 import java.util.Map;
 
 public class HTCondorJobConfiguration implements JobManagerConfiguration {
@@ -70,9 +70,9 @@ public class HTCondorJobConfiguration implements JobManagerConfiguration {
         return scriptExtension;
     }
 
-    public RawCommandInfo getSubmitCommand(String workingDirectory,String pbsFilePath) {
+    public RawCommandInfo getSubmitCommand(String workingDirectory, String pbsFilePath) {
         return new RawCommandInfo(this.installedPath + jMCommands.get(JobManagerCommand.SUBMISSION).trim() + " " +
-                workingDirectory + File.separator + FilenameUtils.getName(pbsFilePath));
+                workingDirectory + File.separator + Path.of(pbsFilePath).getFileName().toString());
     }
 
     public String getInstalledPath() {
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/LSFJobConfiguration.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/LSFJobConfiguration.java
index c64376fd78..8216b617bb 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/LSFJobConfiguration.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/LSFJobConfiguration.java
@@ -23,11 +23,11 @@ import org.apache.airavata.helix.impl.task.submission.config.JobManagerConfigura
 import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.RawCommandInfo;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.commons.io.FilenameUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
+import java.nio.file.Path;
 import java.util.Map;
 
 public class LSFJobConfiguration implements JobManagerConfiguration {
@@ -85,7 +85,7 @@ public class LSFJobConfiguration implements JobManagerConfiguration {
     @Override
     public RawCommandInfo getSubmitCommand(String workingDirectory, String pbsFilePath) {
         return new RawCommandInfo(this.installedPath + "bsub < " +
-                workingDirectory + File.separator + FilenameUtils.getName(pbsFilePath));
+                workingDirectory + File.separator + Path.of(pbsFilePath).getFileName().toString());
     }
 
     @Override
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/PBSJobConfiguration.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/PBSJobConfiguration.java
index ddec477a27..898e3329fe 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/PBSJobConfiguration.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/PBSJobConfiguration.java
@@ -23,9 +23,9 @@ import org.apache.airavata.helix.impl.task.submission.config.JobManagerConfigura
 import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.RawCommandInfo;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.commons.io.FilenameUtils;
 
 import java.io.File;
+import java.nio.file.Path;
 import java.util.Map;
 
 public class PBSJobConfiguration implements JobManagerConfiguration {
@@ -74,7 +74,7 @@ public class PBSJobConfiguration implements JobManagerConfiguration {
 
 	public RawCommandInfo getSubmitCommand(String workingDirectory, String pbsFilePath) {
 		return new RawCommandInfo(this.installedPath + jobManagerCommands.get(JobManagerCommand.SUBMISSION).trim() + " " +
-				workingDirectory + File.separator + FilenameUtils.getName(pbsFilePath));
+				workingDirectory + File.separator + Path.of(pbsFilePath).getFileName().toString());
 	}
 
 	public String getInstalledPath() {
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/SlurmJobConfiguration.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/SlurmJobConfiguration.java
index 7f5352c7eb..64a5cb6435 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/SlurmJobConfiguration.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/SlurmJobConfiguration.java
@@ -23,9 +23,9 @@ import org.apache.airavata.helix.impl.task.submission.config.JobManagerConfigura
 import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.RawCommandInfo;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.commons.io.FilenameUtils;
 
 import java.io.File;
+import java.nio.file.Path;
 import java.util.Map;
 
 public class SlurmJobConfiguration implements JobManagerConfiguration {
@@ -70,9 +70,9 @@ public class SlurmJobConfiguration implements JobManagerConfiguration {
         return scriptExtension;
     }
 
-    public RawCommandInfo getSubmitCommand(String workingDirectory,String pbsFilePath) {
-          return new RawCommandInfo(this.installedPath + jMCommands.get(JobManagerCommand.SUBMISSION).trim() + " " +
-                workingDirectory + File.separator + FilenameUtils.getName(pbsFilePath));
+    public RawCommandInfo getSubmitCommand(String workingDirectory, String pbsFilePath) {
+        return new RawCommandInfo(this.installedPath + jMCommands.get(JobManagerCommand.SUBMISSION).trim() + " " +
+                workingDirectory + File.separator + Path.of(pbsFilePath).getFileName().toString());
     }
 
     public String getInstalledPath() {
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/UGEJobConfiguration.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/UGEJobConfiguration.java
index 972d276ca2..f0d30f0567 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/UGEJobConfiguration.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/UGEJobConfiguration.java
@@ -23,9 +23,9 @@ import org.apache.airavata.helix.impl.task.submission.config.JobManagerConfigura
 import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.RawCommandInfo;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
-import org.apache.commons.io.FilenameUtils;
 
 import java.io.File;
+import java.nio.file.Path;
 import java.util.Map;
 
 public class UGEJobConfiguration implements JobManagerConfiguration {
@@ -71,7 +71,7 @@ public class UGEJobConfiguration implements JobManagerConfiguration {
 
     public RawCommandInfo getSubmitCommand(String workingDirectory, String pbsFilePath) {
         return new RawCommandInfo(this.installedPath + "qsub " +
-                workingDirectory + File.separator + FilenameUtils.getName(pbsFilePath));
+                workingDirectory + File.separator + Path.of(pbsFilePath).getFileName().toString());
     }
 
     public String getInstalledPath() {
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/parser/HTCondorOutputParser.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/parser/HTCondorOutputParser.java
index 5a6dfec7f1..05f7391170 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/parser/HTCondorOutputParser.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/submission/config/app/parser/HTCondorOutputParser.java
@@ -23,7 +23,6 @@ import org.apache.airavata.helix.impl.task.submission.config.OutputParser;
 import org.apache.airavata.helix.impl.task.submission.config.app.JobUtil;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.model.status.JobStatus;
-import org.apache.airavata.registry.core.utils.DBConstants;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/ParserWorkflowManager.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/ParserWorkflowManager.java
index 1646ee1b36..d84ff20d80 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/ParserWorkflowManager.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/ParserWorkflowManager.java
@@ -23,9 +23,9 @@ import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.helix.core.AbstractTask;
 import org.apache.airavata.helix.core.OutPort;
+import org.apache.airavata.helix.impl.task.parsing.DataParsingTask;
 import org.apache.airavata.helix.impl.task.parsing.ProcessCompletionMessage;
 import org.apache.airavata.helix.impl.task.parsing.kafka.ProcessCompletionMessageDeserializer;
-import org.apache.airavata.helix.impl.task.parsing.*;
 import org.apache.airavata.helix.impl.task.parsing.models.ParsingTaskInput;
 import org.apache.airavata.helix.impl.task.parsing.models.ParsingTaskInputs;
 import org.apache.airavata.helix.impl.task.parsing.models.ParsingTaskOutput;
@@ -42,7 +42,6 @@ import org.apache.kafka.clients.consumer.*;
 import org.apache.kafka.common.TopicPartition;
 import org.apache.kafka.common.serialization.StringDeserializer;
 import org.apache.thrift.TException;
-import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PostWorkflowManager.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PostWorkflowManager.java
index 26f915b0d7..8e9fdbb5de 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PostWorkflowManager.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PostWorkflowManager.java
@@ -24,29 +24,29 @@ import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.helix.core.OutPort;
-import org.apache.airavata.helix.impl.task.*;
+import org.apache.airavata.helix.impl.task.AiravataTask;
 import org.apache.airavata.helix.impl.task.completing.CompletingTask;
 import org.apache.airavata.helix.impl.task.parsing.ParsingTriggeringTask;
 import org.apache.airavata.helix.impl.task.staging.ArchiveTask;
 import org.apache.airavata.helix.impl.task.staging.JobVerificationTask;
 import org.apache.airavata.helix.impl.task.staging.OutputDataStagingTask;
-import org.apache.airavata.model.job.JobModel;
-import org.apache.airavata.model.status.ProcessState;
-import org.apache.airavata.model.status.ProcessStatus;
-import org.apache.airavata.monitor.JobStateValidator;
-import org.apache.airavata.monitor.JobStatusResult;
-import org.apache.airavata.monitor.kafka.JobStatusResultDeserializer;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.model.experiment.ExperimentModel;
+import org.apache.airavata.model.job.JobModel;
 import org.apache.airavata.model.messaging.event.JobIdentifier;
 import org.apache.airavata.model.messaging.event.JobStatusChangeEvent;
 import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.model.status.JobStatus;
+import org.apache.airavata.model.status.ProcessState;
+import org.apache.airavata.model.status.ProcessStatus;
 import org.apache.airavata.model.task.DataStagingTaskModel;
 import org.apache.airavata.model.task.TaskModel;
 import org.apache.airavata.model.task.TaskTypes;
+import org.apache.airavata.monitor.JobStateValidator;
+import org.apache.airavata.monitor.JobStatusResult;
+import org.apache.airavata.monitor.kafka.JobStatusResultDeserializer;
 import org.apache.airavata.patform.monitoring.CountMonitor;
 import org.apache.airavata.patform.monitoring.MonitoringServer;
 import org.apache.airavata.registry.api.RegistryService;
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PreWorkflowManager.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PreWorkflowManager.java
index 8f509cfd0b..47a390201d 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PreWorkflowManager.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/workflow/PreWorkflowManager.java
@@ -36,7 +36,9 @@ import org.apache.airavata.helix.impl.task.staging.OutputDataStagingTask;
 import org.apache.airavata.helix.impl.task.submission.DefaultJobSubmissionTask;
 import org.apache.airavata.messaging.core.*;
 import org.apache.airavata.model.experiment.ExperimentModel;
-import org.apache.airavata.model.messaging.event.*;
+import org.apache.airavata.model.messaging.event.MessageType;
+import org.apache.airavata.model.messaging.event.ProcessSubmitEvent;
+import org.apache.airavata.model.messaging.event.ProcessTerminateEvent;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.process.ProcessWorkflow;
 import org.apache.airavata.model.status.ProcessState;
diff --git a/modules/airavata-helix/task-api/pom.xml b/modules/airavata-helix/task-api/pom.xml
index 43801cc8c7..53945d2ae1 100644
--- a/modules/airavata-helix/task-api/pom.xml
+++ b/modules/airavata-helix/task-api/pom.xml
@@ -49,26 +49,41 @@
                     <groupId>org.apache.logging.log4j</groupId>
                     <artifactId>log4j-slf4j-impl</artifactId>
                 </exclusion>
+                <exclusion>
+                    <groupId>commons-logging</groupId>
+                    <artifactId>commons-logging</artifactId>
+                </exclusion>
             </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>agent-api</artifactId>
             <version>${project.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.logging.log4j</groupId>
+                    <artifactId>log4j-slf4j2-impl</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-classic</artifactId>
+            <version>${logback.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-core</artifactId>
+            <version>${logback.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-to-slf4j</artifactId>
+            <version>${log4j2.version}</version>
         </dependency>
     </dependencies>
-
-    <!--<build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
-                <configuration>
-                    <source>${java.version}</source>
-                    <target>${java.version}</target>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>-->
 </project>
diff --git a/modules/airavata-helix/task-api/src/main/java/org/apache/airavata/helix/task/api/support/AdaptorSupport.java b/modules/airavata-helix/task-api/src/main/java/org/apache/airavata/helix/task/api/support/AdaptorSupport.java
index 6d142bc3ba..3e7b3c9817 100644
--- a/modules/airavata-helix/task-api/src/main/java/org/apache/airavata/helix/task/api/support/AdaptorSupport.java
+++ b/modules/airavata-helix/task-api/src/main/java/org/apache/airavata/helix/task/api/support/AdaptorSupport.java
@@ -19,12 +19,12 @@
  */
 package org.apache.airavata.helix.task.api.support;
 
-import org.apache.airavata.agents.api.*;
+import org.apache.airavata.agents.api.AgentAdaptor;
+import org.apache.airavata.agents.api.AgentException;
+import org.apache.airavata.agents.api.StorageResourceAdaptor;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
 
-import java.io.File;
-
 /**
  * TODO: Class level comments please
  *
diff --git a/modules/airavata-helix/task-api/src/main/resources/logback.xml b/modules/airavata-helix/task-api/src/main/resources/logback.xml
new file mode 100644
index 0000000000..201b726566
--- /dev/null
+++ b/modules/airavata-helix/task-api/src/main/resources/logback.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>logs/airavata-task-api.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>logs/airavata-task-api.%d{yyyy-MM-dd}.log</fileNamePattern>
+            <maxHistory>30</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <root level="INFO">
+        <appender-ref ref="CONSOLE" />
+        <appender-ref ref="FILE" />
+    </root>
+
+    <!-- Set specific package logging levels -->
+    <logger name="org.apache.airavata" level="DEBUG"/>
+    <logger name="org.apache.helix" level="INFO"/>
+</configuration> 
\ No newline at end of file
diff --git a/modules/airavata-helix/task-core/pom.xml b/modules/airavata-helix/task-core/pom.xml
index f07c5d41ea..43b3efc1d6 100644
--- a/modules/airavata-helix/task-core/pom.xml
+++ b/modules/airavata-helix/task-core/pom.xml
@@ -54,18 +54,4 @@
         </dependency>
     </dependencies>
 
-    <!--<build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
-                <configuration>
-                    <source>${java.version}</source>
-                    <target>${java.version}</target>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>-->
-
 </project>
diff --git a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/OutPort.java b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/OutPort.java
index ef528b1c70..229ed11ab0 100644
--- a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/OutPort.java
+++ b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/OutPort.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.helix.core;
 
 import org.apache.helix.task.TaskResult;
-import org.apache.helix.task.UserContentStore;
 
 /**
  * TODO: Class level comments please
diff --git a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/participant/HelixParticipant.java b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/participant/HelixParticipant.java
index 8bf040f513..80ec388d39 100644
--- a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/participant/HelixParticipant.java
+++ b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/participant/HelixParticipant.java
@@ -21,11 +21,13 @@ package org.apache.airavata.helix.core.participant;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.helix.core.support.TaskHelperImpl;
 import org.apache.airavata.helix.core.AbstractTask;
+import org.apache.airavata.helix.core.support.TaskHelperImpl;
 import org.apache.airavata.helix.task.api.annotation.TaskDef;
 import org.apache.helix.InstanceType;
 import org.apache.helix.examples.OnlineOfflineStateModelFactory;
+import org.apache.helix.manager.zk.ZKHelixAdmin;
+import org.apache.helix.manager.zk.ZKHelixManager;
 import org.apache.helix.model.BuiltInStateModelDefinitions;
 import org.apache.helix.model.InstanceConfig;
 import org.apache.helix.participant.StateMachineEngine;
@@ -33,8 +35,6 @@ import org.apache.helix.task.TaskFactory;
 import org.apache.helix.task.TaskStateModelFactory;
 import org.apache.helix.zookeeper.datamodel.serializer.ZNRecordSerializer;
 import org.apache.helix.zookeeper.impl.client.ZkClient;
-import org.apache.helix.manager.zk.ZKHelixAdmin;
-import org.apache.helix.manager.zk.ZKHelixManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AdaptorSupportImpl.java b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AdaptorSupportImpl.java
index f258e4d9cc..fa054e01c2 100644
--- a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AdaptorSupportImpl.java
+++ b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AdaptorSupportImpl.java
@@ -19,7 +19,9 @@
  */
 package org.apache.airavata.helix.core.support.adaptor;
 
-import org.apache.airavata.agents.api.*;
+import org.apache.airavata.agents.api.AgentAdaptor;
+import org.apache.airavata.agents.api.AgentException;
+import org.apache.airavata.agents.api.StorageResourceAdaptor;
 import org.apache.airavata.helix.adaptor.SSHJAgentAdaptor;
 import org.apache.airavata.helix.adaptor.SSHJStorageAdaptor;
 import org.apache.airavata.helix.task.api.support.AdaptorSupport;
diff --git a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AgentStore.java b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AgentStore.java
index b66cbe6c07..875367438b 100644
--- a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AgentStore.java
+++ b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/support/adaptor/AgentStore.java
@@ -23,7 +23,6 @@ import org.apache.airavata.agents.api.AgentAdaptor;
 import org.apache.airavata.agents.api.StorageResourceAdaptor;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
-import org.apache.zookeeper.Op;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/util/TaskUtil.java b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/util/TaskUtil.java
index 5de46a7b3f..c1f46d68e3 100644
--- a/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/util/TaskUtil.java
+++ b/modules/airavata-helix/task-core/src/main/java/org/apache/airavata/helix/core/util/TaskUtil.java
@@ -30,7 +30,10 @@ import org.slf4j.LoggerFactory;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * TODO: Class level comments please
diff --git a/modules/airavata-helix/workflow-impl/pom.xml b/modules/airavata-helix/workflow-impl/pom.xml
index 8baf3a01c2..ac301659c1 100644
--- a/modules/airavata-helix/workflow-impl/pom.xml
+++ b/modules/airavata-helix/workflow-impl/pom.xml
@@ -44,20 +44,4 @@
         </dependency>
     </dependencies>
 
-<!--
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
-                <configuration>
-                    <source>${java.version}</source>
-                    <target>${java.version}</target>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
--->
-
 </project>
diff --git a/modules/airavata-metascheduler/metadata-analyzer/src/main/java/org/apache/airavata/metascheduler/metadata/analyzer/impl/DataAnalyzerImpl.java b/modules/airavata-metascheduler/metadata-analyzer/src/main/java/org/apache/airavata/metascheduler/metadata/analyzer/impl/DataAnalyzerImpl.java
index 40721707ee..572c3e94e4 100644
--- a/modules/airavata-metascheduler/metadata-analyzer/src/main/java/org/apache/airavata/metascheduler/metadata/analyzer/impl/DataAnalyzerImpl.java
+++ b/modules/airavata-metascheduler/metadata-analyzer/src/main/java/org/apache/airavata/metascheduler/metadata/analyzer/impl/DataAnalyzerImpl.java
@@ -7,7 +7,6 @@ import org.apache.airavata.metascheduler.core.utils.Utils;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.model.status.JobStatus;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 import org.slf4j.Logger;
diff --git a/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/api/ProcessScheduler.java b/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/api/ProcessScheduler.java
index 224bf39318..c3a636a835 100644
--- a/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/api/ProcessScheduler.java
+++ b/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/api/ProcessScheduler.java
@@ -1,9 +1,5 @@
 package org.apache.airavata.metascheduler.core.api;
 
-import org.apache.airavata.model.process.ProcessModel;
-
-import java.util.Optional;
-
 /**
  * Provides interfaces for Process related scheduling operations
  */
diff --git a/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/utils/Utils.java b/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/utils/Utils.java
index 154fc1e58c..6ecdc6ae83 100644
--- a/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/utils/Utils.java
+++ b/modules/airavata-metascheduler/metascheduler-core/src/main/java/org/apache/airavata/metascheduler/core/utils/Utils.java
@@ -14,7 +14,6 @@ import org.apache.airavata.model.messaging.event.ProcessStatusChangeEvent;
 import org.apache.airavata.model.status.ProcessState;
 import org.apache.airavata.model.status.ProcessStatus;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.apache.airavata.registry.api.exception.RegistryServiceException;
 import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
 import org.apache.thrift.TException;
diff --git a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/api/ProcessSchedulerImpl.java b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/api/ProcessSchedulerImpl.java
index d6dbed05e2..b3c9a54f73 100644
--- a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/api/ProcessSchedulerImpl.java
+++ b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/api/ProcessSchedulerImpl.java
@@ -13,7 +13,6 @@ import org.apache.airavata.model.scheduling.ComputationalResourceSchedulingModel
 import org.apache.airavata.model.status.ProcessState;
 import org.apache.airavata.model.status.ProcessStatus;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/ComputeResourceSelectionPolicyImpl.java b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/ComputeResourceSelectionPolicyImpl.java
index 70f56bed0d..1be46764d3 100644
--- a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/ComputeResourceSelectionPolicyImpl.java
+++ b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/ComputeResourceSelectionPolicyImpl.java
@@ -5,7 +5,6 @@ import org.apache.airavata.metascheduler.core.engine.ComputeResourceSelectionPol
 import org.apache.airavata.metascheduler.core.utils.Utils;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupComputeResourcePreference;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 
 public abstract class ComputeResourceSelectionPolicyImpl implements ComputeResourceSelectionPolicy {
 
diff --git a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/DefaultComputeResourceSelectionPolicy.java b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/DefaultComputeResourceSelectionPolicy.java
index 3a452e04eb..8ff26aa21d 100644
--- a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/DefaultComputeResourceSelectionPolicy.java
+++ b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/DefaultComputeResourceSelectionPolicy.java
@@ -8,7 +8,6 @@ import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.scheduling.ComputationalResourceSchedulingModel;
 import org.apache.airavata.model.status.QueueStatusModel;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/MultipleComputeResourcePolicy.java b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/MultipleComputeResourcePolicy.java
index 6a2bd22f80..5bfc406dff 100644
--- a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/MultipleComputeResourcePolicy.java
+++ b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/cr/selection/MultipleComputeResourcePolicy.java
@@ -1,18 +1,14 @@
 package org.apache.airavata.metascheduler.process.scheduling.engine.cr.selection;
 
-import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
-import org.apache.airavata.model.appcatalog.groupresourceprofile.ComputeResourcePolicy;
-import org.apache.airavata.model.application.io.InputDataObjectType;
 import org.apache.airavata.model.experiment.ExperimentModel;
 import org.apache.airavata.model.experiment.UserConfigurationDataModel;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.scheduling.ComputationalResourceSchedulingModel;
 import org.apache.airavata.model.status.QueueStatusModel;
+import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ExponentialBackOffReScheduler.java b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ExponentialBackOffReScheduler.java
index 26383b6296..0f7be92a5e 100644
--- a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ExponentialBackOffReScheduler.java
+++ b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ExponentialBackOffReScheduler.java
@@ -15,7 +15,6 @@ import org.apache.airavata.model.scheduling.ComputationalResourceSchedulingModel
 import org.apache.airavata.model.status.ProcessState;
 import org.apache.airavata.model.status.ProcessStatus;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.apache.airavata.registry.api.exception.RegistryServiceException;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
diff --git a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ProcessScannerImpl.java b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ProcessScannerImpl.java
index e355b3f92d..95a3497bd1 100644
--- a/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ProcessScannerImpl.java
+++ b/modules/airavata-metascheduler/process-scheduler/src/main/java/org/apache/airavata/metascheduler/process/scheduling/engine/rescheduler/ProcessScannerImpl.java
@@ -8,10 +8,8 @@ import org.apache.airavata.metascheduler.core.utils.Utils;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.status.ProcessState;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
-import org.quartz.impl.JobExecutionContextImpl;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJob.java b/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJob.java
index b88dd5715e..c34681cb9b 100644
--- a/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJob.java
+++ b/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJob.java
@@ -26,11 +26,11 @@ import com.jcraft.jsch.Session;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.credential.store.cpi.CredentialStoreService;
-import org.apache.airavata.model.credential.store.SSHCredential;
 import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionInterface;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
 import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
+import org.apache.airavata.model.credential.store.SSHCredential;
 import org.apache.airavata.model.status.QueueStatusModel;
 import org.apache.airavata.registry.api.RegistryService;
 import org.apache.thrift.TException;
diff --git a/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJobScheduler.java b/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJobScheduler.java
index 9e747d5166..009d039333 100644
--- a/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJobScheduler.java
+++ b/modules/cluster-monitoring/src/main/java/org/apache/airavata/cluster/monitoring/ClusterStatusMonitorJobScheduler.java
@@ -21,17 +21,17 @@ package org.apache.airavata.cluster.monitoring;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
-import org.quartz.*;
+import org.quartz.JobDetail;
+import org.quartz.Scheduler;
+import org.quartz.SchedulerException;
+import org.quartz.Trigger;
 import org.quartz.impl.StdSchedulerFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.quartz.Scheduler;
-import org.quartz.SchedulerException;
-
 import static org.quartz.JobBuilder.newJob;
-import static org.quartz.TriggerBuilder.*;
-import static org.quartz.SimpleScheduleBuilder.*;
+import static org.quartz.SimpleScheduleBuilder.simpleSchedule;
+import static org.quartz.TriggerBuilder.newTrigger;
 
 public class ClusterStatusMonitorJobScheduler {
     private final static Logger logger = LoggerFactory.getLogger(ClusterStatusMonitorJobScheduler.class);
diff --git a/modules/commons/pom.xml b/modules/commons/pom.xml
index 53c1fe9f1f..18727cf1ef 100644
--- a/modules/commons/pom.xml
+++ b/modules/commons/pom.xml
@@ -39,67 +39,42 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-model-utils</artifactId>
-            <version>${project.parent.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.ogce</groupId>
-            <artifactId>xpp3</artifactId>
-            <version>${xpp3.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.ogce</groupId>
-            <artifactId>xpp5</artifactId>
-            <version>${xpp5.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-dbcp2</artifactId>
-            <version>${commons-dbcp2.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-pool2</artifactId>
         </dependency>
-
         <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-collections4</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbytools</artifactId>
-            <version>${derby.version}</version>
+            <groupId>commons-cli</groupId>
+            <artifactId>commons-cli</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.tomcat.embed</groupId>
             <artifactId>tomcat-embed-core</artifactId>
-            <version>${tomcat-embed-core.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-cli</groupId>
-            <artifactId>commons-cli</artifactId>
-            <version>${commons-cli.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>${junit.version}</version>
         </dependency>
         <dependency>
-            <groupId>net.sf.dozer</groupId>
-            <artifactId>dozer</artifactId>
-            <version>${dozer.version}</version>
+            <groupId>com.github.dozermapper</groupId>
+            <artifactId>dozer-core</artifactId>
             <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
@@ -114,7 +89,14 @@
         <dependency>
             <groupId>org.hibernate.orm</groupId>
             <artifactId>hibernate-core</artifactId>
-            <version>${hibernate-core.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.hibernate.common</groupId>
+            <artifactId>hibernate-commons-annotations</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.persistence</groupId>
+            <artifactId>jakarta.persistence-api</artifactId>
         </dependency>
         <!-- Testing -->
         <dependency>
@@ -130,38 +112,40 @@
         <dependency>
             <groupId>org.jmockit</groupId>
             <artifactId>jmockit</artifactId>
-            <version>${jmockit.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.curator</groupId>
             <artifactId>curator-framework</artifactId>
-            <version>${curator.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>com.google.code.gson</groupId>
             <artifactId>gson</artifactId>
-            <version>${google.gson.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kafka</groupId>
             <artifactId>kafka-clients</artifactId>
-            <version>${kafka-clients.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-base-api</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>javax.xml.bind</groupId>
             <artifactId>jaxb-api</artifactId>
-            <version>${jaxb-api.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.derby</groupId>
+            <artifactId>derby</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.derby</groupId>
+            <artifactId>derbynet</artifactId>
         </dependency>
     </dependencies>
     <properties>
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/ApplicationSettings.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/ApplicationSettings.java
index 5c0a218357..12eef9a9bc 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/ApplicationSettings.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/ApplicationSettings.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.common.utils;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.commons.lang3.BooleanUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -349,9 +348,8 @@ public class ApplicationSettings {
     }
 
     public static boolean getBooleanSetting(String key) throws ApplicationSettingsException {
-        String val = getInstance().getSettingImpl(key);
-        return Optional.ofNullable(BooleanUtils.toBooleanObject(val))
-                .orElseThrow(() -> new ApplicationSettingsException("Value can not be parsed to Boolean"));
+        String value = getSetting(key);
+        return Boolean.parseBoolean(value);
     }
 
     public static long getLongSetting(String key) throws ApplicationSettingsException {
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/DBEventManagerConstants.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/DBEventManagerConstants.java
index 43cac5e6af..24e9ba409d 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/DBEventManagerConstants.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/DBEventManagerConstants.java
@@ -19,8 +19,6 @@
  */
 package org.apache.airavata.common.utils;
 
-import org.apache.airavata.model.dbevent.EntityType;
-
 /**
  * Created by Ajinkya on 3/22/17.
  */
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/DatabaseCreator.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/DatabaseCreator.java
index a740dc5a5f..d107d0f5d8 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/DatabaseCreator.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/DatabaseCreator.java
@@ -26,12 +26,7 @@ import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.SQLWarning;
-import java.sql.Statement;
+import java.sql.*;
 import java.util.StringTokenizer;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyTestUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyTestUtil.java
index 8aa85bc4b8..637af9feeb 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyTestUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyTestUtil.java
@@ -19,22 +19,16 @@
  */
 package org.apache.airavata.common.utils;
 
-import java.sql.BatchUpdateException;
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
+import org.junit.Assert;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.sql.*;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.ListIterator;
 
-import org.junit.Assert;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 /**
  * JdbcUtil utility methods for the JUnit tests.
  * Note that JSR 169 is a subset of JdbcUtil 3 and
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyUtil.java
index fba9db18dc..96a73f2a0a 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/DerbyUtil.java
@@ -19,14 +19,14 @@
  */
 package org.apache.airavata.common.utils;
 
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.net.InetAddress;
-import java.sql.DriverManager;
 import org.apache.derby.drda.NetworkServerControl;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.net.InetAddress;
+import java.sql.DriverManager;
 import java.sql.SQLException;
 
 /**
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/IOUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/IOUtil.java
index 96713b44e9..1ec0f61203 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/IOUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/IOUtil.java
@@ -19,21 +19,11 @@
  */
 package org.apache.airavata.common.utils;
 
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.FileReader;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.io.Writer;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.io.*;
+
 public class IOUtil {
 
     private static final Logger logger = LoggerFactory.getLogger(IOUtil.class);
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/JPAUtils.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/JPAUtils.java
index b3b295f616..4241f7b6b4 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/JPAUtils.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/JPAUtils.java
@@ -1,15 +1,13 @@
 package org.apache.airavata.common.utils;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-
 import jakarta.persistence.EntityManagerFactory;
 import jakarta.persistence.Persistence;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * JPAUtils
  */
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/JSONUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/JSONUtil.java
index f69c1add93..9e82922fd8 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/JSONUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/JSONUtil.java
@@ -19,14 +19,7 @@
  */
 package org.apache.airavata.common.utils;
 
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonArray;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
-import com.google.gson.JsonParser;
-import com.google.gson.JsonPrimitive;
-import com.google.gson.stream.JsonReader;
+import com.google.gson.*;
 
 import java.io.File;
 import java.io.FileReader;
@@ -140,11 +133,11 @@ public class JSONUtil {
                     return false;
                 }
             }else if (primitiveOrig.isBoolean() && primitiveNew.isBoolean()) {
-                if ((Boolean.valueOf(primitiveOrig.getAsBoolean()).compareTo(primitiveNew.getAsBoolean()) != 0)) {
+                if ((Boolean.compare(primitiveOrig.getAsBoolean(), primitiveNew.getAsBoolean()) != 0)) {
                     return false;
                 }
             }else if (primitiveOrig.isNumber() && primitiveNew.isNumber() ) {
-                if (new Double(primitiveOrig.getAsDouble()).compareTo(primitiveNew.getAsDouble()) != 0) {
+                if (Double.compare(primitiveOrig.getAsDouble(), primitiveNew.getAsDouble()) != 0) {
                     return false;
                 }
             }else {
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/StringUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/StringUtil.java
index 80844b2f44..fe6a7cddd1 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/StringUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/StringUtil.java
@@ -22,21 +22,12 @@ package org.apache.airavata.common.utils;
 import java.io.ByteArrayOutputStream;
 import java.io.PrintStream;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
-import java.util.ListIterator;
 import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.apache.commons.cli.CommandLine;
-import org.apache.commons.cli.CommandLineParser;
-import org.apache.commons.cli.Option;
-import org.apache.commons.cli.Options;
-import org.apache.commons.cli.ParseException;
-import org.apache.commons.cli.PosixParser;
-
 public class StringUtil {
 	public static final String DELIMETER=",";
 	public static final String QUOTE="\"";
@@ -373,106 +364,54 @@ public class StringUtil {
         return byteArrayOutputStream.toString();
     }
     
-    private static Options deriveCommandLineOptions(String[] args){
-    	Options options = new Options();
-    	String[] argCopy = getChangedList(args);
-    	int i=0;
-        for (String arg : argCopy) {
-            if (arg.startsWith("--")){
-            	arg=arg.substring(2);
-                int pos = arg.indexOf('=');
-                String opt;
-                boolean hasArgs=true;
-	            if (pos==-1){ //if not of the form --arg=value
-	            	if (i==argCopy.length-1 || argCopy[i+1].startsWith("-")){ // no value specified 
-	            		hasArgs=false;
-	            	}
-	            	opt=arg;
-	            }else{
-	            	opt=arg.substring(0, pos);
-	            }
-                options.addOption(opt, hasArgs, "");
+    public static Map<String, String> parseCommandLineOptions(String[] args) {
+        Map<String, String> options = new HashMap<>();
+        for (int i = 0; i < args.length; i++) {
+            String arg = args[i];
+            if (arg.startsWith("--")) {
+                String key = arg.substring(2);
+                if (i + 1 < args.length && !args[i + 1].startsWith("--")) {
+                    options.put(key, args[i + 1]);
+                    i++;
+                } else {
+                    options.put(key, "true");
+                }
             }
-            i++;
         }
         return options;
     }
-    
-	public static Map<String, String> parseCommandLineOptions(String[] args) {
-		Map<String,String> commandLineOptions=new HashMap<String,String>();
-		try {
-			CommandLineParameters cmdParameters = getCommandLineParser(args);
-			Map<String, String> parameters = cmdParameters.getParameters();
-			for (String s : parameters.keySet()) {
-				commandLineOptions.put(s, parameters.get(s)==null? "":parameters.get(s));
-			}
-		} catch (ParseException e1) {
-			e1.printStackTrace();
-		}
-		return commandLineOptions;
-	}
 
-	public static CommandLineParameters getCommandLineParser(String[] args)
-			throws ParseException {
-		String[] argCopy = getChangedList(args);
-		CommandLineParser parser = new DynamicOptionPosixParser();
-		CommandLine cmdLine = parser.parse(deriveCommandLineOptions(argCopy), argCopy);
-		return new CommandLineParameters(cmdLine);
-	}
+    public static class CommandLineParameters {
+        private Map<String, String> parameters = new HashMap<>();
+        private List<String> arguments = new ArrayList<>();
 
-	
-	//commons-cli does not support arg names having the period (".")
-	private static final String ARG_DOT_REPLACE="dot_replacement_value";
-	
-	private static String[] getChangedList(String[] args) {
-		String[] argCopy = Arrays.asList(args).toArray(new String []{});
-		for (int i=0;i<argCopy.length; i++) {
-			argCopy[i]=changeOption(argCopy[i]);
-		}
-		return argCopy;
-	}
-	
-	private static String revertOption(String option){
-		return option==null? option : option.replaceAll(Pattern.quote(ARG_DOT_REPLACE), ".");
-	}
-	
-	private static String changeOption(String option){
-		return option==null? option : option.replaceAll(Pattern.quote("."), ARG_DOT_REPLACE);
-	}
-	
-	private static class DynamicOptionPosixParser extends PosixParser{
-		@Override
-		protected void processOption(String arg0, @SuppressWarnings("rawtypes") ListIterator arg1)
-				throws ParseException {
-			if (getOptions().hasOption(arg0)){
-				super.processOption(arg0, arg1);
-			}
-		}
-	}
-	
-	public static class CommandLineParameters{
-		private Map<String,String> parameters=new HashMap<String, String>();
-		private List<String> arguments=new ArrayList<String>();
-		protected CommandLineParameters(CommandLine cmd){
-			for(Option opt:cmd.getOptions()){
-				parameters.put(revertOption(opt.getOpt()), revertOption(opt.getValue()));
-			}
-			for(String arg:cmd.getArgs()){
-				arguments.add(revertOption(arg));
-			}
-		}
-		public List<String> getArguments() {
-			return arguments;
-		}
-		public void setArguments(List<String> arguments) {
-			this.arguments = arguments;
-		}
-		public Map<String,String> getParameters() {
-			return parameters;
-		}
-		public void setParameters(Map<String,String> parameters) {
-			this.parameters = parameters;
-		}
-	}
+        public CommandLineParameters(String[] args) {
+            Map<String, String> options = parseCommandLineOptions(args);
+            parameters.putAll(options);
+            
+            // Collect non-option arguments
+            for (String arg : args) {
+                if (!arg.startsWith("--")) {
+                    arguments.add(arg);
+                }
+            }
+        }
+
+        public List<String> getArguments() {
+            return arguments;
+        }
+
+        public void setArguments(List<String> arguments) {
+            this.arguments = arguments;
+        }
+
+        public Map<String, String> getParameters() {
+            return parameters;
+        }
+
+        public void setParameters(Map<String, String> parameters) {
+            this.parameters = parameters;
+        }
+    }
 
 }
\ No newline at end of file
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/SwingUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/SwingUtil.java
index 4cfd2f75c3..100ffb9587 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/SwingUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/SwingUtil.java
@@ -19,27 +19,13 @@
  */
 package org.apache.airavata.common.utils;
 
-import java.awt.Color;
-import java.awt.Component;
-import java.awt.Container;
-import java.awt.Cursor;
-import java.awt.Dimension;
-import java.awt.Frame;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Image;
-import java.awt.Insets;
-import java.awt.Toolkit;
+import javax.swing.*;
+import java.awt.*;
 import java.awt.event.FocusEvent;
 import java.awt.event.FocusListener;
 import java.net.URL;
 import java.util.List;
 
-import javax.swing.ImageIcon;
-import javax.swing.JTextField;
-import javax.swing.Spring;
-import javax.swing.SpringLayout;
-
 public class SwingUtil {
 
     /**
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/ThriftClientPool.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/ThriftClientPool.java
index 707fba68a5..6a6b7a0473 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/ThriftClientPool.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/ThriftClientPool.java
@@ -19,9 +19,6 @@
  */
 package org.apache.airavata.common.utils;
 
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
 import org.apache.airavata.base.api.BaseAPI;
 import org.apache.commons.pool2.BasePooledObjectFactory;
 import org.apache.commons.pool2.PooledObject;
@@ -37,6 +34,9 @@ import org.apache.thrift.transport.TTransportException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.io.PrintWriter;
+import java.io.StringWriter;
+
 public class ThriftClientPool<T extends BaseAPI.Client> implements AutoCloseable {
 
     private static final Logger logger = LoggerFactory.getLogger(ThriftClientPool.class);
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/WSConstants.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/WSConstants.java
index c8c45cf5d7..d08a937fbd 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/WSConstants.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/WSConstants.java
@@ -21,8 +21,6 @@ package org.apache.airavata.common.utils;
 
 import javax.xml.namespace.QName;
 
-import org.xmlpull.infoset.XmlNamespace;
-
 public interface WSConstants {
 
     /**
@@ -40,11 +38,6 @@ public interface WSConstants {
      */
     public static final String XSD_NS_URI = "http://www.w3.org/2001/XMLSchema";
 
-//    /**
-//     * XML Schema Namespace
-//     */
-//    public static final XmlNamespace XSD_NS = XmlConstants.BUILDER.newNamespace(XSD_NS_PREFIX, XSD_NS_URI);
-
     /**
      * The any type.
      */
diff --git a/modules/commons/src/main/java/org/apache/airavata/common/utils/WSDLUtil.java b/modules/commons/src/main/java/org/apache/airavata/common/utils/WSDLUtil.java
index c44b5c8175..67765caccb 100644
--- a/modules/commons/src/main/java/org/apache/airavata/common/utils/WSDLUtil.java
+++ b/modules/commons/src/main/java/org/apache/airavata/common/utils/WSDLUtil.java
@@ -19,390 +19,19 @@
  */
 package org.apache.airavata.common.utils;
 
-import java.net.URI;
-import java.util.LinkedList;
-import java.util.List;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.xmlpull.infoset.XmlAttribute;
-import org.xmlpull.infoset.XmlBuilderException;
-import org.xmlpull.infoset.XmlElement;
-import org.xmlpull.infoset.XmlNamespace;
+import org.w3c.dom.*;
 
-//import xsul.XmlConstants;
-//import xsul5.wsdl.WsdlBinding;
-//import xsul5.wsdl.WsdlDefinitions;
-//import xsul5.wsdl.WsdlPortType;
-//import xsul5.wsdl.WsdlPortTypeOperation;
-//import xsul5.wsdl.WsdlUtil;
+import javax.xml.namespace.QName;
+import java.net.URI;
+import java.util.LinkedList;
+import java.util.List;
 
 public class WSDLUtil {
 
     private static final Logger logger = LoggerFactory.getLogger(WSDLUtil.class);
 
-//    /**
-//     * @param wsdlString
-//     * @return The WSDL
-//     * @throws UtilsException
-//     */
-//    public static WsdlDefinitions stringToWSDL(String wsdlString) throws UtilsException {
-//        try {
-//            XmlElement wsdlElement = XMLUtil.stringToXmlElement(wsdlString);
-//            WsdlDefinitions definitions = new WsdlDefinitions(wsdlElement);
-//            return definitions;
-//        } catch (RuntimeException e) {
-//            throw new UtilsException(e);
-//        }
-//    }
-//
-//    /**
-//     * @param definitions3
-//     * @return The WsdlDefinitions (XSUL5)
-//     */
-//    public static xsul5.wsdl.WsdlDefinitions wsdlDefinitions3ToWsdlDefintions5(xsul.wsdl.WsdlDefinitions definitions3) {
-//
-//        return new xsul5.wsdl.WsdlDefinitions(XMLUtil.xmlElement3ToXmlElement5(definitions3));
-//    }
-//
-//    /**
-//     * @param definitions5
-//     * @return The WsdlDefinitions (XSUL3)
-//     */
-//    public static xsul.wsdl.WsdlDefinitions wsdlDefinitions5ToWsdlDefintions3(xsul5.wsdl.WsdlDefinitions definitions5) {
-//
-//        return new xsul.wsdl.WsdlDefinitions(XMLUtil.xmlElement5ToXmlElement3(definitions5.xml()));
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @return The name of the WSDL.
-//     */
-//    public static String getWSDLName(WsdlDefinitions definitions) {
-//        String wsdlName = definitions.xml().attributeValue(WSConstants.NAME_ATTRIBUTE);
-//        if (wsdlName == null) {
-//            // name is optional.
-//            wsdlName = "";
-//        }
-//        return wsdlName;
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @return The QName of the WSDL.
-//     */
-//    public static QName getWSDLQName(WsdlDefinitions definitions) {
-//        String targetNamespace = definitions.getTargetNamespace();
-//        String wsdlName = getWSDLName(definitions);
-//        return new QName(targetNamespace, wsdlName);
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @return The first portType
-//     * @throws UtilsException
-//     */
-//    public static WsdlPortType getFirstPortType(WsdlDefinitions definitions) throws UtilsException {
-//        for (WsdlPortType portType : definitions.portTypes()) {
-//            return portType;
-//        }
-//        throw new UtilsException("No portType is defined in WSDL");
-//    }
-//
-//    public static WsdlPortTypeOperation getFirstOperation(WsdlDefinitions definitions) throws UtilsException {
-//        for (WsdlPortTypeOperation operation : getFirstPortType(definitions).operations()) {
-//            return operation;
-//        }
-//        throw new UtilsException("No portType is defined in WSDL");
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @return The QName of the first portType.
-//     * @throws UtilsException
-//     */
-//    public static QName getFirstPortTypeQName(WsdlDefinitions definitions) throws UtilsException {
-//        String targetNamespace = definitions.getTargetNamespace();
-//        for (WsdlPortType portType : definitions.portTypes()) {
-//            String portTypeName = portType.getName();
-//            QName portTypeQName = new QName(targetNamespace, portTypeName);
-//            return portTypeQName;
-//        }
-//        throw new UtilsException("No portType is defined.");
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @param portTypeQName
-//     * @return The name of the first operation in a given portType.
-//     * @throws UtilsException
-//     */
-//    public static String getFirstOperationName(WsdlDefinitions definitions, QName portTypeQName) throws UtilsException {
-//        WsdlPortType portType = definitions.getPortType(portTypeQName.getLocalPart());
-//        for (WsdlPortTypeOperation operation : portType.operations()) {
-//            String operationName = operation.getOperationName();
-//
-//            // XXX Temporary solution to skip some GFac specific operations.
-//            if ("Shutdown".equals(operationName)) {
-//                continue;
-//            } else if ("Kill".equals(operationName)) {
-//                continue;
-//            } else if ("Ping".equals(operationName)) {
-//                continue;
-//            }
-//
-//            return operationName;
-//        }
-//        throw new UtilsException("No operation is defined");
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @return The cloned WsdlDefinitions
-//     */
-//    public static WsdlDefinitions deepClone(WsdlDefinitions definitions) throws UtilsException {
-//        return new WsdlDefinitions(XMLUtil.deepClone(definitions.xml()));
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @param paramType
-//     * @return The schema that includes the type definition
-//     */
-//    public static XmlElement getSchema(WsdlDefinitions definitions, QName paramType) throws UtilsException {
-//        XmlElement types = definitions.getTypes();
-//
-//        Iterable<XmlElement> schemas = types.elements(WSConstants.XSD_NS, WSConstants.SCHEMA_TAG);
-//        for (XmlElement schema : schemas) {
-//            if (isTypeDefinedInSchema(paramType, schema)) {
-//                return schema;
-//            }
-//        }
-//
-//        // ok we didnt find the type in the schema in first level
-//        // now we try try to see if it exist in schema imports.
-//        // we loop in two step because its better to avoid the network
-//        // connection if possible
-//        for (XmlElement schema : schemas) {
-//            Iterable<XmlElement> imports = schema.elements(WSConstants.XSD_NS, WSConstants.IMPORT_TAG);
-//            for (XmlElement importEle : imports) {
-//                String schemaLocation = importEle.attributeValue(WSConstants.SCHEMA_LOCATION_ATTRIBUTE);
-//                if (null != schemaLocation && !"".equals(schemaLocation)) {
-//                    try {
-//                        // connect using a url connection
-//                        URL url = new URL(schemaLocation);
-//                        URLConnection connection = url.openConnection();
-//                        connection.connect();
-//                        XmlElement importedSchema = xsul5.XmlConstants.BUILDER.parseFragmentFromInputStream(connection
-//                                .getInputStream());
-//                        if (isTypeDefinedInSchema(paramType, importedSchema)) {
-//                            // still return the parent schema
-//                            return schema;
-//                        }
-//                    } catch (MalformedURLException e) {
-//                        throw new UtilsException(e);
-//                    } catch (XmlBuilderException e) {
-//                        throw new UtilsException(e);
-//                    } catch (IOException e) {
-//                        throw new UtilsException(e);
-//                    }
-//                }
-//            }
-//        }
-//
-//        return null;
-//    }
-//
-//    private static boolean isTypeDefinedInSchema(QName paramType, XmlElement schema) {
-//        String schemaTargetNamespace = schema.attributeValue(WSConstants.TARGET_NAMESPACE_ATTRIBUTE);
-//        if (schemaTargetNamespace.equals(paramType.getNamespaceURI())) {
-//            for (XmlElement complexType : schema.elements(WSConstants.XSD_NS, WSConstants.COMPLEX_TYPE_TAG)) {
-//                String complexTypeName = complexType.attributeValue(WSConstants.NAME_ATTRIBUTE);
-//                if (complexTypeName.equals(paramType.getLocalPart())) {
-//                    return true;
-//                }
-//            }
-//            for (XmlElement simpleType : schema.elements(WSConstants.XSD_NS, WSConstants.SIMPLE_TYPE_TAG)) {
-//                String simpleTypeName = simpleType.attributeValue(WSConstants.NAME_ATTRIBUTE);
-//                if (simpleTypeName.equals(paramType.getLocalPart())) {
-//                    return true;
-//                }
-//            }
-//        }
-//        return false;
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @param paramType
-//     * @return The type definition
-//     */
-//    public static XmlElement getTypeDefinition(WsdlDefinitions definitions, QName paramType) throws UtilsException {
-//        XmlElement types = definitions.getTypes();
-//        XmlElement returnType = null;
-//        types.element(null, WSConstants.SCHEMA_TAG);
-//        Iterable<XmlElement> schemas = types.elements(null, WSConstants.SCHEMA_TAG);
-//        for (XmlElement schema : schemas) {
-//
-//            returnType = findTypeInSchema(paramType, schema);
-//            if (returnType != null) {
-//                return returnType;
-//            }
-//        }
-//        // ok we didnt find the type in the schemas
-//        // try to find it in the schema imports.
-//
-//        // if not found it will return null so we would return null
-//        return findTypeDefinitionInImports(definitions, paramType);
-//
-//    }
-//
-//    /**
-//     * 
-//     * @param definitions
-//     * @param paramType
-//     * @return
-//     */
-//
-//    public static XmlElement getImportContainingTypeDefinition(WsdlDefinitions definitions, QName paramType)
-//            throws UtilsException {
-//        XmlElement types = definitions.getTypes();
-//        XmlElement returnType = null;
-//        Iterable<XmlElement> schemas = types.elements(WSConstants.XSD_NS, WSConstants.SCHEMA_TAG);
-//        for (XmlElement schema : schemas) {
-//            Iterable<XmlElement> imports = schema.elements(WSConstants.XSD_NS, WSConstants.IMPORT_TAG);
-//            for (XmlElement importEle : imports) {
-//                String schemaLocation = importEle.attributeValue(WSConstants.SCHEMA_LOCATION_ATTRIBUTE);
-//                if (null != schemaLocation && !"".equals(schemaLocation)) {
-//                    try {
-//                        // connect using a url connection
-//                        URL url = new URL(schemaLocation);
-//                        URLConnection connection = url.openConnection();
-//                        connection.connect();
-//                        XmlElement importedSchema = xsul5.XmlConstants.BUILDER.parseFragmentFromInputStream(connection
-//                                .getInputStream());
-//                        returnType = findTypeInSchema(paramType, importedSchema);
-//                        if (returnType != null) {
-//                            return importEle;
-//                        }
-//
-//                    } catch (MalformedURLException e) {
-//                        throw new UtilsException(e);
-//                    } catch (XmlBuilderException e) {
-//                        throw new UtilsException(e);
-//                    } catch (IOException e) {
-//                        throw new UtilsException(e);
-//                    }
-//                }
-//            }
-//        }
-//        return null;
-//    }
-//
-//    /**
-//     * 
-//     * @param definitions
-//     * @param paramType
-//     * @return
-//     */
-//
-//    public static XmlElement findTypeDefinitionInImports(WsdlDefinitions definitions, QName paramType)
-//            throws UtilsException {
-//        XmlElement types = definitions.getTypes();
-//        XmlElement returnType = null;
-//        Iterable<XmlElement> schemas = types.elements(null, WSConstants.SCHEMA_TAG);
-//        for (XmlElement schema : schemas) {
-//            Iterable<XmlElement> imports = schema.elements(WSConstants.XSD_NS, WSConstants.IMPORT_TAG);
-//            for (XmlElement importEle : imports) {
-//                String schemaLocation = importEle.attributeValue(WSConstants.SCHEMA_LOCATION_ATTRIBUTE);
-//                if (null != schemaLocation && !"".equals(schemaLocation)) {
-//                    try {
-//                        // connect using a url connection
-//                        URL url = new URL(schemaLocation);
-//                        URLConnection connection = url.openConnection();
-//                        connection.connect();
-//                        XmlElement importedSchema = xsul5.XmlConstants.BUILDER.parseFragmentFromInputStream(connection
-//                                .getInputStream());
-//                        returnType = findTypeInSchema(paramType, importedSchema);
-//                        if (returnType != null) {
-//                            return returnType;
-//                        }
-//
-//                    } catch (MalformedURLException e) {
-//                        throw new UtilsException(e);
-//                    } catch (XmlBuilderException e) {
-//                        throw new UtilsException(e);
-//                    } catch (IOException e) {
-//                        throw new UtilsException(e);
-//                    }
-//                }
-//            }
-//        }
-//        return null;
-//
-//    }
-//
-//    private static XmlElement findTypeInSchema(QName paramType, XmlElement schema) {
-//        String schemaTargetNamespace = schema.attributeValue(WSConstants.TARGET_NAMESPACE_ATTRIBUTE);
-//        if (null != schemaTargetNamespace && schemaTargetNamespace.equals(paramType.getNamespaceURI())) {
-//            for (XmlElement complexType : schema.elements(WSConstants.XSD_NS, WSConstants.COMPLEX_TYPE_TAG)) {
-//                String complexTypeName = complexType.attributeValue(WSConstants.NAME_ATTRIBUTE);
-//                if (complexTypeName.equals(paramType.getLocalPart())) {
-//                    return complexType;
-//
-//                }
-//            }
-//            for (XmlElement simpleType : schema.elements(WSConstants.XSD_NS, WSConstants.SIMPLE_TYPE_TAG)) {
-//                String simpleTypeName = simpleType.attributeValue(WSConstants.NAME_ATTRIBUTE);
-//                if (simpleTypeName.equals(paramType.getLocalPart())) {
-//                    return simpleType;
-//                }
-//            }
-//        }
-//        return null;
-//    }
-//
-//    /**
-//     * @param wsdl
-//     * @return true if the WSDL is AWSDL; false otherwise.
-//     */
-//    public static boolean isAWSDL(WsdlDefinitions wsdl) {
-//        if (wsdl.services().iterator().hasNext()) {
-//            return false;
-//        }
-//        return true;
-//    }
-//
-//    /**
-//     * @param definitions
-//     * @return true if the service supports asynchronous invocation; false otherwise;
-//     */
-//    public static boolean isAsynchronousSupported(WsdlDefinitions definitions) {
-//        for (WsdlBinding binding : definitions.bindings()) {
-//            XmlElement element = binding.xml().element(WSConstants.USING_ADDRESSING_TAG);
-//            if (element != null) {
-//                return true;
-//            }
-//        }
-//        return false;
-//    }
-//
-//    /**
-//     * Converts a specified AWSDL to CWSDL using DSC URI.
-//     * 
-//     * @param definitions
-//     *            The specified AWSDL. This will be modified.
-//     * @param url
-//     *            The URL of the service
-//     * @return The CWSDL converted.
-//     */
-//    public static WsdlDefinitions convertToCWSDL(WsdlDefinitions definitions, URI url) {
-//        for (WsdlPortType portType : definitions.portTypes()) {
-//            WsdlUtil.createCWSDL(definitions, portType, url);
-//        }
-//        return definitions;
-//    }
-
     /**
      * @param uri
      * @return The URI with "?wsdl" at the end.
@@ -412,33 +41,60 @@ public class WSDLUtil {
         return wsdlURI.toString();
     }
 
-    public static List<XmlNamespace> getNamespaces(XmlElement element) {
-        LinkedList<XmlNamespace> namespaces = new LinkedList<XmlNamespace>();
-        namespaces.add(element.getNamespace());
-        Iterable<XmlAttribute> attributes = element.attributes();
-        for (XmlAttribute xmlAttribute : attributes) {
-            if (xmlAttribute.getNamespace() != null && !namespaces.contains(xmlAttribute.getNamespace())) {
-                namespaces.add(xmlAttribute.getNamespace());
+    /**
+     * Get namespaces from a DOM Element
+     * @param element The DOM Element
+     * @return List of namespaces
+     */
+    public static List<QName> getNamespaces(Element element) {
+        List<QName> namespaces = new LinkedList<>();
+        
+        // Get the namespace of the element itself
+        String namespaceURI = element.getNamespaceURI();
+        String prefix = element.getPrefix();
+        if (namespaceURI != null && !namespaceURI.isEmpty()) {
+            namespaces.add(new QName(namespaceURI, prefix));
+        }
+        
+        // Get namespaces from attributes
+        NamedNodeMap attributes = element.getAttributes();
+        for (int i = 0; i < attributes.getLength(); i++) {
+            Attr attr = (Attr) attributes.item(i);
+            String attrNamespaceURI = attr.getNamespaceURI();
+            String attrPrefix = attr.getPrefix();
+            
+            if (attrNamespaceURI != null && !attrNamespaceURI.isEmpty()) {
+                QName ns = new QName(attrNamespaceURI, attrPrefix);
+                if (!namespaces.contains(ns)) {
+                    namespaces.add(ns);
+                }
             }
-            int index = xmlAttribute.getValue().indexOf(':');
-            if (-1 != index) {
-                String prefix = xmlAttribute.getValue().substring(0, index);
-                if (element.lookupNamespaceByPrefix(prefix) != null) {
-                    namespaces.add(element.lookupNamespaceByPrefix(prefix));
+            
+            // Check for xmlns attributes
+            if (attr.getNodeName().startsWith("xmlns:")) {
+                String nsPrefix = attr.getNodeName().substring(6);
+                String nsURI = attr.getNodeValue();
+                QName ns = new QName(nsURI, nsPrefix);
+                if (!namespaces.contains(ns)) {
+                    namespaces.add(ns);
                 }
             }
         }
-        Iterable children = element.children();
-        for (Object object : children) {
-            if (object instanceof XmlElement) {
-                List<XmlNamespace> newNSs = getNamespaces((XmlElement) object);
-                for (XmlNamespace xmlNamespace : newNSs) {
-                    if (!namespaces.contains(xmlNamespace)) {
-                        namespaces.add(xmlNamespace);
+        
+        // Process child elements
+        NodeList children = element.getChildNodes();
+        for (int i = 0; i < children.getLength(); i++) {
+            Node child = children.item(i);
+            if (child instanceof Element) {
+                List<QName> childNamespaces = getNamespaces((Element) child);
+                for (QName ns : childNamespaces) {
+                    if (!namespaces.contains(ns)) {
+                        namespaces.add(ns);
                     }
                 }
             }
         }
+        
         return namespaces;
     }
 
@@ -460,16 +116,6 @@ public class WSDLUtil {
         return uri;
     }
 
-//    /**
-//     * @param valueElement
-//     * @return
-//     */
-//    public static org.xmlpull.v1.builder.XmlElement xmlElement5ToXmlElementv1(XmlElement valueElement) {
-//
-//        return XmlConstants.BUILDER.parseFragmentFromReader(new StringReader(xsul5.XmlConstants.BUILDER
-//                .serializeToStringPretty(valueElement)));
-//    }
-
     /**
      * 
      * @param vals
@@ -481,16 +127,8 @@ public class WSDLUtil {
             return class1;
         }
         throw new RuntimeException("Iterator empty");
-
     }
 
-//    /**
-//     * @param serviceSchema
-//     */
-//    public static void print(XmlElement serviceSchema) {
-//        System.out.println(xsul5.XmlConstants.BUILDER.serializeToStringPretty(serviceSchema));
-//    }
-
     /**
      * @param workflowID
      * @return
@@ -498,46 +136,51 @@ public class WSDLUtil {
     public static String findWorkflowName(URI workflowID) {
         String[] splits = workflowID.toString().split("/");
         return splits[splits.length - 1];
-
     }
 
     /**
-     * 
-     * @param element
-     * @param name
-     * @param oldValue
-     * @param newValue
+     * Replace attribute value in a DOM Element
+     * @param element The DOM Element
+     * @param name The attribute name
+     * @param oldValue The old value
+     * @param newValue The new value
      */
-    public static void replaceAttributeValue(XmlElement element, String name, String oldValue, String newValue) {
-        XmlAttribute attribute = element.attribute(name);
-        if (null != attribute && oldValue.equals(attribute.getValue())) {
-            element.removeAttribute(attribute);
-            element.setAttributeValue(name, newValue);
+    public static void replaceAttributeValue(Element element, String name, String oldValue, String newValue) {
+        if (element.hasAttribute(name) && oldValue.equals(element.getAttribute(name))) {
+            element.setAttribute(name, newValue);
         }
-        Iterable iterator = element.children();
-        for (Object object : iterator) {
-            if (object instanceof XmlElement) {
-                replaceAttributeValue((XmlElement) object, name, oldValue, newValue);
+        
+        NodeList children = element.getChildNodes();
+        for (int i = 0; i < children.getLength(); i++) {
+            Node child = children.item(i);
+            if (child instanceof Element) {
+                replaceAttributeValue((Element) child, name, oldValue, newValue);
             }
         }
-
     }
 
-    public static boolean attributeExist(XmlElement element, String name, String value) {
-        XmlAttribute attribute = element.attribute(name);
-        if (null != attribute && value.equals(attribute.getValue())) {
+    /**
+     * Check if an attribute exists with a specific value
+     * @param element The DOM Element
+     * @param name The attribute name
+     * @param value The attribute value
+     * @return true if the attribute exists with the specified value
+     */
+    public static boolean attributeExist(Element element, String name, String value) {
+        if (element.hasAttribute(name) && value.equals(element.getAttribute(name))) {
             return true;
         }
-        Iterable iterator = element.children();
-        boolean ret = false;
-        for (Object object : iterator) {
-            if (object instanceof XmlElement) {
-                ret = ret || attributeExist((XmlElement) object, name, value);
+        
+        NodeList children = element.getChildNodes();
+        for (int i = 0; i < children.getLength(); i++) {
+            Node child = children.item(i);
+            if (child instanceof Element) {
+                if (attributeExist((Element) child, name, value)) {
+                    return true;
+                }
             }
         }
-        return ret;
-
+        
+        return false;
     }
-
-
 }
\ No newline at end of file
diff --git a/modules/commons/src/test/java/org/apache/airavata/common/utils/SecurityUtilTest.java b/modules/commons/src/test/java/org/apache/airavata/common/utils/SecurityUtilTest.java
index 9ee67536e6..44d3281aee 100644
--- a/modules/commons/src/test/java/org/apache/airavata/common/utils/SecurityUtilTest.java
+++ b/modules/commons/src/test/java/org/apache/airavata/common/utils/SecurityUtilTest.java
@@ -24,7 +24,6 @@ import org.junit.Test;
 
 import java.io.InputStream;
 import java.net.URI;
-import java.net.URL;
 import java.security.KeyStore;
 
 /**
diff --git a/modules/commons/src/test/java/org/apache/airavata/common/utils/ThriftClientPoolTest.java b/modules/commons/src/test/java/org/apache/airavata/common/utils/ThriftClientPoolTest.java
index 1f24db8e12..2f7127eb9c 100644
--- a/modules/commons/src/test/java/org/apache/airavata/common/utils/ThriftClientPoolTest.java
+++ b/modules/commons/src/test/java/org/apache/airavata/common/utils/ThriftClientPoolTest.java
@@ -1,8 +1,8 @@
 package org.apache.airavata.common.utils;
 
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
+import mockit.Expectations;
+import mockit.Mocked;
+import mockit.Verifications;
 import org.apache.airavata.base.api.BaseAPI;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.commons.pool2.impl.AbandonedConfig;
@@ -11,11 +11,9 @@ import org.apache.thrift.TException;
 import org.junit.Assert;
 import org.junit.Ignore;
 import org.junit.Test;
-import org.junit.runner.RunWith;
 
-import mockit.Expectations;
-import mockit.Mocked;
-import mockit.Verifications;
+import java.io.PrintWriter;
+import java.io.StringWriter;
 
 public class ThriftClientPoolTest {
 
diff --git a/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/ComputationalResourceMonitoringService.java b/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/ComputationalResourceMonitoringService.java
index 631542f9d4..320fc2fdf3 100644
--- a/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/ComputationalResourceMonitoringService.java
+++ b/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/ComputationalResourceMonitoringService.java
@@ -9,7 +9,6 @@ import org.quartz.impl.StdSchedulerFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.stream.Collectors;
diff --git a/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/ComputeResourceMonitor.java b/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/ComputeResourceMonitor.java
index 78b708866a..5b7dcc8c91 100644
--- a/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/ComputeResourceMonitor.java
+++ b/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/ComputeResourceMonitor.java
@@ -1,14 +1,12 @@
 package org.apache.airavata.compute.resource.monitoring.job;
 
 import org.apache.airavata.common.utils.ThriftClientPool;
-import org.apache.airavata.metascheduler.core.engine.ComputeResourceSelectionPolicy;
 import org.apache.airavata.metascheduler.core.utils.Utils;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupComputeResourcePreference;
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupResourceProfile;
 import org.apache.airavata.model.appcatalog.userresourceprofile.UserComputeResourcePreference;
 import org.apache.airavata.model.appcatalog.userresourceprofile.UserResourceProfile;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 
 public abstract class ComputeResourceMonitor {
 
diff --git a/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/MonitoringJob.java b/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/MonitoringJob.java
index 31efef7230..cdd46bff05 100644
--- a/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/MonitoringJob.java
+++ b/modules/computer-resource-monitoring-service/src/main/java/org/apache/airavata/compute/resource/monitoring/job/MonitoringJob.java
@@ -13,7 +13,6 @@ import org.apache.airavata.model.appcatalog.groupresourceprofile.ComputeResource
 import org.apache.airavata.model.appcatalog.groupresourceprofile.GroupResourceProfile;
 import org.apache.airavata.model.status.QueueStatusModel;
 import org.apache.airavata.registry.api.RegistryService;
-import org.apache.airavata.registry.api.RegistryService.Client;
 import org.quartz.Job;
 import org.quartz.JobDataMap;
 import org.quartz.JobExecutionContext;
diff --git a/modules/configuration/server/src/main/resources/airavata-server.properties b/modules/configuration/server/src/main/resources/airavata-server.properties
index 681e698435..023e0bcd43 100644
--- a/modules/configuration/server/src/main/resources/airavata-server.properties
+++ b/modules/configuration/server/src/main/resources/airavata-server.properties
@@ -29,101 +29,89 @@
 #  API Server Registry Configuration
 ###########################################################################
 
-#for derby [AiravataJPARegistry]
-registry.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-registry.jdbc.url=jdbc:derby:experiment_catalog;create=true;user=airavata;password=airavata
-# MariaDB database configuration
-#registry.jdbc.driver=org.mariadb.jdbc.Driver
-#registry.jdbc.url=jdbc:mariadb://localhost:3306/experiment_catalog
-registry.jdbc.user=airavata
-registry.jdbc.password=airavata
+registry.jdbc.driver=org.mariadb.jdbc.Driver
+registry.jdbc.url=jdbc:mariadb://localhost:13306/experiment_catalog
+registry.jdbc.user=root
+registry.jdbc.password=123456
 #FIXME: Probably the following property should be removed.
 start.derby.server.mode=false
 validationQuery=SELECT 1 from CONFIGURATION
-cache.enable=true
-jpa.cache.size=5000
+cache.enable=false
+jpa.cache.size=-1
 #jpa.connection.properties=MaxActive=10,MaxIdle=5,MinIdle=2,MaxWait=60000,testWhileIdle=true,testOnBorrow=true
 enable.sharing=true
 
 # Properties for default user mode
-default.registry.user=admin
-default.registry.password=admin
+default.registry.user=default-admin
+default.registry.password=ade4#21242ftfd
 default.registry.password.hash.method=SHA
-default.registry.gateway=php_reference_gateway
-super.tenant.gatewayId=php_reference_gateway
+default.registry.gateway=default
+default.registry.oauth.client.id=pga
+default.registry.oauth.client.secret=GtRMiIQG5UJJdmmeM6iQS0BZR4Yj0gbt
+super.tenant.gatewayId=default
 
 # Properties for cluster status monitoring
 # cluster status monitoring job repeat time in seconds
-#cluster.status.monitoring.enable=false
+cluster.status.monitoring.enable=false
 cluster.status.monitoring.repeat.time=18000
 
 ###########################################################################
 #  Application Catalog DB Configuration
 ###########################################################################
-#for derby [AiravataJPARegistry]
-appcatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-appcatalog.jdbc.url=jdbc:derby:app_catalog;create=true;user=airavata;password=airavata
-# MariaDB database configuration
-#appcatalog.jdbc.driver=org.mariadb.jdbc.Driver
-#appcatalog.jdbc.url=jdbc:mariadb://localhost:3306/app_catalog
-appcatalog.jdbc.user=airavata
-appcatalog.jdbc.password=airavata
+appcatalog.jdbc.driver=org.mariadb.jdbc.Driver
+appcatalog.jdbc.url=jdbc:mariadb://localhost:13306/app_catalog
+appcatalog.jdbc.user=root
+appcatalog.jdbc.password=123456
 appcatalog.validationQuery=SELECT 1 from CONFIGURATION
 
 ##########################################################################
 #  Replica Catalog DB Configuration
 ###########################################################################
-#for derby [AiravataJPARegistry]
-replicacatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-replicacatalog.jdbc.url=jdbc:derby:replica_catalog;create=true;user=airavata;password=airavata
-# MariaDB database configuration
-#replicacatalog.jdbc.driver=org.mariadb.jdbc.Driver
-#replicacatalog.jdbc.url=jdbc:mariadb://localhost:3306/replica_catalog
-replicacatalog.jdbc.user=airavata
-replicacatalog.jdbc.password=airavata
+replicacatalog.jdbc.driver=org.mariadb.jdbc.Driver
+replicacatalog.jdbc.url=jdbc:mariadb://localhost:13306/replica_catalog
+replicacatalog.jdbc.user=root
+replicacatalog.jdbc.password=123456
 replicacatalog.validationQuery=SELECT 1 from CONFIGURATION
 
 ###########################################################################
 #  Workflow Catalog DB Configuration
 ###########################################################################
-#for derby [AiravataJPARegistry]
-workflowcatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-workflowcatalog.jdbc.url=jdbc:derby:workflow_catalog;create=true;user=airavata;password=airavata
-# MariaDB database configuration
-#workflowcatalog.jdbc.driver=org.mariadb.jdbc.Driver
-#workflowcatalog.jdbc.url=jdbc:mariadb://localhost:3306/workflow_catalog
-workflowcatalog.jdbc.user=airavata
-workflowcatalog.jdbc.password=airavata
+workflowcatalog.jdbc.driver=org.mariadb.jdbc.Driver
+workflowcatalog.jdbc.url=jdbc:mariadb://localhost:13306/workflow_catalog
+workflowcatalog.jdbc.user=root
+workflowcatalog.jdbc.password=123456
 workflowcatalog.validationQuery=SELECT 1 from CONFIGURATION
 
 ###########################################################################
 #  Sharing Catalog DB Configuration
 ###########################################################################
-#for derby [AiravataJPARegistry]
-sharingcatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-sharingcatalog.jdbc.url=jdbc:derby:sharing_catalog;create=true;user=airavata;password=airavata
-# MariaDB database configuration
-#sharingcatalog.jdbc.driver=org.mariadb.jdbc.Driver
-#sharingcatalog.jdbc.url=jdbc:mariadb://localhost:3306/sharing_catalog
-sharingcatalog.jdbc.user=airavata
-sharingcatalog.jdbc.password=airavata
+sharingcatalog.jdbc.driver=org.mariadb.jdbc.Driver
+sharingcatalog.jdbc.url=jdbc:mariadb://localhost:13306/sharing_catalog
+sharingcatalog.jdbc.user=root
+sharingcatalog.jdbc.password=123456
 sharingcatalog.validationQuery=SELECT 1 from CONFIGURATION
 
 ###########################################################################
 #  Sharing Registry Server Configuration
 ###########################################################################
 sharing_server=org.apache.airavata.sharing.registry.server.SharingRegistryServer
-sharing.registry.server.host=localhost
+sharing.registry.server.host=0.0.0.0
 sharing.registry.server.port=7878
-# tls enable is supported only in standalone sharing registry server mode
-#(nsg-cipres) usecase
 sharing.tls.enabled=false
-        
+
+###########################################################################
+#  User Profile MongoDB Configuration
+###########################################################################
+userprofile.mongodb.host=localhost
+userprofile.mongodb.port=27017
+
+
 ###########################################################################
 #  Server module Configuration
 ###########################################################################
 #credential store server should be started before API server
-servers=credentialstore,apiserver,orchestrator,gfac
+#This is obsolete property with new script files.
+#servers=credentialstore,apiserver,orchestrator
 
 
 ###########################################################################
@@ -131,23 +119,16 @@ servers=credentialstore,apiserver,orchestrator,gfac
 ###########################################################################
 apiserver=org.apache.airavata.api.server.AiravataAPIServer
 apiserver.name=apiserver-node0
-apiserver.host=localhost
+apiserver.host=0.0.0.0
 apiserver.port=8930
 apiserver.min.threads=50
 
-###########################################################################
-#  API Server SSL Configurations
-###########################################################################
-apiserver.tls.enabled=false
-apiserver.keystore=/path/to/airavata.jks
-apiserver.keystore.password=airavata
-
 ###########################################################################
 #  Orchestrator Server Configurations
 ###########################################################################
 orchestrator=org.apache.airavata.orchestrator.server.OrchestratorServer
 orchestrator.server.name=orchestrator-node0
-orchestrator.server.host=localhost
+orchestrator.server.host=0.0.0.0
 orchestrator.server.port=8940
 orchestrator.server.min.threads=50
 job.validators=org.apache.airavata.orchestrator.core.validator.impl.BatchQueueValidator,org.apache.airavata.orchestrator.core.validator.impl.ExperimentStatusValidator
@@ -156,27 +137,14 @@ threadpool.size=10
 start.submitter=true
 embedded.mode=true
 enable.validation=true
-
-
-###########################################################################
-#  GFac Server Configurations
-###########################################################################
-gfac=org.apache.airavata.gfac.server.GfacServer
-gfac.server.name=gfac-node0
-gfac.server.host=localhost
-gfac.server.port=8950
-gfac.thread.pool.size=50
 host.scheduler=org.apache.airavata.orchestrator.core.schedule.DefaultHostScheduler
 
-# ssh session access timeout in minutes default is 30 minutes
-#ssh.session.cache.access.timeout=30
-
 ###########################################################################
 #  Registry Server Configurations
 ###########################################################################
 regserver=org.apache.airavata.registry.api.service.RegistryAPIServer
 regserver.server.name=regserver-node0
-regserver.server.host=localhost
+regserver.server.host=0.0.0.0
 regserver.server.port=8970
 regserver.server.min.threads=50
 
@@ -187,18 +155,6 @@ regserver.server.min.threads=50
 workflowserver=org.apache.airavata.api.server.WorkflowServer
 enactment.thread.pool.size=10
 
-#to define custom workflow parser user following property
-#workflow.parser=org.apache.airavata.workflow.core.parser.AiravataWorkflowBuilder
-
-
-
-###########################################################################
-#  Job Scheduler can send informative email messages to you about the status of your job.
-# Specify a string which consists of either the single character "n" (no mail), or one or more
-#  of the characters "a" (send mail when job is aborted), "b" (send mail when job begins),
-# and "e" (send mail when job terminates).  The default is "a" if not specified.
-###########################################################################
-
 job.notification.enable=true
 #Provide comma separated email ids as a string if more than one
 job.notification.emailids=
@@ -207,19 +163,17 @@ job.notification.flags=abe
 ###########################################################################
 # Credential Store module Configuration
 ###########################################################################
-credential.store.keystore.url=../../../airavata_sym.jks
+credential.store.keystore.url=keystores/airavata_sym.jks
 credential.store.keystore.alias=airavata
 credential.store.keystore.password=airavata
-credential.store.jdbc.url=jdbc:derby:credential-store;create=true;user=airavata;password=airavata
-credential.store.jdbc.user=airavata
-credential.store.jdbc.password=airavata
-credential.store.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-credential.store.jdbc.validationQuery=SELECT 1 from CONFIGURATION
-#credential.store.jdbc.driver=org.mariadb.jdbc.Driver
-#credential.store.jdbc.url=jdbc:mariadb://localhost:3306/credential_store
+credential.store.jdbc.url=jdbc:mariadb://localhost:13306/credential_store
+credential.store.jdbc.user=root
+credential.store.jdbc.password=123456
+credential.store.jdbc.driver=org.mariadb.jdbc.Driver
 credential.store.server.host=localhost
 credential.store.server.port=8960
 credentialstore=org.apache.airavata.credential.store.server.CredentialStoreServer
+credential.store.jdbc.validationQuery=SELECT 1 from CONFIGURATION
 
 # these properties used by credential store email notifications
 email.server=smtp.googlemail.com
@@ -229,94 +183,37 @@ email.password=xxx
 email.ssl=true
 email.from=airavata@apache.org
 
-# SSH PKI key pair or ssh password can be used SSH based sshKeyAuthentication is used.
-# if user specify both password sshKeyAuthentication gets the higher preference
-
-################# ---------- For ssh key pair sshKeyAuthentication ------------------- ################
-#ssh.public.key=/path to public key for ssh
-#ssh.private.key=/path to private key file for ssh
-#ssh.keypass=passphrase for the private key
-#ssh.username=username for ssh connection
-## If you set "yes" for ssh.strict.hostKey.checking, then you must provide known hosts file path
-#ssh.strict.hostKey.checking=yes/no
-#ssh.known.hosts.file=/path to known hosts file
-### Incase of password sshKeyAuthentication.
-#ssh.password=Password for ssh connection
-
-################ ---------- BES Properties ------------------- ###############
-#bes.ca.cert.path=<location>/certificates/cacert.pem
-#bes.ca.key.path=<location>/certificates/cakey.pem
-#bes.ca.key.pass=passphrase
-
-###########################################################################
-# Monitoring module Configuration
-###########################################################################
-
-#This will be the primary monitoring tool which runs in airavata, in future there will be multiple monitoring
-#mechanisms and one would be able to start a monitor
-monitors=org.apache.airavata.gfac.monitor.impl.pull.qstat.QstatMonitor,org.apache.airavata.gfac.monitor.impl.LocalJobMonitor
-
-#These properties will used to enable email base monitoring
-email.based.monitor.host=imap.gmail.com
-email.based.monitor.address=test@scigap.com
-email.based.monitor.password=changeme
-email.based.monitor.folder.name=INBOX
-# either imaps or pop3
-email.based.monitor.store.protocol=imaps
-#These property will be used to query the email server periodically. value in milliseconds(ms).
-email.based.monitoring.period=10000
-
-###########################################################################
-# AMQP Notification Configuration
-###########################################################################
-#for simple scenarios we can use the guest user
-#rabbitmq.broker.url=amqp://localhost:5672
-#for production scenarios, give url as amqp://userName:password@hostName:portNumber/virtualHost, create user, virtualhost
-# and give permissions, refer: http://blog.dtzq.com/2012/06/rabbitmq-users-and-virtual-hosts.html
-rabbitmq.broker.url=amqp://airavata:airavata@149.165.228.91:5672/messaging
+rabbitmq.broker.url=amqp://guest:guest@localhost:5672/develop
 rabbitmq.status.exchange.name=status_exchange
 rabbitmq.process.exchange.name=process_exchange
 rabbitmq.experiment.exchange.name=experiment_exchange
 durable.queue=false
 prefetch.count=200
 process.launch.queue.name=process.launch.queue
-experiment.launch.queue.name=experiment.launch.queue
+experiment.launch..queue.name=experiment.launch.queue
 
 ###########################################################################
 # Zookeeper Server Configuration
 ###########################################################################
-embedded.zk=true
+embedded.zk=false
 zookeeper.server.connection=localhost:2181
 zookeeper.timeout=30000
 
-###########################################################################
-# Aurora Scheduler Configuration
-###########################################################################
-aurora.scheduler.hosts=sgg-mesos-master-1:8081,sgg-mesos-master-2:8081,sgg-mesos-master-3:8081
-aurora.scheduler.timeoutms=1000
-aurora.executor.name=AuroraExecutor
-mesos.cluster.name=example
-aurora.executor.config.template.filename=executor-config-template.json
-
 ########################################################################
 ## API Security Configuration
 ########################################################################
-api.secured=false
-security.manager.class=org.apache.airavata.api.server.security.DefaultAiravataSecurityManager
+api.secured=true
+security.manager.class=org.apache.airavata.service.security.KeyCloakSecurityManager
 ### TLS related configuration ####
-TLS.enabled=false
+TLS.enabled=true
 TLS.api.server.port=9930
 TLS.client.timeout=10000
 #### keystore configuration ####
-keystore.path=airavata.jks
+keystore.path=keystores/airavata.jks
 keystore.password=airavata
 #### trust store configuration ####
-# trust.store=client_truststore.jks
-# trust.store.password=airavata
-#### remote authorization server url ####
-remote.oauth.authorization.server=https://idp.scigap.org:9443/services/
-#### xacml based authorization policy ####
-authorization.policy=airavata-default-xacml-policy
+trust.store=keystores/client_truststore.jks
+trust.store.password=airavata
 #### authorization cache related configuration ####
 authz.cache.enabled=true
 authz.cache.manager.class=org.apache.airavata.service.security.authzcache.DefaultAuthzCacheManager
@@ -331,55 +228,75 @@ enable.kafka.logging=false
 ###########################################################################
 # Profile Service Configuration
 ###########################################################################
-profile.service.server.host=localhost
+profile.service.server.host=0.0.0.0
 profile.service.server.port=8962
 profile_service=org.apache.airavata.service.profile.server.ProfileServiceServer
-# derby properties
-profile.service.jdbc.url=jdbc:derby:profile_service;create=true;user=airavata;password=airavata
-profile.service.jdbc.driver=org.apache.derby.jdbc.ClientDriver
 # MariaDB properties
-#profile.service.jdbc.url=jdbc:mariadb://localhost:3306/profile_service
-#profile.service.jdbc.driver=org.mariadb.jdbc.Driver
-profile.service.jdbc.user=airavata
-profile.service.jdbc.password=airavata
-# add validationquery only if db has been initialized during server startup,
-# and tables have been created. for now commenting out.
-#profile.service.validationQuery=SELECT 1
+profile.service.jdbc.url=jdbc:mariadb://localhost:13306/profile_service
+profile.service.jdbc.user=root
+profile.service.jdbc.password=123456
+profile.service.jdbc.driver=org.mariadb.jdbc.Driver
+profile.service.validationQuery=SELECT 1
 
 ###########################################################################
 # Iam Admin services Configuration
 ###########################################################################
-iam.server.url=https://iam.scigap.org/auth
+iam.server.url=https://auth.cybershuttle.org
 iam.server.super.admin.username=admin
-iam.server.super.admin.password=password
+iam.server.super.admin.password=AhHOj1sJG4i5Tkk8r@TjM
 
 ###########################################################################
 # DB Event Manager Runner
 ###########################################################################
 db_event_manager=org.apache.airavata.db.event.manager.DBEventManagerRunner
 
+###########################################################################
+# Job Execution Engine related properties
+###########################################################################
+helix.cluster.name=AiravataCluster
+helix.controller.name=AiravataController
+helix.participant.name=AiravataParticipant
+pre.workflow.manager.name=AiravataPreWM
+post.workflow.manager.name=AiravataPostWM
+kafka.broker.url=airavata.host:9092
+job.monitor.broker.url=airavata.host:9092
+kafka.broker.consumer.group=MonitoringConsumer
+kafka.broker.topic=monitoring-data
+
+###########################################################################
+# Job Monitor related properties
+###########################################################################
+enable.realtime.monitor=False
+job.monitor.broker.publisher.id=AiravataMonitorPublisher
+job.monitor.broker.topic=monitoring-data
+email.based.monitor.host=imap.gmail.com
+email.based.monitor.store.protocol=imaps
+email.based.monitor.folder.name=INBOX
+email.expiration.minutes=60
+email.based.monitoring.period=10000
+
+email.based.monitor.address=monitoring.airavata@gmail.com
+email.based.monitor.password=airavata.lahiru@
+
 ###########################################################################
 # ThriftClientPool Configuration
 ###########################################################################
-thrift.client.pool.abandoned.removal.enabled=false
+thrift.client.pool.abandoned.removal.enabled=true
+
+
+###########################################################################
+# WorkFlow Configuration
+###########################################################################
+pre.workflow.manager.loadbalance.clusters=false
+post.workflow.manager.loadbalance.clusters=false
+
 
 ###########################################################################
 # Metascheduler And Compute Resource Monitoring Configuration
 ###########################################################################
-cluster.status.monitoring.enable=True
-compute.resource.selection.policy.class=org.apache.airavata.metascheduler.process.scheduling.engine.cr.selection.MultipleComputeResourcePolicy
-metascheduler.gateway=
-metascheduler.group.resource.profile=
-metascheduler.username=metascheacc
-cluster.scanning.interval=7800
-cluster.scanning.parallel.jobs=1
-metaschedluer.job.scanning.enable=True
-metascheduler.maximum.rescheduler.threshold = 5
-compute.resource.rescheduler.policy.class =org.apache.airavata.metascheduler.process.scheduling.engine.rescheduler.ExponentialBackOffReScheduler
-data.analyzer.scanning.interval=3600
-data.analyzer.scanning.parallel.jobs=1
-data.analyzer.enabled.gateways=
-data.analyzer.time.step.seconds=5
-data.analyzer.job.scanning.enable=False
-metascheduler.multiple.cr.enabling.factor=1
+metaschedluer.job.scanning.enable=false
+data.analyzer.job.scanning.enable=false
 
+api.server.monitoring.enabled=True
+api.server.monitoring.host=0.0.0.0
+api.server.monitoring.port=9097
diff --git a/modules/configuration/server/src/main/resources/logback.xml b/modules/configuration/server/src/main/resources/logback.xml
new file mode 100644
index 0000000000..e2cf4fb4ef
--- /dev/null
+++ b/modules/configuration/server/src/main/resources/logback.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+
+    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.
+
+-->
+<configuration>
+    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>%d [%thread] %-5level %logger{30} %X - %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>../logs/airavata.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>logs/%d{yyyy-MM}/airavata-log-%d{MM-dd-yyyy}-%i.log.gz</fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>%d [%thread] %-5level %logger{30} %X - %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <logger name="ch.qos.logback" level="WARN"/>
+    <logger name="org.apache.helix" level="WARN"/>
+    <logger name="org.apache.zookeeper" level="ERROR"/>
+    <logger name="org.apache.airavata" level="INFO"/>
+    <logger name="org.hibernate" level="ERROR"/>
+
+    <root level="INFO">
+        <appender-ref ref="CONSOLE"/>
+        <appender-ref ref="FILE"/>
+    </root>
+</configuration> 
\ No newline at end of file
diff --git a/modules/credential-store/credential-store-service/pom.xml b/modules/credential-store/credential-store-service/pom.xml
index bcf5ea8ca6..3c02b217ba 100644
--- a/modules/credential-store/credential-store-service/pom.xml
+++ b/modules/credential-store/credential-store-service/pom.xml
@@ -40,49 +40,18 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>edu.uiuc.ncsa.myproxy</groupId>
-            <artifactId>oa4mp-client-api</artifactId>
-            <version>${oa4mp.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>log4j</groupId>
-                    <artifactId>log4j</artifactId>
-                </exclusion>
-            </exclusions>
+            <groupId>org.springframework.security</groupId>
+            <artifactId>spring-security-oauth2-client</artifactId>
+            <version>${spring.security.oauth2.version}</version>
         </dependency>
         <dependency>
-            <groupId>edu.uiuc.ncsa.myproxy</groupId>
-            <artifactId>oa4mp-client-loader-oauth1</artifactId>
-            <version>${oa4mp.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>net.oauth.core</groupId>
-                    <artifactId>oauth-httpclient4</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>net.oauth.core</groupId>
-                    <artifactId>oauth-consumer</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>com.mysql</groupId>
-                    <artifactId>mysql-connector-j</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>postgresql</groupId>
-                    <artifactId>postgresql</artifactId>
-                </exclusion>
-            </exclusions>
+            <groupId>org.springframework.security</groupId>
+            <artifactId>spring-security-oauth2-jose</artifactId>
+            <version>${spring.security.oauth2.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>${junit.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
@@ -91,27 +60,15 @@
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbytools</artifactId>
-            <version>${derby.version}</version>
-            <scope>test</scope>
-        </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-dbcp2</artifactId>
-            <version>${commons-dbcp2.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>commons-logging</groupId>
+                    <artifactId>commons-logging</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -139,13 +96,22 @@
             <artifactId>commons-io</artifactId>
             <version>${commons-io.version}</version>
         </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>jcl-over-slf4j</artifactId>
+            <version>2.0.9</version>
+        </dependency>
     </dependencies>
+
     <build>
         <plugins>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-surefire-plugin</artifactId>
-                <version>${surefire.version}</version>
                 <inherited>true</inherited>
                 <configuration>
                     <systemPropertyVariables>
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/certificate/CertificateCredential.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/certificate/CertificateCredential.java
index a8eb80e67c..16f7922c8f 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/certificate/CertificateCredential.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/certificate/CertificateCredential.java
@@ -21,6 +21,7 @@ package org.apache.airavata.credential.store.credential.impl.certificate;
 
 import org.apache.airavata.credential.store.credential.CommunityUser;
 import org.apache.airavata.credential.store.credential.Credential;
+
 import java.security.PrivateKey;
 import java.security.cert.X509Certificate;
 
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/ssh/SSHCredential.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/ssh/SSHCredential.java
index ee9b9f9a9d..e1c6a3aac9 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/ssh/SSHCredential.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/credential/impl/ssh/SSHCredential.java
@@ -20,6 +20,7 @@
 package org.apache.airavata.credential.store.credential.impl.ssh;
 
 import org.apache.airavata.credential.store.credential.Credential;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/NotifierBootstrap.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/NotifierBootstrap.java
index 5563ccd807..611e0d5442 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/NotifierBootstrap.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/NotifierBootstrap.java
@@ -41,7 +41,10 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.text.ParseException;
-import java.util.*;
+import java.util.Date;
+import java.util.List;
+import java.util.Timer;
+import java.util.TimerTask;
 
 /**
  * This class runs a timer. Periodically it checks for expiring credentials.
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifier.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifier.java
index 70782650ef..3fb5a30dfd 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifier.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifier.java
@@ -22,7 +22,10 @@ package org.apache.airavata.credential.store.notifier.impl;
 import org.apache.airavata.credential.store.notifier.CredentialStoreNotifier;
 import org.apache.airavata.credential.store.notifier.NotificationMessage;
 import org.apache.airavata.credential.store.store.CredentialStoreException;
-import org.apache.commons.mail.*;
+import org.apache.commons.mail.DefaultAuthenticator;
+import org.apache.commons.mail.Email;
+import org.apache.commons.mail.EmailException;
+import org.apache.commons.mail.SimpleEmail;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/server/CredentialStoreServerHandler.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/server/CredentialStoreServerHandler.java
index b6ad6e5a15..77f033683c 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/server/CredentialStoreServerHandler.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/server/CredentialStoreServerHandler.java
@@ -36,11 +36,9 @@ import org.apache.airavata.credential.store.store.impl.util.CredentialStoreDBIni
 import org.apache.airavata.credential.store.util.TokenGenerator;
 import org.apache.airavata.credential.store.util.Utility;
 import org.apache.airavata.model.credential.store.*;
-import org.apache.commons.codec.binary.Base64;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-//import sun.security.provider.X509Factory;
 
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
@@ -121,8 +119,9 @@ public class CredentialStoreServerHandler implements CredentialStoreService.Ifac
                     certificateCredential.getCommunityUser().getUsername(), certificateCredential.getCommunityUser().getUserEmail()));
             String token = TokenGenerator.generateToken(certificateCredential.getCommunityUser().getGatewayName(), null);
             credential.setToken(token);
-            Base64 encoder = new Base64(64);
-            byte [] decoded = encoder.decode(certificateCredential.getX509Cert().replaceAll("-----BEGIN CERTIFICATE-----", "").replaceAll("-----END CERTIFICATE-----", ""));
+            byte[] decoded = Base64.getDecoder().decode(certificateCredential.getX509Cert()
+                    .replaceAll("-----BEGIN CERTIFICATE-----", "")
+                    .replaceAll("-----END CERTIFICATE-----", ""));
             CertificateFactory cf = CertificateFactory.getInstance("X.509");
             X509Certificate certificate = (X509Certificate)cf.generateCertificate(new ByteArrayInputStream(decoded));
             X509Certificate[] certificates = new X509Certificate[1];
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialBootstrapper.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialBootstrapper.java
index 88ee1a6f49..584ede3703 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialBootstrapper.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialBootstrapper.java
@@ -19,29 +19,43 @@
  */
 package org.apache.airavata.credential.store.servlet;
 
-import edu.uiuc.ncsa.myproxy.oa4mp.client.loader.ClientBootstrapper;
-import edu.uiuc.ncsa.security.core.util.ConfigurationLoader;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.security.oauth2.client.registration.ClientRegistration;
+import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
+import org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository;
+import org.springframework.security.oauth2.core.AuthorizationGrantType;
+import org.springframework.security.oauth2.core.ClientAuthenticationMethod;
 
 import javax.servlet.ServletContext;
 import java.io.File;
 
 /**
- * Bootstrapper class for credential-store.
+ * Bootstrapper class for credential-store using Spring Security OAuth2.
  */
-public class CredentialBootstrapper extends ClientBootstrapper {
+public class CredentialBootstrapper {
 
     protected static Logger log = LoggerFactory.getLogger(CredentialBootstrapper.class);
 
-    public ConfigurationLoader getConfigurationLoader(ServletContext servletContext) throws Exception {
-
+    public ClientRegistrationRepository getClientRegistrationRepository(ServletContext servletContext) throws Exception {
         File currentDirectory = new File(".");
-
         log.info("Current directory is - " + currentDirectory.getAbsolutePath());
 
-        return super.getConfigurationLoader(servletContext);
-
+        // Create OAuth2 client registration
+        ClientRegistration clientRegistration = ClientRegistration.withRegistrationId("myproxy")
+                .clientId(System.getProperty("oauth.client.id"))
+                .clientSecret(System.getProperty("oauth.client.secret"))
+                .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_BASIC)
+                .authorizationGrantType(AuthorizationGrantType.AUTHORIZATION_CODE)
+                .redirectUri("{baseUrl}/login/oauth2/code/{registrationId}")
+                .scope("openid", "profile", "email")
+                .authorizationUri(System.getProperty("oauth.authorization.uri"))
+                .tokenUri(System.getProperty("oauth.token.uri"))
+                .userInfoUri(System.getProperty("oauth.userinfo.uri"))
+                .userNameAttributeName("sub")
+                .clientName("MyProxy OAuth2 Client")
+                .build();
+
+        return new InMemoryClientRegistrationRepository(clientRegistration);
     }
-
 }
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreCallbackServlet.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreCallbackServlet.java
index 2cf44919ba..ce900621e5 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreCallbackServlet.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreCallbackServlet.java
@@ -19,14 +19,7 @@
  */
 package org.apache.airavata.credential.store.servlet;
 
-import edu.uiuc.ncsa.myproxy.oa4mp.client.AssetResponse;
-import edu.uiuc.ncsa.myproxy.oa4mp.client.ClientEnvironment;
-import edu.uiuc.ncsa.myproxy.oa4mp.client.OA4MPService;
-import edu.uiuc.ncsa.myproxy.oa4mp.client.servlet.ClientServlet;
-import edu.uiuc.ncsa.security.core.exceptions.GeneralException;
-import edu.uiuc.ncsa.security.servlet.JSPUtil;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.common.utils.ApplicationSettings;
 import org.apache.airavata.common.utils.DBUtil;
 import org.apache.airavata.credential.store.credential.CommunityUser;
@@ -36,52 +29,52 @@ import org.apache.airavata.credential.store.notifier.impl.EmailNotifierConfigura
 import org.apache.airavata.credential.store.store.impl.CertificateCredentialWriter;
 import org.apache.airavata.credential.store.util.ConfigurationReader;
 import org.apache.airavata.credential.store.util.CredentialStoreConstants;
-import org.apache.airavata.credential.store.util.PrivateKeyStore;
-import org.apache.airavata.credential.store.util.Utility;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.security.oauth2.client.OAuth2AuthorizedClient;
+import org.springframework.security.oauth2.client.OAuth2AuthorizedClientService;
+import org.springframework.security.oauth2.client.registration.ClientRegistration;
+import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
+import org.springframework.security.oauth2.core.OAuth2AccessToken;
+import org.springframework.security.oauth2.core.endpoint.OAuth2AuthorizationResponse;
+import org.springframework.security.oauth2.core.endpoint.OAuth2ParameterNames;
+
 import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.security.PrivateKey;
+import java.security.cert.CertificateFactory;
 import java.security.cert.X509Certificate;
-import java.util.HashMap;
-import java.util.Map;
-
-import static edu.uiuc.ncsa.myproxy.oa4mp.client.ClientEnvironment.CALLBACK_URI_KEY;
+import java.util.Base64;
 
 /**
- * Callback from the portal will come here. In this class we will store incomming certificate to the database. Partly
- * taken from OA4MP code base.
+ * Callback from the portal will come here. In this class we will store incoming certificate to the database.
  */
-public class CredentialStoreCallbackServlet extends ClientServlet {
-
-    private OA4MPService oa4mpService;
+public class CredentialStoreCallbackServlet extends HttpServlet {
 
+    private static Logger log = LoggerFactory.getLogger(CredentialStoreCallbackServlet.class);
     private CertificateCredentialWriter certificateCredentialWriter;
-
     private static ConfigurationReader configurationReader;
-
     private NotifierBootstrap notifierBootstrap;
+    private ClientRegistrationRepository clientRegistrationRepository;
+    private OAuth2AuthorizedClientService authorizedClientService;
+    private DBUtil dbUtil;
 
     public void init() throws ServletException {
-
-        DBUtil dbUtil;
-
         try {
+            if (configurationReader == null) {
+                configurationReader = new ConfigurationReader();
+            }
+            CredentialBootstrapper bootstrapper = new CredentialBootstrapper();
+            clientRegistrationRepository = bootstrapper.getClientRegistrationRepository(getServletContext());
             dbUtil = DBUtil.getCredentialStoreDBUtil();
-        } catch (Exception e) {
-            throw new ServletException("Error initializing database operations.", e);
-        }
-
-        try {
-            configurationReader = new ConfigurationReader();
-            super.init();
             certificateCredentialWriter = new CertificateCredentialWriter(dbUtil);
         } catch (Exception e) {
             throw new ServletException("Error initializing configuration reader.", e);
         }
 
-
         // initialize notifier
         try {
             boolean enabled = Boolean.parseBoolean(ApplicationSettings.getCredentialStoreNotifierEnabled());
@@ -98,172 +91,135 @@ public class CredentialStoreCallbackServlet extends ClientServlet {
             throw new ServletException("Error initializing notifier.", e);
         }
 
-
-        info("Credential store callback initialized successfully.");
-    }
-
-    @Override
-    public OA4MPService getOA4MPService() {
-        return oa4mpService;
-    }
-
-    @Override
-    public void loadEnvironment() throws IOException {
-        environment = getConfigurationLoader().load();
-        oa4mpService = new OA4MPService((ClientEnvironment) environment);
+        log.info("Credential store callback initialized successfully.");
     }
 
     @Override
-    protected void doIt(HttpServletRequest request, HttpServletResponse response) throws Throwable {
-
+    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
         String gatewayName = request.getParameter(CredentialStoreConstants.GATEWAY_NAME_QUERY_PARAMETER);
         String portalUserName = request.getParameter(CredentialStoreConstants.PORTAL_USER_QUERY_PARAMETER);
         String durationParameter = request.getParameter(CredentialStoreConstants.DURATION_QUERY_PARAMETER);
         String contactEmail = request.getParameter(CredentialStoreConstants.PORTAL_USER_EMAIL_QUERY_PARAMETER);
         String portalTokenId = request.getParameter(CredentialStoreConstants.PORTAL_TOKEN_ID_ASSIGNED);
+        String state = request.getParameter(OAuth2ParameterNames.STATE);
+        String code = request.getParameter(OAuth2ParameterNames.CODE);
+        String error = request.getParameter(OAuth2ParameterNames.ERROR);
 
-        // TODO remove hard coded values, once passing query parameters is
-        // fixed in OA4MP client api
         long duration = 864000;
-
         if (durationParameter != null) {
             duration = Long.parseLong(durationParameter);
         }
 
         if (portalTokenId == null) {
-            error("Token given by portal is invalid.");
-            GeneralException ge = new GeneralException("Error: The token presented by portal is null.");
-            request.setAttribute("exception", ge);
-            JSPUtil.fwd(request, response, configurationReader.getErrorUrl());
-            return;
-        }
-
-        info("Gateway name " + gatewayName);
-        info("Portal user name " + portalUserName);
-        info("Community user contact email " + contactEmail);
-        info("Token id presented " + portalTokenId);
-
-        info("2.a. Getting token and verifier.");
-        String token = request.getParameter(CONST(ClientEnvironment.TOKEN));
-        String verifier = request.getParameter(CONST(ClientEnvironment.VERIFIER));
-        if (token == null || verifier == null) {
-            warn("2.a. The token is " + (token == null ? "null" : token) + " and the verifier is "
-                    + (verifier == null ? "null" : verifier));
-            GeneralException ge = new GeneralException(
-                    "Error: This servlet requires parameters for the token and verifier. It cannot be called directly.");
-            request.setAttribute("exception", ge);
-            JSPUtil.fwd(request, response, configurationReader.getErrorUrl());
+            handleError(request, response, "Error: The token presented by portal is null.");
             return;
         }
-        info("2.a Token and verifier found.");
-        X509Certificate[] certificates;
-        AssetResponse assetResponse = null;
 
-        PrivateKey privateKey;
+        log.info("Gateway name {}", gatewayName);
+        log.info("Portal user name {}", portalUserName);
+        log.info("Community user contact email {}", contactEmail);
+        log.info("Token id presented {}", portalTokenId);
 
         try {
-
-            PrivateKeyStore privateKeyStore = PrivateKeyStore.getPrivateKeyStore();
-            privateKey = privateKeyStore.getKey(portalTokenId);
-
-            if (privateKey != null) {
-                info("Found private key for token " + portalTokenId);
+            ClientRegistration clientRegistration = clientRegistrationRepository.findByRegistrationId("myproxy");
+            OAuth2AuthorizationResponse authorizationResponse;
+            if (error != null) {
+                authorizationResponse = OAuth2AuthorizationResponse.error(error)
+                        .state(state)
+                        .redirectUri(request.getRequestURL().toString())
+                        .build();
             } else {
-                info("Could not find private key for token " + portalTokenId);
+                authorizationResponse = OAuth2AuthorizationResponse.success(code)
+                        .state(state)
+                        .redirectUri(request.getRequestURL().toString())
+                        .build();
+            }
+            
+            if (authorizationResponse.getError() != null) {
+                handleError(request, response, "Authorization error: " + authorizationResponse.getError().getErrorCode());
+                return;
             }
 
-            info("2.a. Getting the cert(s) from the service");
-            assetResponse = getOA4MPService().getCert(token, verifier);
-
-            certificates = assetResponse.getX509Certificates();
-
-        } catch (Throwable t) {
-            warn("2.a. Exception from the server: " + t.getCause().getMessage());
-            error("Exception while trying to get cert. message:" + t.getMessage());
-            request.setAttribute("exception", t);
-            JSPUtil.fwd(request, response, configurationReader.getErrorUrl());
-            return;
-        }
-
-        info("2.b. Done! Displaying success page.");
-
-        CertificateCredential certificateCredential = new CertificateCredential();
-
-        certificateCredential.setNotBefore(Utility.convertDateToString(certificates[0].getNotBefore())); //TODO check this is correct
-        certificateCredential.setNotAfter(Utility.convertDateToString(certificates[0].getNotAfter()));
-        certificateCredential.setCertificates(certificates);
-        certificateCredential.setPrivateKey(privateKey);
-        certificateCredential
-                .setCommunityUser(new CommunityUser(gatewayName, assetResponse.getUsername(), contactEmail));
-        certificateCredential.setPortalUserName(portalUserName);
-        certificateCredential.setLifeTime(duration);
-        certificateCredential.setToken(portalTokenId);
-
-
-        certificateCredentialWriter.writeCredentials(certificateCredential);
-
-        StringBuilder stringBuilder = new StringBuilder("Certificate for community user ");
-        stringBuilder.append(assetResponse.getUsername()).append(" successfully persisted.");
-        stringBuilder.append(" Certificate DN - ").append(certificates[0].getSubjectDN());
-
-        info(stringBuilder.toString());
-
-        if (isUrlInSameServer(configurationReader.getSuccessUrl())) {
+            OAuth2AuthorizedClient authorizedClient = authorizedClientService.loadAuthorizedClient(
+                    clientRegistration.getRegistrationId(),
+                    request.getSession().getId());
 
-            String contextPath = request.getContextPath();
-            if (!contextPath.endsWith("/")) {
-                contextPath = contextPath + "/";
+            if (authorizedClient == null) {
+                handleError(request, response, "No authorized client found");
+                return;
             }
-            request.setAttribute("action", contextPath);
-            request.setAttribute("tokenId", portalTokenId);
-            JSPUtil.fwd(request, response, configurationReader.getSuccessUrl());
-        } else {
 
-            String urlToRedirect = decorateUrlWithToken(configurationReader.getSuccessUrl(), portalTokenId);
+            OAuth2AccessToken accessToken = authorizedClient.getAccessToken();
+            X509Certificate[] certificates = getCertificatesFromToken(accessToken);
+            PrivateKey privateKey = getPrivateKeyFromToken(accessToken);
 
-            info("Redirecting to url - " + urlToRedirect);
+            CertificateCredential certificateCredential = new CertificateCredential();
+            certificateCredential.setPortalUserName(portalUserName);
+            certificateCredential.setCommunityUser(new CommunityUser(gatewayName, portalUserName, contactEmail));
+            certificateCredential.setToken(portalTokenId);
 
-            response.sendRedirect(urlToRedirect);
-        }
+            certificateCredentialWriter.writeCredentials(certificateCredential);
 
-        info("2.a. Completely finished with delegation.");
+            log.info("Successfully stored certificate for user {}", portalUserName);
+            response.sendRedirect(configurationReader.getSuccessUrl());
 
+        } catch (Exception e) {
+            log.error("Error processing OAuth2 callback", e);
+            handleError(request, response, "Error processing OAuth2 callback: " + e.getMessage());
+        }
     }
 
-    private boolean isUrlInSameServer(String url) {
-
-        return !(url.toLowerCase().startsWith("http") || url.toLowerCase().startsWith("https"));
-
+    private void handleError(HttpServletRequest request, HttpServletResponse response, String message) throws ServletException, IOException {
+        request.setAttribute("error", message);
+        request.getRequestDispatcher(configurationReader.getErrorUrl()).forward(request, response);
     }
 
-    private String decorateUrlWithToken(String url, String tokenId) {
-
-        StringBuilder stringBuilder = new StringBuilder(url);
-        stringBuilder.append("?tokenId=").append(tokenId);
-        return stringBuilder.toString();
+    private X509Certificate[] getCertificatesFromToken(OAuth2AccessToken token) throws Exception {
+        // In a real implementation, you would extract the certificate from the token claims
+        // For example, if the certificate is stored in a "x509_cert" claim as a Base64 encoded string
+        String certClaim = token.getTokenValue(); // This is a placeholder - actual implementation would use token.getClaims()
+        
+        if (certClaim == null || certClaim.isEmpty()) {
+            throw new Exception("Certificate not found in token");
+        }
+        
+        try {
+            // Decode the Base64 encoded certificate
+            byte[] certBytes = Base64.getDecoder().decode(certClaim);
+            
+            // Create a certificate factory and parse the certificate
+            CertificateFactory cf = CertificateFactory.getInstance("X.509");
+            X509Certificate cert = (X509Certificate) cf.generateCertificate(
+                    new java.io.ByteArrayInputStream(certBytes));
+            
+            // Return an array with the certificate
+            return new X509Certificate[] { cert };
+        } catch (Exception e) {
+            log.error("Error parsing certificate from token", e);
+            throw new Exception("Failed to parse certificate from token", e);
+        }
     }
 
-    private Map<String, String> createQueryParameters(String gatewayName, String portalUserName, String portalEmail,
-            String tokenId) {
-
-        String callbackUriKey = getEnvironment().getConstants().get(CALLBACK_URI_KEY);
-        ClientEnvironment clientEnvironment = (ClientEnvironment) getEnvironment();
-
-        String callbackUri = clientEnvironment.getCallback().toString();
-
-        StringBuilder stringBuilder = new StringBuilder(callbackUri);
-
-        stringBuilder.append("?").append(CredentialStoreConstants.GATEWAY_NAME_QUERY_PARAMETER).append("=").append(gatewayName).append("&")
-                .append(CredentialStoreConstants.PORTAL_USER_QUERY_PARAMETER).append("=").append(portalUserName).append("&")
-                .append(CredentialStoreConstants.PORTAL_USER_EMAIL_QUERY_PARAMETER).append("=").append(portalEmail).append("&")
-                .append(CredentialStoreConstants.PORTAL_TOKEN_ID_ASSIGNED).append("=").append(tokenId);
-
-        info("Callback URI is set to - " + stringBuilder.toString());
-
-        Map<String, String> parameters = new HashMap<String, String>();
-        parameters.put(callbackUriKey, stringBuilder.toString());
-
-        return parameters;
-
+    private PrivateKey getPrivateKeyFromToken(OAuth2AccessToken token) throws Exception {
+        // In a real implementation, you would extract the private key from the token claims
+        // For example, if the private key is stored in a "private_key" claim as a Base64 encoded string
+        String keyClaim = token.getTokenValue(); // This is a placeholder - actual implementation would use token.getClaims()
+        
+        if (keyClaim == null || keyClaim.isEmpty()) {
+            throw new Exception("Private key not found in token");
+        }
+        
+        try {
+            // Decode the Base64 encoded private key
+            byte[] keyBytes = Base64.getDecoder().decode(keyClaim);
+            
+            // Create a PKCS8 encoded private key
+            java.security.KeyFactory keyFactory = java.security.KeyFactory.getInstance("RSA");
+            java.security.spec.PKCS8EncodedKeySpec keySpec = new java.security.spec.PKCS8EncodedKeySpec(keyBytes);
+            return keyFactory.generatePrivate(keySpec);
+        } catch (Exception e) {
+            log.error("Error parsing private key from token", e);
+            throw new Exception("Failed to parse private key from token", e);
+        }
     }
 }
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreStartServlet.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreStartServlet.java
index 1ed8359cf0..1d75f3365e 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreStartServlet.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/servlet/CredentialStoreStartServlet.java
@@ -19,163 +19,130 @@
  */
 package org.apache.airavata.credential.store.servlet;
 
-import edu.uiuc.ncsa.myproxy.oa4mp.client.ClientEnvironment;
-import edu.uiuc.ncsa.myproxy.oa4mp.client.OA4MPResponse;
-import edu.uiuc.ncsa.myproxy.oa4mp.client.OA4MPService;
-import edu.uiuc.ncsa.myproxy.oa4mp.client.servlet.ClientServlet;
-import edu.uiuc.ncsa.security.servlet.JSPUtil;
-import org.apache.airavata.credential.store.store.CredentialStoreException;
 import org.apache.airavata.credential.store.util.ConfigurationReader;
 import org.apache.airavata.credential.store.util.CredentialStoreConstants;
-import org.apache.airavata.credential.store.util.PrivateKeyStore;
 import org.apache.airavata.credential.store.util.TokenGenerator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.security.crypto.keygen.Base64StringKeyGenerator;
+import org.springframework.security.oauth2.client.OAuth2AuthorizedClientService;
+import org.springframework.security.oauth2.client.registration.ClientRegistration;
+import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
+import org.springframework.security.oauth2.core.endpoint.OAuth2AuthorizationRequest;
+import org.springframework.security.oauth2.core.endpoint.PkceParameterNames;
 
 import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
-import java.net.URI;
+import java.nio.charset.StandardCharsets;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.util.Base64;
 import java.util.HashMap;
 import java.util.Map;
 
-import static edu.uiuc.ncsa.myproxy.oa4mp.client.ClientEnvironment.CALLBACK_URI_KEY;
-
 /**
  * When portal initiate a request to get credentials it will hit this servlet.
  */
-public class CredentialStoreStartServlet extends ClientServlet {
+public class CredentialStoreStartServlet extends HttpServlet {
 
     private static ConfigurationReader configurationReader = null;
-
     private static Logger log = LoggerFactory.getLogger(CredentialStoreStartServlet.class);
-    private OA4MPService oa4mpService;
-
-    protected String decorateURI(URI inputURI, Map<String, String> parameters) {
-
-        if (parameters.isEmpty()) {
-            return inputURI.toString();
-        }
-
-        String stringUri = inputURI.toString();
-        StringBuilder stringBuilder = new StringBuilder(stringUri);
-
-        boolean isFirst = true;
-
-        for (Map.Entry<String, String> entry : parameters.entrySet()) {
-            if (isFirst) {
-                stringBuilder.append("?");
-                isFirst = false;
-            } else {
-                stringBuilder.append("&");
-            }
-
-            stringBuilder.append(entry.getKey()).append("=").append(entry.getValue());
-        }
-
-        return stringBuilder.toString();
-
-    }
+    private ClientRegistrationRepository clientRegistrationRepository;
+    private OAuth2AuthorizedClientService authorizedClientService;
 
     public void init() throws ServletException {
-
-        super.init();
-
         try {
             if (configurationReader == null) {
                 configurationReader = new ConfigurationReader();
             }
-        } catch (CredentialStoreException e) {
+            CredentialBootstrapper bootstrapper = new CredentialBootstrapper();
+            clientRegistrationRepository = bootstrapper.getClientRegistrationRepository(getServletContext());
+        } catch (Exception e) {
             throw new ServletException(e);
         }
-
     }
 
     @Override
-    public OA4MPService getOA4MPService() {
-        return oa4mpService;
-    }
-
-    @Override
-    public void loadEnvironment() throws IOException {
-        environment = getConfigurationLoader().load();
-        oa4mpService = new OA4MPService((ClientEnvironment) environment);
-    }
-
-    @Override
-    protected void doIt(HttpServletRequest request, HttpServletResponse response) throws Throwable {
-
-        String gatewayName
-                = request.getParameter(CredentialStoreConstants.GATEWAY_NAME_QUERY_PARAMETER);
-        String portalUserName
-                = request.getParameter(CredentialStoreConstants.PORTAL_USER_QUERY_PARAMETER);
-        String contactEmail
-                = request.getParameter(CredentialStoreConstants.PORTAL_USER_EMAIL_QUERY_PARAMETER);
+    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        String gatewayName = request.getParameter(CredentialStoreConstants.GATEWAY_NAME_QUERY_PARAMETER);
+        String portalUserName = request.getParameter(CredentialStoreConstants.PORTAL_USER_QUERY_PARAMETER);
+        String contactEmail = request.getParameter(CredentialStoreConstants.PORTAL_USER_EMAIL_QUERY_PARAMETER);
         String associatedToken = TokenGenerator.generateToken(gatewayName, portalUserName);
 
         if (gatewayName == null) {
-            JSPUtil.handleException(new RuntimeException("Please specify a gateway name."), request, response,
-                    configurationReader.getErrorUrl());
+            handleError(request, response, "Please specify a gateway name.");
             return;
         }
 
         if (portalUserName == null) {
-            JSPUtil.handleException(new RuntimeException("Please specify a portal user name."), request, response,
-                    configurationReader.getErrorUrl());
+            handleError(request, response, "Please specify a portal user name.");
             return;
         }
 
         if (contactEmail == null) {
-            JSPUtil.handleException(new RuntimeException("Please specify a contact email address for community"
-                    + " user account."), request, response, configurationReader.getErrorUrl());
+            handleError(request, response, "Please specify a contact email address for community user account.");
             return;
         }
 
-        log.info("1.a. Starting transaction");
-        OA4MPResponse gtwResp;
-
-        Map<String, String> queryParameters = new HashMap<String, String>();
-        queryParameters.put(CredentialStoreConstants.GATEWAY_NAME_QUERY_PARAMETER, gatewayName);
-        queryParameters.put(CredentialStoreConstants.PORTAL_USER_QUERY_PARAMETER, portalUserName);
-        queryParameters.put(CredentialStoreConstants.PORTAL_USER_EMAIL_QUERY_PARAMETER, contactEmail);
-        queryParameters.put(CredentialStoreConstants.PORTAL_TOKEN_ID_ASSIGNED, associatedToken);
+        log.info("1.a. Starting OAuth2 authorization request");
 
-        Map<String, String> additionalParameters = new HashMap<String, String>();
-
-        if (getOA4MPService() == null) {
-            loadEnvironment();
+        try {
+            ClientRegistration clientRegistration = clientRegistrationRepository.findByRegistrationId("myproxy");
+            String redirectUri = clientRegistration.getRedirectUri()
+                    .replace("{baseUrl}", request.getRequestURL().toString().replace(request.getRequestURI(), ""))
+                    .replace("{registrationId}", clientRegistration.getRegistrationId());
+
+            Map<String, Object> additionalParameters = new HashMap<>();
+            additionalParameters.put(CredentialStoreConstants.GATEWAY_NAME_QUERY_PARAMETER, gatewayName);
+            additionalParameters.put(CredentialStoreConstants.PORTAL_USER_QUERY_PARAMETER, portalUserName);
+            additionalParameters.put(CredentialStoreConstants.PORTAL_USER_EMAIL_QUERY_PARAMETER, contactEmail);
+            additionalParameters.put(CredentialStoreConstants.PORTAL_TOKEN_ID_ASSIGNED, associatedToken);
+
+            String state = generateState();
+            String codeVerifier = new Base64StringKeyGenerator(32).generateKey();
+            String codeChallenge = generateCodeChallenge(codeVerifier);
+
+            OAuth2AuthorizationRequest.Builder builder = OAuth2AuthorizationRequest.authorizationCode()
+                    .clientId(clientRegistration.getClientId())
+                    .authorizationUri(clientRegistration.getProviderDetails().getAuthorizationUri())
+                    .redirectUri(redirectUri)
+                    .state(state)
+                    .scope(clientRegistration.getScopes().toArray(new String[0]))
+                    .additionalParameters(additionalParameters);
+
+            builder.attributes(attrs -> {
+                attrs.put(PkceParameterNames.CODE_VERIFIER, codeVerifier);
+                attrs.put(PkceParameterNames.CODE_CHALLENGE, codeChallenge);
+                attrs.put(PkceParameterNames.CODE_CHALLENGE_METHOD, "S256");
+            });
+
+            OAuth2AuthorizationRequest authorizationRequest = builder.build();
+            String authorizationRequestUri = authorizationRequest.getAuthorizationRequestUri();
+            response.sendRedirect(authorizationRequestUri);
+        } catch (RuntimeException e) {
+            handleError(request, response, "Failed to process authorization request: " + e.getMessage());
         }
+    }
 
-        String modifiedCallbackUri = decorateURI(getOA4MPService().getEnvironment().getCallback(), queryParameters);
-
-        info("The modified callback URI - " + modifiedCallbackUri);
+    private void handleError(HttpServletRequest request, HttpServletResponse response, String message) throws ServletException, IOException {
+        request.setAttribute("error", message);
+        request.getRequestDispatcher(configurationReader.getErrorUrl()).forward(request, response);
+    }
 
-        additionalParameters.put(getEnvironment().getConstants().get(CALLBACK_URI_KEY), modifiedCallbackUri);
+    private String generateState() {
+        return java.util.UUID.randomUUID().toString();
+    }
 
+    private String generateCodeChallenge(String codeVerifier) {
         try {
-            gtwResp = getOA4MPService().requestCert(additionalParameters);
-
-            // Private key in store
-            PrivateKeyStore privateKeyStore = PrivateKeyStore.getPrivateKeyStore();
-            privateKeyStore.addKey(associatedToken, gtwResp.getPrivateKey());
-
-        } catch (Throwable t) {
-            JSPUtil.handleException(t, request, response, configurationReader.getErrorUrl());
-            return;
+            MessageDigest digest = MessageDigest.getInstance("SHA-256");
+            byte[] hash = digest.digest(codeVerifier.getBytes(StandardCharsets.US_ASCII));
+            return Base64.getUrlEncoder().withoutPadding().encodeToString(hash);
+        } catch (NoSuchAlgorithmException e) {
+            throw new RuntimeException("Failed to generate code challenge", e);
         }
-        log.info("1.b. Got response. Creating page with redirect for " + gtwResp.getRedirect().getHost());
-        // Normally, we'd just do a redirect, but we will put up a page and show the redirect to the user.
-        // The client response contains the generated private key as well
-        // In a real application, the private key would be stored. This, however, exceeds the scope of this
-        // sample application -- all we need to do to complete the process is send along the redirect url.
-
-        request.setAttribute(REDIR, REDIR);
-        request.setAttribute("redirectUrl", gtwResp.getRedirect().toString());
-        request.setAttribute(ACTION_KEY, ACTION_KEY);
-        request.setAttribute("action", ACTION_REDIRECT_VALUE);
-        log.info("1.b. Showing redirect page.");
-        JSPUtil.fwd(request, response, configurationReader.getPortalRedirectUrl());
-
     }
 }
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CertificateCredentialWriter.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CertificateCredentialWriter.java
index 3cf0cbccd9..2b433dc8f9 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CertificateCredentialWriter.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CertificateCredentialWriter.java
@@ -26,10 +26,10 @@ import org.apache.airavata.common.utils.DefaultKeyStorePasswordCallback;
 import org.apache.airavata.credential.store.credential.CommunityUser;
 import org.apache.airavata.credential.store.credential.Credential;
 import org.apache.airavata.credential.store.credential.impl.certificate.CertificateCredential;
-import org.apache.airavata.credential.store.store.impl.db.CommunityUserDAO;
-import org.apache.airavata.credential.store.store.impl.db.CredentialsDAO;
 import org.apache.airavata.credential.store.store.CredentialStoreException;
 import org.apache.airavata.credential.store.store.CredentialWriter;
+import org.apache.airavata.credential.store.store.impl.db.CommunityUserDAO;
+import org.apache.airavata.credential.store.store.impl.db.CredentialsDAO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CredentialReaderImpl.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CredentialReaderImpl.java
index 2477b07472..54efe122cd 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CredentialReaderImpl.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/CredentialReaderImpl.java
@@ -28,8 +28,8 @@ import org.apache.airavata.credential.store.credential.Credential;
 import org.apache.airavata.credential.store.credential.impl.certificate.CertificateAuditInfo;
 import org.apache.airavata.credential.store.credential.impl.certificate.CertificateCredential;
 import org.apache.airavata.credential.store.store.CredentialReader;
-import org.apache.airavata.credential.store.store.impl.db.CredentialsDAO;
 import org.apache.airavata.credential.store.store.CredentialStoreException;
+import org.apache.airavata.credential.store.store.impl.db.CredentialsDAO;
 
 import java.io.Serializable;
 import java.sql.Connection;
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/SSHCredentialWriter.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/SSHCredentialWriter.java
index c77f32fc9f..522897e8fc 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/SSHCredentialWriter.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/SSHCredentialWriter.java
@@ -19,9 +19,6 @@
  */
 package org.apache.airavata.credential.store.store.impl;
 
-import java.sql.Connection;
-import java.sql.SQLException;
-
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ApplicationSettings;
 import org.apache.airavata.common.utils.DBUtil;
@@ -34,6 +31,9 @@ import org.apache.airavata.credential.store.store.impl.db.CredentialsDAO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.sql.Connection;
+import java.sql.SQLException;
+
 /**
  * Writes SSH credentials to database.
  */
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/db/ParentDAO.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/db/ParentDAO.java
index 9abfff757e..6fdba29ec8 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/db/ParentDAO.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/store/impl/db/ParentDAO.java
@@ -19,7 +19,6 @@
  */
 package org.apache.airavata.credential.store.store.impl.db;
 
-import org.apache.airavata.common.utils.DBUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/util/TokenGenerator.java b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/util/TokenGenerator.java
index ea32e48efc..dd1baacb23 100644
--- a/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/util/TokenGenerator.java
+++ b/modules/credential-store/credential-store-service/src/main/java/org/apache/airavata/credential/store/util/TokenGenerator.java
@@ -28,7 +28,6 @@ package org.apache.airavata.credential.store.util;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.sql.Timestamp;
 import java.util.UUID;
 
 /**
diff --git a/modules/credential-store/credential-store-service/src/test/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifierTest.java b/modules/credential-store/credential-store-service/src/test/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifierTest.java
index d466a42907..a1dae92d56 100644
--- a/modules/credential-store/credential-store-service/src/test/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifierTest.java
+++ b/modules/credential-store/credential-store-service/src/test/java/org/apache/airavata/credential/store/notifier/impl/EmailNotifierTest.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.credential.store.notifier.impl;
 
 import junit.framework.TestCase;
-import org.apache.airavata.credential.store.notifier.NotificationMessage;
 
 /**
  * User: AmilaJ (amilaj@apache.org)
diff --git a/modules/credential-store/credential-store-stubs/pom.xml b/modules/credential-store/credential-store-stubs/pom.xml
index 1be3effe02..4f3f7e27de 100644
--- a/modules/credential-store/credential-store-stubs/pom.xml
+++ b/modules/credential-store/credential-store-stubs/pom.xml
@@ -40,57 +40,19 @@
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-base-api</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-commons</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-codec</groupId>
-            <artifactId>commons-codec</artifactId>
-            <version>${commons-codec.version}</version>
         </dependency>
     </dependencies>
 
-    <properties>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-    </properties>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>com.google.code.maven-replacer-plugin</groupId>
-                <artifactId>replacer</artifactId>
-                <version>${maven.replacer.plugin.version}</version>
-                <executions>
-                    <execution>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>replace</goal>
-                        </goals>
-                    </execution>
-                </executions>
-                <configuration>
-                    <includes>
-                        <include>${basedir}/src/main/java/org/apache/airavata/**/*.java</include>
-                    </includes>
-                    <token>, date = ".*"</token>
-                    <value> </value>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
 </project>
diff --git a/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/CredentialStoreClientFactory.java b/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/CredentialStoreClientFactory.java
index 7db65db846..bfe3861f02 100644
--- a/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/CredentialStoreClientFactory.java
+++ b/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/CredentialStoreClientFactory.java
@@ -21,8 +21,6 @@ package org.apache.airavata.credential.store.client;
 
 import org.apache.airavata.credential.store.cpi.CredentialStoreService;
 import org.apache.airavata.credential.store.exception.CredentialStoreException;
-import org.apache.airavata.model.credential.store.SSHCredential;
-import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.protocol.TProtocol;
 import org.apache.thrift.transport.TSocket;
diff --git a/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/TestSSLClient.java b/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/TestSSLClient.java
index d1134e59dd..ae74f7471e 100644
--- a/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/TestSSLClient.java
+++ b/modules/credential-store/credential-store-stubs/src/main/java/org/apache/airavata/credential/store/client/TestSSLClient.java
@@ -25,7 +25,6 @@ import org.apache.airavata.credential.store.cpi.CredentialStoreService;
 import org.apache.airavata.model.credential.store.CertificateCredential;
 import org.apache.airavata.model.credential.store.CommunityUser;
 import org.apache.airavata.model.credential.store.SSHCredential;
-import org.apache.commons.codec.binary.Base64;
 import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.protocol.TProtocol;
@@ -42,6 +41,7 @@ import java.security.KeyStoreException;
 import java.security.NoSuchAlgorithmException;
 import java.security.cert.CertificateException;
 import java.security.cert.X509Certificate;
+import java.util.Base64;
 
 public class TestSSLClient {
     private void invoke() {
@@ -102,11 +102,10 @@ public class TestSSLClient {
             char[] password = "airavata".toCharArray();
             ks.load(fis,password);
             x509Certificates[0] = (X509Certificate) ks.getCertificate("airavata");
-            Base64 encoder = new Base64(64);
             String cert_begin = "-----BEGIN CERTIFICATE-----\n";
             String end_cert = "-----END CERTIFICATE-----";
             byte[] derCert = x509Certificates[0].getEncoded();
-            String pemCertPre = new String(encoder.encode(derCert));
+            String pemCertPre = Base64.getEncoder().encodeToString(derCert);
             String pemCert = cert_begin + pemCertPre + end_cert;
             certificateCredential.setX509Cert(pemCert);
             String token = client.addCertificateCredential(certificateCredential);
diff --git a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/DBEventManagerRunner.java b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/DBEventManagerRunner.java
index 450b21fc4f..a729904fcf 100644
--- a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/DBEventManagerRunner.java
+++ b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/DBEventManagerRunner.java
@@ -22,15 +22,15 @@ package org.apache.airavata.db.event.manager;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.utils.IServer;
 import org.apache.airavata.db.event.manager.messaging.DBEventManagerMessagingFactory;
-import org.apache.log4j.LogManager;
-import org.apache.log4j.Logger;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Created by Ajinkya on 3/29/17.
  */
 public class DBEventManagerRunner implements IServer {
 
-    private static final Logger log = LogManager.getLogger(DBEventManagerRunner.class);
+    private static final Logger log = LoggerFactory.getLogger(DBEventManagerRunner.class);
 
     private static final String SERVER_NAME = "DB Event Manager";
     private static final String SERVER_VERSION = "1.0";
diff --git a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/DBEventManagerMessagingFactory.java b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/DBEventManagerMessagingFactory.java
index 285d8274eb..8175b7982e 100644
--- a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/DBEventManagerMessagingFactory.java
+++ b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/DBEventManagerMessagingFactory.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.db.event.manager.messaging;
 
 import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.common.utils.DBEventManagerConstants;
 import org.apache.airavata.common.utils.DBEventService;
 import org.apache.airavata.db.event.manager.messaging.impl.DBEventMessageHandler;
 import org.apache.airavata.messaging.core.MessagingFactory;
diff --git a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/impl/DBEventMessageHandler.java b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/impl/DBEventMessageHandler.java
index ca8fa4b0ee..c811cf0d1e 100644
--- a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/impl/DBEventMessageHandler.java
+++ b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/messaging/impl/DBEventMessageHandler.java
@@ -28,19 +28,15 @@ import org.apache.airavata.db.event.manager.messaging.DBEventManagerMessagingFac
 import org.apache.airavata.db.event.manager.utils.DbEventManagerZkUtils;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessageHandler;
-import org.apache.airavata.messaging.core.Publisher;
 import org.apache.airavata.model.dbevent.DBEventMessage;
 import org.apache.airavata.model.dbevent.DBEventMessageContext;
-import org.apache.airavata.model.dbevent.DBEventType;
 import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.curator.framework.CuratorFramework;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
-import java.util.Map;
 
 /**
  * Created by Ajinkya on 3/14/17.
diff --git a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/Constants.java b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/Constants.java
index 8fb552999b..10044b4b5d 100644
--- a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/Constants.java
+++ b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/Constants.java
@@ -19,10 +19,6 @@
  */
 package org.apache.airavata.db.event.manager.utils;
 
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
 /**
  * Created by Ajinkya on 3/1/17.
  */
diff --git a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/DbEventManagerZkUtils.java b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/DbEventManagerZkUtils.java
index af21d5c151..dc63a9d819 100644
--- a/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/DbEventManagerZkUtils.java
+++ b/modules/db-event-manager/src/main/java/org/apache/airavata/db/event/manager/utils/DbEventManagerZkUtils.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.db.event.manager.utils;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.DBEventManagerConstants;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.curator.RetryPolicy;
 import org.apache.curator.framework.CuratorFramework;
diff --git a/modules/distribution/pom.xml b/modules/distribution/pom.xml
index 5523c0c0ad..9b3c4ede3f 100644
--- a/modules/distribution/pom.xml
+++ b/modules/distribution/pom.xml
@@ -34,50 +34,10 @@
     <name>Airavata server distribution</name>
     <packaging>pom</packaging>
     <dependencies>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbytools</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>jcl-over-slf4j</artifactId>
         </dependency>
-        <dependency>
-            <groupId>net.java.dev.jets3t</groupId>
-            <artifactId>jets3t</artifactId>
-            <version>${jets3t.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-            <version>${commons-collections.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-lang</groupId>
-            <artifactId>commons-lang</artifactId>
-            <version>${commons-lang.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>commons-codec</groupId>
-            <artifactId>commons-codec</artifactId>
-            <version>${commons-codec.version}</version>
-        </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-standalone-server</artifactId>
@@ -166,12 +126,10 @@
         <dependency>
             <groupId>org.json</groupId>
             <artifactId>json</artifactId>
-            <version>${json.version}</version>
         </dependency>
         <dependency>
             <groupId>commons-io</groupId>
             <artifactId>commons-io</artifactId>
-            <version>${commons-io.version}</version>
         </dependency>
         <!-- end Cloud module -->
         <dependency>
@@ -196,7 +154,6 @@
         <dependency>
             <groupId>org.hibernate.orm</groupId>
             <artifactId>hibernate-core</artifactId>
-            <version>${hibernate-core.version}</version>
         </dependency>
 
         <dependency>
@@ -223,12 +180,10 @@
         <dependency>
             <groupId>com.fasterxml.jackson.module</groupId>
             <artifactId>jackson-module-jaxb-annotations</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.jaxrs</groupId>
             <artifactId>jackson-jaxrs-json-provider</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <dependency>
             <groupId>xerces</groupId>
@@ -260,7 +215,7 @@
         <dependency>
             <groupId>commons-configuration</groupId>
             <artifactId>commons-configuration</artifactId>
-            <version>${commons-configuration.version}</version>
+            <version>1.10</version>
         </dependency>
         <dependency>
             <groupId>net.sf.jopt-simple</groupId>
@@ -280,23 +235,19 @@
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <!-- Keycloak admin client requires Jackson 2.8.6 -->
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-databind</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-annotations</artifactId>
-            <version>${fasterxml.jackson.version}</version>
         </dependency>
         <!-- zookeeper dependencies -->
 
@@ -327,21 +278,14 @@
                 </exclusion>
             </exclusions>
         </dependency>
-        <dependency>
-            <groupId>commons-cli</groupId>
-            <artifactId>commons-cli</artifactId>
-            <version>${commons-cli.version}</version>
-        </dependency>
-
         <dependency>
             <groupId>com.rabbitmq</groupId>
             <artifactId>amqp-client</artifactId>
-            <version>${amqp.client.version}</version>
+            <version>${amqp-client.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.curator</groupId>
             <artifactId>curator-framework</artifactId>
-            <version>${curator.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.slf4j</groupId>
@@ -361,12 +305,12 @@
             </exclusions>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy</artifactId>
             <version>${groovy.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy-templates</artifactId>
             <version>${groovy.version}</version>
         </dependency>
@@ -376,12 +320,6 @@
             <artifactId>profile-service-server</artifactId>
             <version>${project.version}</version>
         </dependency>
-        <!-- Needed for IamAdminServices Keycloak client -->
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>${httpclient.version}</version>
-        </dependency>
         <!-- ======================== Sample =================== -->
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -418,14 +356,12 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mapper-asl</artifactId>
-            <version>${codehaus.jackson.version}</version>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-core-asl</artifactId>
-            <version>${codehaus.jackson.version}</version>
+            <groupId>commons-cli</groupId>
+            <artifactId>commons-cli</artifactId>
         </dependency>
     </dependencies>
 
@@ -589,7 +525,9 @@
                 </executions>
             </plugin>
             <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-resources-plugin</artifactId>
+                <version>3.3.1</version>
                 <executions>
                     <execution>
                         <id>copy-api-server-resources</id>
diff --git a/modules/distribution/src/main/assembly/api-server-bin-assembly.xml b/modules/distribution/src/main/assembly/api-server-bin-assembly.xml
index 16480d4656..41075e685f 100644
--- a/modules/distribution/src/main/assembly/api-server-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/api-server-bin-assembly.xml
@@ -121,7 +121,7 @@
                 <include>airavata-server.properties</include>
                 <include>zoo.cfg</include>
                 <include>registry.properties</include>
-                <include>log4j2.xml</include>
+                <include>logback.xml</include>
                 <include>host.xml</include>
                 <include>persistence.xml</include>
                 <include>provenance.sql</include>
@@ -155,21 +155,63 @@
             <outputDirectory>lib</outputDirectory>
             <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
             <includes>
-                <include>org.apache.derby:derby:jar</include>
-                <include>org.apache.derby:derbytools:jar</include>
-                <include>org.apache.derby:derbynet:jar</include>
-                <include>org.apache.derby:derbyclient:jar</include>
+                <include>org.mariadb.jdbc:mariadb-java-client:jar</include>
             </includes>
         </dependencySet>
         <dependencySet>
             <useProjectArtifact>false</useProjectArtifact>
             <outputDirectory>lib</outputDirectory>
             <includes>
-                <include>*:*:jar</include>
+            
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
+                <include>org.apache.airavata:airavata-api-server:jar</include>
+                <include>org.apache.airavata:airavata-base-api:jar</include>
+                <include>org.apache.airavata:airavata-commons:jar</include>
+                <include>org.apache.airavata:airavata-credential-store:jar</include>
+                <include>org.apache.airavata:airavata-credential-store-stubs:jar</include>
+                <include>org.apache.airavata:airavata-data-models:jar</include>
+                <include>org.apache.airavata:airavata-messaging-core:jar</include>
+                <include>org.apache.airavata:airavata-orchestrator-client:jar</include>
+                <include>org.apache.airavata:airavata-orchestrator-core:jar</include>
+                <include>org.apache.airavata:airavata-orchestrator-service:jar</include>
+                <include>org.apache.airavata:airavata-registry-core:jar</include>
+                <include>org.apache.airavata:airavata-registry-cpi:jar</include>
+                <include>org.apache.airavata:airavata-security:jar</include>
+                <include>org.apache.airavata:airavata-server-configuration:jar</include>
+                <include>org.apache.airavata:airavata-sharing-registry-server:jar</include>
+                <include>org.apache.airavata:airavata-sharing-registry-stubs:jar</include>
+                <include>org.apache.airavata:airavata-standalone-server:jar</include>
+                <include>org.apache.airavata:db-event-manager:jar</include>
+                <include>org.apache.airavata:platform-monitoring:jar</include>
+                <include>org.apache.airavata:registry-api-service:jar</include>
+                <include>org.apache.airavata:registry-api-stubs:jar</include>
+                <include>io.prometheus:simpleclient:jar</include>
+                <include>io.prometheus:simpleclient_hotspot:jar</include>
+                <include>io.prometheus:simpleclient_httpserver:jar</include>
+                <include>io.prometheus:simpleclient_pushgateway:jar</include>
+                <include>com.rabbitmq:amqp-client:jar</include>
+                <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
+                <include>commons-cli:commons-cli:jar</include>
+                <include>org.apache.commons:commons-dbcp2:jar</include>
+                <include>commons-io:commons-io:jar</include>
+                <include>org.apache.commons:commons-lang3:jar</include>
+                <include>commons-logging:commons-logging:jar</include>
+                <include>org.apache.curator:curator-client:jar</include>
+                <include>org.apache.curator:curator-framework:jar</include>
+                <include>com.google.code.gson:gson:jar</include>
+                <include>com.google.guava:guava:jar</include>
+                <include>org.apache.helix:helix-core:jar</include>
+                <include>org.apache.airavata:helix-spectator:jar</include>
+                <include>com.fasterxml.jackson.core:jackson-annotations:jar</include>
+                <include>com.fasterxml.jackson.core:jackson-core:jar</include>
+                <include>com.fasterxml.jackson.core:jackson-databind:jar</include>
+                <include>org.apache.kafka:kafka-clients:jar</include>
+                <include>org.apache.thrift:libthrift:jar</include>
+                <include>org.apache.commons:commons-pool2:jar</include>
+                <include>org.slf4j:slf4j-api:jar</include>
+                <include>ch.qos.logback:logback-classic:jar</include>
+                <include>ch.qos.logback:logback-core:jar</include>
             </includes>
-            <excludes>
-                <exclude>com.mysql:mysql-connector-j</exclude>
-            </excludes>
         </dependencySet>
 
     </dependencySets>
diff --git a/modules/distribution/src/main/assembly/api-server-src-assembly.xml b/modules/distribution/src/main/assembly/api-server-src-assembly.xml
deleted file mode 100644
index ba27b2f102..0000000000
--- a/modules/distribution/src/main/assembly/api-server-src-assembly.xml
+++ /dev/null
@@ -1,78 +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.
-
--->
-<assembly>
-    <id>src</id>
-    <includeBaseDirectory>true</includeBaseDirectory> 
-    <baseDirectory>${api.server.dist.name}</baseDirectory>
-    <formats>
-        <format>tar.gz</format>  
-        <format>zip</format>
-    </formats>
-
-    <fileSets>
-        <fileSet>
-            <directory>../..</directory>
-            <outputDirectory></outputDirectory>
-            <includes>
-                <include>NOTICE</include>
-                <include>LICENSE</include>
-                <include>README</include>
-                <include>RELEASE_NOTES</include>
-		<include>DISCLAIMER</include>
-		<include>INSTALL</include>
-            </includes>
-            <filtered>true</filtered>
-        </fileSet>
-        <fileSet>
-            <directory>../..</directory>
-            <outputDirectory></outputDirectory>
-            <useDefaultExcludes>true</useDefaultExcludes>
-            <includes>
-                <include>pom.xml</include>
-                <include>modules/**</include>
-                <include>samples/**</include>
-            </includes>
-
-            <excludes>
-                                <!-- Exclusions from org.apache.resources:apache-source-release-assembly-descriptor.
-                     Note that they assume that all sources are located under an "src" directory. This
-                     is not the case for Axis2, which doesn't use the standard Maven 2 conventions.
-                     Thus we may still encounter some issues here. -->
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]</exclude>
-                <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties]</exclude>
-            </excludes>
-
-        </fileSet>
-          </fileSets>
-</assembly>
diff --git a/modules/distribution/src/main/assembly/controller-bin-assembly.xml b/modules/distribution/src/main/assembly/controller-bin-assembly.xml
index d266014715..d39d564ecd 100644
--- a/modules/distribution/src/main/assembly/controller-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/controller-bin-assembly.xml
@@ -74,103 +74,34 @@
             <useProjectArtifact>false</useProjectArtifact>
             <outputDirectory>lib</outputDirectory>
             <includes>
-                <include>javax.activation:activation:jar</include>
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
                 <include>org.apache.airavata:airavata-base-api:jar</include>
-                <include>org.apache.airavata:agent-api:jar</include>
                 <include>org.apache.airavata:airavata-commons:jar</include>
-                <include>org.apache.airavata:airavata-credential-store-stubs:jar</include>
                 <include>org.apache.airavata:airavata-data-models:jar</include>
                 <include>org.apache.airavata:airavata-messaging-core:jar</include>
                 <include>org.apache.airavata:airavata-registry-core:jar</include>
                 <include>org.apache.airavata:airavata-registry-cpi:jar</include>
                 <include>org.apache.airavata:airavata-server-configuration:jar</include>
                 <include>com.rabbitmq:amqp-client:jar</include>
-                <include>asm:asm:jar</include>
                 <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
                 <include>commons-cli:commons-cli:jar</include>
-                <include>commons-codec:commons-codec:jar</include>
-                <include>commons-collections:commons-collections:jar</include>
                 <include>org.apache.commons:commons-dbcp2:jar</include>
-                <include>org.apache.commons:commons-pool2:jar</include>
                 <include>commons-io:commons-io:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang3:jar</include>
                 <include>commons-logging:commons-logging:jar</include>
-                <include>org.apache.commons:commons-math:jar</include>
                 <include>org.apache.curator:curator-client:jar</include>
                 <include>org.apache.curator:curator-framework:jar</include>
-                <include>org.apache.derby:derby:jar</include>
-                <include>org.apache.derby:derbyclient:jar</include>
-                <include>org.apache.derby:derbynet:jar</include>
-                <include>org.apache.derby:derbytools:jar</include>
-                <include>net.i2p.crypto:eddsa:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jpa_2.0_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar</include>
-                <include>org.codehaus.groovy:groovy:jar</include>
-                <include>org.codehaus.groovy:groovy-templates:jar</include>
-                <include>org.codehaus.groovy:groovy-xml:jar</include>
                 <include>com.google.code.gson:gson:jar</include>
                 <include>com.google.guava:guava:jar</include>
-                <include>org.hamcrest:hamcrest-core:jar</include>
                 <include>org.apache.helix:helix-core:jar</include>
                 <include>org.apache.airavata:helix-spectator:jar</include>
-                <include>org.apache.httpcomponents:httpclient:jar</include>
-                <include>org.apache.httpcomponents:httpcore:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-annotations:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-core:jar</include>
-                <include>org.codehaus.jackson:jackson-core-asl:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-databind:jar</include>
-                <include>org.codehaus.jackson:jackson-mapper-asl:jar</include>
-                <include>jakarta-regexp:jakarta-regexp:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.apache.airavata:job-monitor-api:jar</include>
-                <include>junit:junit:jar</include>
-                <include>com.jcraft:jzlib:jar</include>
                 <include>org.apache.kafka:kafka-clients:jar</include>
                 <include>org.apache.thrift:libthrift:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>com.github.danielwegener:logback-kafka-appender:jar</include>
-                <include>net.logstash.logback:logstash-logback-encoder:jar</include>
-                <include>org.lz4:lz4-java:jar</include>
-                <include>org.eclipse.angus:jakarta.mail:jar</include>
-                <include>io.dropwizard.metrics:metrics-core:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
-                <include>org.apache.openjpa:openjpa:jar</include>
-                <include>org.apache.airavata:platform-monitor:jar</include>
-                <include>org.apache.airavata:registry-api-service:jar</include>
-                <include>org.apache.airavata:registry-api-stubs:jar</include>
-                <include>net.sourceforge.serp:serp:jar</include>
-                <include>org.slf4j:slf4j-api:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
-                <include>org.yaml:snakeyaml:jar</include>
-                <include>org.xerial.snappy:snappy-java:jar</include>
-                <include>org.apache.airavata:ssh-agent:jar</include>
-                <include>com.hierynomus:sshj:jar</include>
-                <include>org.apache.airavata:sshj-agent:jar</include>
-                <include>org.apache.airavata:task-api:jar</include>
-                <include>org.apache.airavata:task-core:jar</include>
-                <include>org.apache.tomcat.embed:tomcat-embed-core:jar</include>
-                <include>org.apache.airavata:workflow-impl:jar</include>
-                <include>org.ogce:xpp3:jar</include>
-                <include>org.ogce:xpp5:jar</include>
-                <include>com.101tec:zkclient:jar</include>
-                <include>org.apache.zookeeper:zookeeper:jar</include>
-                <include>org.apache.zookeeper:zookeeper-jute:jar</include>
-                <include>io.netty:netty-handler:jar</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
-                <include>org.json:json:jar</include>
-
-                <include>org.apache.airavata:platform-monitoring:jar</include>
-                <include>io.prometheus:simpleclient:jar</include>
-                <include>io.prometheus:simpleclient_httpserver:jar</include>
-                <include>io.prometheus:simpleclient_common:jar</include>
+                <include>org.apache.commons:commons-pool2:jar</include>
             </includes>
-            <excludes>
-                <exclude>com.mysql:mysql-connector-j:jar</exclude>
-            </excludes>
         </dependencySet>
     </dependencySets>
 
diff --git a/modules/distribution/src/main/assembly/email-monitor-bin-assembly.xml b/modules/distribution/src/main/assembly/email-monitor-bin-assembly.xml
index abc4584f15..24f3e4ac0a 100644
--- a/modules/distribution/src/main/assembly/email-monitor-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/email-monitor-bin-assembly.xml
@@ -87,12 +87,12 @@
                 <include>org.apache.airavata:registry-api-stubs:jar</include>
 
                 <include>org.apache.airavata:airavata-commons:jar</include>
-                <include>commons-cli:commons-cli</include>
+                <include>commons-cli:commons-cli:jar</include>
                 <include>org.apache.airavata:airavata-data-models:jar</include>
                 <include>org.apache.thrift:libthrift:jar</include>
 
                 <include>org.eclipse.angus:jakarta.mail:jar</include>
-                <include>javax.activation:activation:jar</include>
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
                 <include>org.yaml:snakeyaml:jar</include>
 
                 <!-- kafka specific jars -->
@@ -106,21 +106,16 @@
                 <include>com.google.guava:guava:jar</include>
                 <include>org.apache.zookeeper:zookeeper:jar</include>
                 <include>org.apache.zookeeper:zookeeper-jute:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
                 <include>io.netty:netty-handler:jar</include>
 
                 <include>com.google.code.gson:gson:jar</include>
 
                 <!-- logging jars -->
                 <include>org.slf4j:slf4j-api:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
+                <include>org.apache.logging.log4j:log4j-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-core:jar</include>
+                <include>org.apache.logging.log4j:log4j-1.2-api:jar</include>
                 <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
-                <include>com.github.danielwegener:logback-kafka-appender:jar</include>
-                <include>net.logstash.logback:logstash-logback-encoder:jar</include>
                 <include>org.apache.commons:commons-pool2:jar</include>
                 <include>org.json:json:jar</include>
 
@@ -128,7 +123,7 @@
                 <include>io.prometheus:simpleclient:jar</include>
                 <include>io.prometheus:simpleclient_httpserver:jar</include>
                 <include>io.prometheus:simpleclient_common:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang:jar</include>
             </includes>
         </dependencySet>
     </dependencySets>
diff --git a/modules/distribution/src/main/assembly/parser-wm-bin-assembly.xml b/modules/distribution/src/main/assembly/parser-wm-bin-assembly.xml
index aee16e42bf..90396d9179 100644
--- a/modules/distribution/src/main/assembly/parser-wm-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/parser-wm-bin-assembly.xml
@@ -74,102 +74,33 @@
             <useProjectArtifact>false</useProjectArtifact>
             <outputDirectory>lib</outputDirectory>
             <includes>
-                <include>javax.activation:activation:jar</include>
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
                 <include>org.apache.airavata:airavata-base-api:jar</include>
-                <include>org.apache.airavata:agent-api:jar</include>
                 <include>org.apache.airavata:airavata-commons:jar</include>
-                <include>org.apache.airavata:airavata-credential-store-stubs:jar</include>
                 <include>org.apache.airavata:airavata-data-models:jar</include>
                 <include>org.apache.airavata:airavata-messaging-core:jar</include>
                 <include>org.apache.airavata:airavata-registry-core:jar</include>
                 <include>org.apache.airavata:airavata-registry-cpi:jar</include>
                 <include>org.apache.airavata:airavata-server-configuration:jar</include>
                 <include>com.rabbitmq:amqp-client:jar</include>
-                <include>asm:asm:jar</include>
                 <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
                 <include>commons-cli:commons-cli:jar</include>
-                <include>commons-codec:commons-codec:jar</include>
-                <include>commons-collections:commons-collections:jar</include>
                 <include>org.apache.commons:commons-dbcp2:jar</include>
-                <include>org.apache.commons:commons-pool2:jar</include>
                 <include>commons-io:commons-io:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang3:jar</include>
                 <include>commons-logging:commons-logging:jar</include>
-                <include>org.apache.commons:commons-math:jar</include>
                 <include>org.apache.curator:curator-client:jar</include>
                 <include>org.apache.curator:curator-framework:jar</include>
-                <include>org.apache.derby:derby:jar</include>
-                <include>org.apache.derby:derbyclient:jar</include>
-                <include>org.apache.derby:derbynet:jar</include>
-                <include>org.apache.derby:derbytools:jar</include>
-                <include>net.i2p.crypto:eddsa:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jpa_2.0_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar</include>
-                <include>org.codehaus.groovy:groovy:jar</include>
-                <include>org.codehaus.groovy:groovy-templates:jar</include>
-                <include>org.codehaus.groovy:groovy-xml:jar</include>
                 <include>com.google.code.gson:gson:jar</include>
                 <include>com.google.guava:guava:jar</include>
-                <include>org.hamcrest:hamcrest-core:jar</include>
                 <include>org.apache.helix:helix-core:jar</include>
                 <include>org.apache.airavata:helix-spectator:jar</include>
-                <include>org.apache.httpcomponents:httpclient:jar</include>
-                <include>org.apache.httpcomponents:httpcore:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-annotations:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-core:jar</include>
-                <include>org.codehaus.jackson:jackson-core-asl:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-databind:jar</include>
-                <include>org.codehaus.jackson:jackson-mapper-asl:jar</include>
-                <include>jakarta-regexp:jakarta-regexp:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.apache.airavata:job-monitor-api:jar</include>
-                <include>junit:junit:jar</include>
-                <include>com.jcraft:jzlib:jar</include>
                 <include>org.apache.kafka:kafka-clients:jar</include>
                 <include>org.apache.thrift:libthrift:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
-                <include>com.github.danielwegener:logback-kafka-appender:jar</include>
-                <include>net.logstash.logback:logstash-logback-encoder:jar</include>
-                <include>org.lz4:lz4-java:jar</include>
-                <include>org.eclipse.angus:jakarta.mail:jar</include>
-                <include>io.dropwizard.metrics:metrics-core:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
-                <include>org.apache.openjpa:openjpa:jar</include>
-                <include>org.apache.airavata:platform-monitor:jar</include>
-                <include>org.apache.airavata:registry-api-service:jar</include>
-                <include>org.apache.airavata:registry-api-stubs:jar</include>
-                <include>net.sourceforge.serp:serp:jar</include>
-                <include>org.slf4j:slf4j-api:jar</include>
-                <include>org.yaml:snakeyaml:jar</include>
-                <include>org.xerial.snappy:snappy-java:jar</include>
-                <include>org.apache.airavata:ssh-agent:jar</include>
-                <include>com.hierynomus:sshj:jar</include>
-                <include>org.apache.airavata:sshj-agent:jar</include>
-                <include>org.apache.airavata:task-api:jar</include>
-                <include>org.apache.airavata:task-core:jar</include>
-                <include>org.apache.tomcat.embed:tomcat-embed-core:jar</include>
-                <include>org.apache.airavata:workflow-impl:jar</include>
-                <include>org.ogce:xpp3:jar</include>
-                <include>org.ogce:xpp5:jar</include>
-                <include>com.101tec:zkclient:jar</include>
-                <include>org.apache.zookeeper:zookeeper:jar</include>
-                <include>com.github.docker-java:docker-java:jar</include>
-                <include>org.json:json:jar</include>
-
-                <include>org.apache.airavata:platform-monitoring:jar</include>
-                <include>io.prometheus:simpleclient:jar</include>
-                <include>io.prometheus:simpleclient_httpserver:jar</include>
-                <include>io.prometheus:simpleclient_common:jar</include>
             </includes>
-            <excludes>
-                <exclude>com.mysql:mysql-connector-j:jar</exclude>
-            </excludes>
         </dependencySet>
     </dependencySets>
 </assembly>
diff --git a/modules/distribution/src/main/assembly/participant-bin-assembly.xml b/modules/distribution/src/main/assembly/participant-bin-assembly.xml
index 0c07619ab7..6f397304e1 100644
--- a/modules/distribution/src/main/assembly/participant-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/participant-bin-assembly.xml
@@ -75,7 +75,7 @@
             <useProjectArtifact>false</useProjectArtifact>
             <outputDirectory>lib</outputDirectory>
             <includes>
-                <include>javax.activation:activation:jar</include>
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
                 <include>org.apache.airavata:airavata-base-api:jar</include>
                 <include>org.apache.airavata:agent-api:jar</include>
                 <include>org.apache.airavata:airavata-commons:jar</include>
@@ -87,66 +87,33 @@
                 <include>org.apache.airavata:airavata-server-configuration:jar</include>
                 <include>org.apache.airavata:profile-service-stubs:jar</include>
                 <include>com.rabbitmq:amqp-client:jar</include>
-                <include>asm:asm:jar</include>
                 <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
                 <include>commons-cli:commons-cli:jar</include>
-                <include>commons-codec:commons-codec:jar</include>
-                <include>commons-collections:commons-collections:jar</include>
                 <include>org.apache.commons:commons-dbcp2:jar</include>
                 <include>org.apache.commons:commons-pool2:jar</include>
                 <include>commons-io:commons-io:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang3:jar</include>
                 <include>commons-logging:commons-logging:jar</include>
-                <include>org.apache.commons:commons-math:jar</include>
                 <include>org.apache.curator:curator-client:jar</include>
                 <include>org.apache.curator:curator-framework:jar</include>
                 <include>org.apache.derby:derby:jar</include>
                 <include>org.apache.derby:derbyclient:jar</include>
                 <include>org.apache.derby:derbynet:jar</include>
                 <include>org.apache.derby:derbytools:jar</include>
-                <include>net.i2p.crypto:eddsa:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jpa_2.0_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar</include>
-                <include>org.codehaus.groovy:groovy:jar</include>
-                <include>org.codehaus.groovy:groovy-templates:jar</include>
-                <include>org.codehaus.groovy:groovy-xml:jar</include>
                 <include>com.google.code.gson:gson:jar</include>
                 <include>com.google.guava:guava:jar</include>
-                <include>org.hamcrest:hamcrest-core:jar</include>
                 <include>org.apache.helix:helix-core:jar</include>
                 <include>org.apache.airavata:helix-spectator:jar</include>
-                <include>org.apache.httpcomponents:httpclient:jar</include>
-                <include>org.apache.httpcomponents:httpcore:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-annotations:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-core:jar</include>
-                <include>org.codehaus.jackson:jackson-core-asl:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-databind:jar</include>
-                <include>org.codehaus.jackson:jackson-mapper-asl:jar</include>
-                <include>jakarta-regexp:jakarta-regexp:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.apache.airavata:job-monitor-api:jar</include>
-                <include>junit:junit:jar</include>
-                <include>com.jcraft:jzlib:jar</include>
                 <include>org.apache.kafka:kafka-clients:jar</include>
                 <include>org.apache.thrift:libthrift:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
-                <include>com.github.danielwegener:logback-kafka-appender:jar</include>
-                <include>net.logstash.logback:logstash-logback-encoder:jar</include>
-                <include>org.lz4:lz4-java:jar</include>
-                <include>org.eclipse.angus:jakarta.mail:jar</include>
-                <include>io.dropwizard.metrics:metrics-core:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
-                <include>org.apache.openjpa:openjpa:jar</include>
-                <include>org.apache.airavata:platform-monitor:jar</include>
-                <include>org.apache.airavata:registry-api-service:jar</include>
-                <include>org.apache.airavata:registry-api-stubs:jar</include>
-                <include>net.sourceforge.serp:serp:jar</include>
                 <include>org.slf4j:slf4j-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-core:jar</include>
+                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
+                <include>org.apache.logging.log4j:log4j-1.2-api:jar</include>
                 <include>org.yaml:snakeyaml:jar</include>
                 <include>org.xerial.snappy:snappy-java:jar</include>
                 <include>org.apache.airavata:ssh-agent:jar</include>
@@ -156,21 +123,15 @@
                 <include>org.apache.airavata:task-core:jar</include>
                 <include>org.apache.tomcat.embed:tomcat-embed-core:jar</include>
                 <include>org.apache.airavata:workflow-impl:jar</include>
-                <include>org.ogce:xpp3:jar</include>
-                <include>org.ogce:xpp5:jar</include>
-                <include>com.101tec:zkclient:jar</include>
                 <include>org.apache.zookeeper:zookeeper:jar</include>
                 <include>org.apache.zookeeper:zookeeper-jute:jar</include>
                 <include>io.netty:netty-handler:jar</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
-                <include>org.apache.airavata:profile-service-stubs:jar</include>
                 <include>org.apache.airavata:services-security:jar</include>
                 <include>org.apache.airavata:airavata-sharing-registry-stubs:jar</include>
                 <include>org.apache.airavata:airavata-security:jar</include>
                 <include>org.apache.airavata:airavata-model-utils:jar</include>
 
                 <!-- Docker Java dependencies -->
-
                 <include>com.github.docker-java:docker-java:jar</include>
                 <include>com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar</include>
                 <include>com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:jar</include>
@@ -178,46 +139,20 @@
                 <include>org.glassfish.jersey.connectors:jersey-apache-connector:jar</include>
                 <include>org.glassfish.jersey.core:jersey-common:jar</include>
                 <include>jakarta.annotation:jakarta.annotation-api:jar</include>
-                <include>org.glassfish.jersey.bundles.repackaged:jersey-guava:jar</include>
                 <include>org.glassfish.hk2:osgi-resource-locator:jar</include>
-                <include>org.apache.httpcomponents:httpcore:jar</include>
                 <include>org.glassfish.jersey.core:jersey-client:jar</include>
                 <include>org.glassfish.hk2:hk2-api:jar</include>
                 <include>org.glassfish.hk2:hk2-utils:jar</include>
                 <include>org.glassfish.hk2.external:aopalliance-repackaged:jar</include>
-                <include>org.glassfish.hk2.external:javax.inject:jar</include>
                 <include>org.glassfish.hk2:hk2-locator:jar</include>
                 <include>org.javassist:javassist:jar</include>
                 <include>com.kohlschutter.junixsocket:junixsocket-common:jar</include>
                 <include>com.kohlschutter.junixsocket:junixsocket-native-common:jar</include>
-                <include>org.scijava:native-lib-loader:jar</include>
                 <include>org.apache.commons:commons-compress:jar</include>
-                <include>commons-io:commons-io:jar</include>
                 <include>org.slf4j:jcl-over-slf4j:jar</include>
-                <include>com.google.guava:guava:jar</include>
-                <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
                 <include>io.netty:netty-codec-http:jar</include>
                 <include>io.netty:netty-codec:jar</include>
-                <include>io.netty:netty-handler:jar</include>
-                <include>io.netty:netty-buffer:jar</include>
-                <include>io.netty:netty-transport:jar</include>
-                <include>io.netty:netty-resolver:jar</include>
-                <include>io.netty:netty-handler-proxy:jar</include>
-                <include>io.netty:netty-codec-socks:jar</include>
-                <include>io.netty:netty-transport-native-epoll:jar</include>
-                <include>io.netty:netty-common:jar</include>
-                <include>io.netty:netty-transport-native-unix-common:jar</include>
-                <include>io.netty:netty-transport-native-kqueue:jar</include>
-                <include>org.json:json:jar</include>
-
-                <include>org.apache.airavata:platform-monitoring:jar</include>
-                <include>io.prometheus:simpleclient:jar</include>
-                <include>io.prometheus:simpleclient_httpserver:jar</include>
-                <include>io.prometheus:simpleclient_common:jar</include>
             </includes>
-            <excludes>
-                <exclude>com.mysql:mysql-connector-j:jar</exclude>
-            </excludes>
         </dependencySet>
     </dependencySets>
 
diff --git a/modules/distribution/src/main/assembly/post-wm-bin-assembly.xml b/modules/distribution/src/main/assembly/post-wm-bin-assembly.xml
index 5a486eef9a..6a994c6e66 100644
--- a/modules/distribution/src/main/assembly/post-wm-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/post-wm-bin-assembly.xml
@@ -74,7 +74,7 @@
             <useProjectArtifact>false</useProjectArtifact>
             <outputDirectory>lib</outputDirectory>
             <includes>
-                <include>javax.activation:activation:jar</include>
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
                 <include>org.apache.airavata:airavata-base-api:jar</include>
                 <include>org.apache.airavata:agent-api:jar</include>
                 <include>org.apache.airavata:airavata-commons:jar</include>
@@ -85,72 +85,36 @@
                 <include>org.apache.airavata:airavata-registry-cpi:jar</include>
                 <include>org.apache.airavata:airavata-server-configuration:jar</include>
                 <include>com.rabbitmq:amqp-client:jar</include>
-                <include>asm:asm:jar</include>
                 <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
                 <include>commons-cli:commons-cli:jar</include>
-                <include>commons-codec:commons-codec:jar</include>
-                <include>commons-collections:commons-collections:jar</include>
                 <include>org.apache.commons:commons-dbcp2:jar</include>
                 <include>org.apache.commons:commons-pool2:jar</include>
                 <include>commons-io:commons-io:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang3:jar</include>
                 <include>commons-logging:commons-logging:jar</include>
-                <include>org.apache.commons:commons-math:jar</include>
                 <include>org.apache.curator:curator-client:jar</include>
                 <include>org.apache.curator:curator-framework:jar</include>
                 <include>org.apache.derby:derby:jar</include>
                 <include>org.apache.derby:derbyclient:jar</include>
                 <include>org.apache.derby:derbynet:jar</include>
                 <include>org.apache.derby:derbytools:jar</include>
-                <include>net.i2p.crypto:eddsa:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jpa_2.0_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar</include>
-                <include>org.codehaus.groovy:groovy:jar</include>
-                <include>org.codehaus.groovy:groovy-templates:jar</include>
-                <include>org.codehaus.groovy:groovy-xml:jar</include>
                 <include>com.google.code.gson:gson:jar</include>
                 <include>com.google.guava:guava:jar</include>
-                <include>org.hamcrest:hamcrest-core:jar</include>
                 <include>org.apache.helix:helix-core:jar</include>
                 <include>org.apache.airavata:helix-spectator:jar</include>
-                <include>org.apache.httpcomponents:httpclient:jar</include>
-                <include>org.apache.httpcomponents:httpcore:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-annotations:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-core:jar</include>
-                <include>org.codehaus.jackson:jackson-core-asl:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-databind:jar</include>
-                <include>org.codehaus.jackson:jackson-mapper-asl:jar</include>
-                <include>jakarta-regexp:jakarta-regexp:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.apache.airavata:job-monitor-api:jar</include>
-                <include>junit:junit:jar</include>
-                <include>com.jcraft:jzlib:jar</include>
                 <include>org.apache.kafka:kafka-clients:jar</include>
                 <include>org.apache.thrift:libthrift:jar</include>
                 <include>org.slf4j:slf4j-api:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
-                <include>com.github.danielwegener:logback-kafka-appender:jar</include>
-                <include>net.logstash.logback:logstash-logback-encoder:jar</include>
-                <include>org.lz4:lz4-java:jar</include>
-                <include>io.dropwizard.metrics:metrics-core:jar</include>
-                <include>org.eclipse.angus:jakarta.mail:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
-                <include>org.apache.openjpa:openjpa:jar</include>
-                <include>org.apache.airavata:platform-monitor:jar</include>
-                <include>org.apache.airavata:registry-api-service:jar</include>
-                <include>org.apache.airavata:registry-api-stubs:jar</include>
-                <include>net.sourceforge.serp:serp:jar</include>
+                <include>org.apache.logging.log4j:log4j-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-core:jar</include>
+                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
+                <include>org.apache.logging.log4j:log4j-1.2-api:jar</include>
                 <include>org.yaml:snakeyaml:jar</include>
                 <include>org.xerial.snappy:snappy-java:jar</include>
                 <include>org.apache.airavata:ssh-agent:jar</include>
-                <include>org.apache.airavata:profile-service-stubs:jar</include>
-                <include>org.apache.airavata:services-security:jar</include>
-                <include>org.apache.airavata:airavata-sharing-registry-stubs:jar</include>
                 <include>com.hierynomus:sshj:jar</include>
                 <include>org.apache.airavata:sshj-agent:jar</include>
                 <include>org.apache.airavata:task-api:jar</include>
@@ -158,16 +122,13 @@
                 <include>org.apache.airavata:profile-service-stubs:jar</include>
                 <include>org.apache.tomcat.embed:tomcat-embed-core:jar</include>
                 <include>org.apache.airavata:workflow-impl:jar</include>
-                <include>org.ogce:xpp3:jar</include>
-                <include>org.ogce:xpp5:jar</include>
-                <include>com.101tec:zkclient:jar</include>
                 <include>org.apache.zookeeper:zookeeper:jar</include>
                 <include>org.apache.zookeeper:zookeeper-jute:jar</include>
                 <include>io.netty:netty-handler:jar</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
+                <include>org.apache.airavata:services-security:jar</include>
+                <include>org.apache.airavata:airavata-sharing-registry-stubs:jar</include>
                 <include>org.apache.airavata:airavata-security:jar</include>
                 <include>org.json:json:jar</include>
-
                 <include>org.apache.airavata:platform-monitoring:jar</include>
                 <include>io.prometheus:simpleclient:jar</include>
                 <include>io.prometheus:simpleclient_httpserver:jar</include>
diff --git a/modules/distribution/src/main/assembly/pre-wm-bin-assembly.xml b/modules/distribution/src/main/assembly/pre-wm-bin-assembly.xml
index 8931e9c43e..6e74e7a1fc 100644
--- a/modules/distribution/src/main/assembly/pre-wm-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/pre-wm-bin-assembly.xml
@@ -74,7 +74,7 @@
             <useProjectArtifact>false</useProjectArtifact>
             <outputDirectory>lib</outputDirectory>
             <includes>
-                <include>javax.activation:activation:jar</include>
+                <include>jakarta.activation:jakarta.activation-api:jar</include>
                 <include>org.apache.airavata:airavata-base-api:jar</include>
                 <include>org.apache.airavata:agent-api:jar</include>
                 <include>org.apache.airavata:airavata-commons:jar</include>
@@ -85,66 +85,33 @@
                 <include>org.apache.airavata:airavata-registry-cpi:jar</include>
                 <include>org.apache.airavata:airavata-server-configuration:jar</include>
                 <include>com.rabbitmq:amqp-client:jar</include>
-                <include>asm:asm:jar</include>
                 <include>org.bouncycastle:bcpkix-jdk18on:jar</include>
                 <include>commons-cli:commons-cli:jar</include>
-                <include>commons-codec:commons-codec:jar</include>
-                <include>commons-collections:commons-collections:jar</include>
                 <include>org.apache.commons:commons-dbcp2:jar</include>
                 <include>org.apache.commons:commons-pool2:jar</include>
                 <include>commons-io:commons-io:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang3:jar</include>
                 <include>commons-logging:commons-logging:jar</include>
-                <include>org.apache.commons:commons-math:jar</include>
                 <include>org.apache.curator:curator-client:jar</include>
                 <include>org.apache.curator:curator-framework:jar</include>
                 <include>org.apache.derby:derby:jar</include>
                 <include>org.apache.derby:derbyclient:jar</include>
                 <include>org.apache.derby:derbynet:jar</include>
                 <include>org.apache.derby:derbytools:jar</include>
-                <include>net.i2p.crypto:eddsa:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jpa_2.0_spec:jar</include>
-                <include>org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar</include>
-                <include>org.codehaus.groovy:groovy:jar</include>
-                <include>org.codehaus.groovy:groovy-templates:jar</include>
-                <include>org.codehaus.groovy:groovy-xml:jar</include>
                 <include>com.google.code.gson:gson:jar</include>
                 <include>com.google.guava:guava:jar</include>
-                <include>org.hamcrest:hamcrest-core:jar</include>
                 <include>org.apache.helix:helix-core:jar</include>
                 <include>org.apache.airavata:helix-spectator:jar</include>
-                <include>org.apache.httpcomponents:httpclient:jar</include>
-                <include>org.apache.httpcomponents:httpcore:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-annotations:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-core:jar</include>
-                <include>org.codehaus.jackson:jackson-core-asl:jar</include>
                 <include>com.fasterxml.jackson.core:jackson-databind:jar</include>
-                <include>org.codehaus.jackson:jackson-mapper-asl:jar</include>
-                <include>jakarta-regexp:jakarta-regexp:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.apache.airavata:job-monitor-api:jar</include>
-                <include>junit:junit:jar</include>
-                <include>com.jcraft:jzlib:jar</include>
                 <include>org.apache.kafka:kafka-clients:jar</include>
                 <include>org.apache.thrift:libthrift:jar</include>
                 <include>org.slf4j:slf4j-api:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
-                <include>com.github.danielwegener:logback-kafka-appender:jar</include>
-                <include>net.logstash.logback:logstash-logback-encoder:jar</include>
-                <include>org.lz4:lz4-java:jar</include>
-                <include>org.eclipse.angus:jakarta.mail:jar</include>
-                <include>io.dropwizard.metrics:metrics-core:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
-                <include>org.apache.openjpa:openjpa:jar</include>
-                <include>org.apache.airavata:platform-monitor:jar</include>
-                <include>org.apache.airavata:registry-api-service:jar</include>
-                <include>org.apache.airavata:registry-api-stubs:jar</include>
-                <include>net.sourceforge.serp:serp:jar</include>
+                <include>org.apache.logging.log4j:log4j-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-core:jar</include>
+                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
+                <include>org.apache.logging.log4j:log4j-1.2-api:jar</include>
                 <include>org.yaml:snakeyaml:jar</include>
                 <include>org.xerial.snappy:snappy-java:jar</include>
                 <include>org.apache.airavata:ssh-agent:jar</include>
@@ -155,14 +122,9 @@
                 <include>org.apache.airavata:profile-service-stubs:jar</include>
                 <include>org.apache.tomcat.embed:tomcat-embed-core:jar</include>
                 <include>org.apache.airavata:workflow-impl:jar</include>
-                <include>org.ogce:xpp3:jar</include>
-                <include>org.ogce:xpp5:jar</include>
-                <include>com.101tec:zkclient:jar</include>
                 <include>org.apache.zookeeper:zookeeper:jar</include>
                 <include>org.apache.zookeeper:zookeeper-jute:jar</include>
                 <include>io.netty:netty-handler:jar</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
-                <include>org.apache.airavata:profile-service-stubs:jar</include>
                 <include>org.apache.airavata:services-security:jar</include>
                 <include>org.apache.airavata:airavata-sharing-registry-stubs:jar</include>
                 <include>org.apache.airavata:airavata-security:jar</include>
diff --git a/modules/distribution/src/main/assembly/realtime-monitor-bin-assembly.xml b/modules/distribution/src/main/assembly/realtime-monitor-bin-assembly.xml
index e347e9e832..4c5927f3a5 100644
--- a/modules/distribution/src/main/assembly/realtime-monitor-bin-assembly.xml
+++ b/modules/distribution/src/main/assembly/realtime-monitor-bin-assembly.xml
@@ -86,10 +86,12 @@
                 <include>org.apache.airavata:registry-api-stubs:jar</include>
 
                 <include>org.apache.airavata:airavata-commons:jar</include>
+                <include>commons-cli:commons-cli:jar</include>
                 <include>org.apache.airavata:airavata-data-models:jar</include>
-                <include>commons-cli:commons-cli</include>
                 <include>org.apache.thrift:libthrift:jar</include>
 
+                <include>org.yaml:snakeyaml:jar</include>
+
                 <!-- kafka specific jars -->
                 <include>org.apache.kafka:kafka-clients:jar</include>
                 <include>org.lz4:lz4-java:jar</include>
@@ -101,26 +103,24 @@
                 <include>com.google.guava:guava:jar</include>
                 <include>org.apache.zookeeper:zookeeper:jar</include>
                 <include>org.apache.zookeeper:zookeeper-jute:jar</include>
-                <include>jline:jline:jar</include>
-                <include>org.jboss.netty:netty:jar</include>
                 <include>io.netty:netty-handler:jar</include>
 
                 <include>com.google.code.gson:gson:jar</include>
 
                 <!-- logging jars -->
                 <include>org.slf4j:slf4j-api:jar</include>
-                <include>org.slf4j:log4j-over-slf4j:jar</include>
-                <include>org.apache.logging.log4j:log4j-api</include>
-                <include>org.apache.logging.log4j:log4j-core</include>
-                <include>org.apache.logging.log4j:log4j-slf4j2-impl</include>
-                <include>org.apache.logging.log4j:log4j-1.2-api</include>
-                <include>org.json:json:jar</include>
+                <include>org.apache.logging.log4j:log4j-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-core:jar</include>
+                <include>org.apache.logging.log4j:log4j-1.2-api:jar</include>
+                <include>org.apache.logging.log4j:log4j-slf4j2-impl:jar</include>
                 <include>org.apache.commons:commons-pool2:jar</include>
+                <include>org.json:json:jar</include>
+
                 <include>org.apache.airavata:platform-monitoring:jar</include>
                 <include>io.prometheus:simpleclient:jar</include>
                 <include>io.prometheus:simpleclient_httpserver:jar</include>
                 <include>io.prometheus:simpleclient_common:jar</include>
-                <include>commons-lang:commons-lang:jar</include>
+                <include>org.apache.commons:commons-lang:jar</include>
             </includes>
         </dependencySet>
     </dependencySets>
diff --git a/modules/file-server/pom.xml b/modules/file-server/pom.xml
index c17589d0dd..e89bdce503 100644
--- a/modules/file-server/pom.xml
+++ b/modules/file-server/pom.xml
@@ -49,16 +49,14 @@
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
-                <version>${spring.boot.version}</version>
+                <version>${spring.boot.maven.plugin.version}</version>
             </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
+                <version>${maven-compiler-plugin.version}</version>
                 <configuration>
-                    <compilerArgs>
-                        <arg>-parameters</arg>
-                    </compilerArgs>
+                    <release>17</release>
                 </configuration>
             </plugin>
             <plugin>
diff --git a/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerApplication.java b/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerApplication.java
index 42bf099184..0a24fe92eb 100644
--- a/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerApplication.java
+++ b/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerApplication.java
@@ -4,7 +4,6 @@ import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.groovy.template.GroovyTemplateAutoConfiguration;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
-import org.springframework.context.annotation.ComponentScan;
 
 @SpringBootApplication(scanBasePackages = "org.apache.airavata.file.server",
         exclude = {GroovyTemplateAutoConfiguration.class})
diff --git a/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerConfiguration.java b/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerConfiguration.java
index e4b6df32d8..4888c787db 100644
--- a/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerConfiguration.java
+++ b/modules/file-server/src/main/java/org/apache/airavata/file/server/FileServerConfiguration.java
@@ -1,6 +1,5 @@
 package org.apache.airavata.file.server;
 
-import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftClientPool;
 import org.apache.airavata.helix.core.support.adaptor.AdaptorSupportImpl;
 import org.apache.airavata.helix.task.api.support.AdaptorSupport;
diff --git a/modules/file-server/src/main/java/org/apache/airavata/file/server/controller/FileController.java b/modules/file-server/src/main/java/org/apache/airavata/file/server/controller/FileController.java
index 973242f39d..dbccf4aef8 100644
--- a/modules/file-server/src/main/java/org/apache/airavata/file/server/controller/FileController.java
+++ b/modules/file-server/src/main/java/org/apache/airavata/file/server/controller/FileController.java
@@ -1,6 +1,5 @@
 package org.apache.airavata.file.server.controller;
 
-import org.apache.airavata.file.server.model.AiravataDirectory;
 import org.apache.airavata.file.server.model.FileUploadResponse;
 import org.apache.airavata.file.server.service.AirvataFileService;
 import org.slf4j.Logger;
diff --git a/modules/ide-integration/pom.xml b/modules/ide-integration/pom.xml
index 67b5c10d39..9a8eac19dc 100644
--- a/modules/ide-integration/pom.xml
+++ b/modules/ide-integration/pom.xml
@@ -73,6 +73,10 @@
             <artifactId>email-monitor</artifactId>
             <version>${project.version}</version>
         </dependency>
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+        </dependency>
     </dependencies>
 
     <build>
diff --git a/modules/ide-integration/src/main/containers/pga/airavata-php-gateway/app/tests/selenium/pom.xml b/modules/ide-integration/src/main/containers/pga/airavata-php-gateway/app/tests/selenium/pom.xml
index 09c5166017..8c1f827a3d 100755
--- a/modules/ide-integration/src/main/containers/pga/airavata-php-gateway/app/tests/selenium/pom.xml
+++ b/modules/ide-integration/src/main/containers/pga/airavata-php-gateway/app/tests/selenium/pom.xml
@@ -13,7 +13,7 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-compiler-plugin</artifactId>
-        <version>${maven.compiler.plugin.version}</version>
+        <version>${maven-compiler-plugin.version}</version>
         <configuration>
             <release>17</release>
         </configuration>
@@ -83,21 +83,9 @@
           <artifactId>selenium-firefox-driver</artifactId>
           <version>${selenium-firefox-driver.version}</version>
       </dependency>
-
-      <dependency>
-          <groupId>org.apache.httpcomponents</groupId>
-          <artifactId>httpclient</artifactId>
-          <version>${httpclient.version}</version>
-      </dependency>
-      <dependency>
-          <groupId>org.apache.httpcomponents</groupId>
-          <artifactId>httpcore</artifactId>
-          <version>${httpclient.version}</version>
-      </dependency>
       <dependency>
           <groupId>commons-io</groupId>
           <artifactId>commons-io</artifactId>
-          <version>${commons-io.version}</version>
       </dependency>
       <dependency>
           <groupId>org.apache.commons</groupId>
@@ -105,9 +93,9 @@
           <version>${commons-exec.version}</version>
       </dependency>
       <dependency>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-          <version>${commons-logging.version}</version>
+          <groupId>org.slf4j</groupId>
+          <artifactId>slf4j-api</artifactId>
+          <version>${org.slf4j.version}</version>
       </dependency>
       <dependency>
           <groupId>org.seleniumhq.selenium</groupId>
@@ -123,7 +111,6 @@
       <dependency>
           <groupId>junit</groupId>
           <artifactId>junit</artifactId>
-          <version>${junit.version}</version>
           <scope>test</scope>
       </dependency>
   </dependencies>
diff --git a/modules/ide-integration/src/main/resources/airavata-server.properties b/modules/ide-integration/src/main/resources/airavata-server.properties
index 560a522b55..67659935dd 100644
--- a/modules/ide-integration/src/main/resources/airavata-server.properties
+++ b/modules/ide-integration/src/main/resources/airavata-server.properties
@@ -274,9 +274,8 @@ email.based.monitor.store.protocol=imaps
 email.based.monitor.folder.name=INBOX
 email.expiration.minutes=60
 email.based.monitoring.period=10000
-
-email.based.monitor.address=airavatatest123@gmail.com
-email.based.monitor.password=airavatatest12345678
+email.based.monitor.address=CHANGE_ME
+email.based.monitor.password=CHANGE_ME
 
 ###########################################################################
 # ThriftClientPool Configuration
diff --git a/modules/job-monitor/email-monitor/pom.xml b/modules/job-monitor/email-monitor/pom.xml
index 2d7f8eba98..21837db680 100644
--- a/modules/job-monitor/email-monitor/pom.xml
+++ b/modules/job-monitor/email-monitor/pom.xml
@@ -40,6 +40,7 @@
         <dependency>
             <groupId>org.yaml</groupId>
             <artifactId>snakeyaml</artifactId>
+            <version>2.0</version>
         </dependency>
         <dependency>
             <groupId>org.eclipse.angus</groupId>
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/EmailBasedMonitor.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/EmailBasedMonitor.java
index b061c7268f..b7d3c00f6c 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/EmailBasedMonitor.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/EmailBasedMonitor.java
@@ -19,29 +19,22 @@
  */
 package org.apache.airavata.monitor.email;
 
+import jakarta.mail.*;
+import jakarta.mail.search.FlagTerm;
+import jakarta.mail.search.SearchTerm;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.utils.ApplicationSettings;
 import org.apache.airavata.common.utils.ServerSettings;
+import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
 import org.apache.airavata.monitor.AbstractMonitor;
 import org.apache.airavata.monitor.JobStatusResult;
-import org.apache.airavata.monitor.kafka.MessageProducer;
 import org.apache.airavata.monitor.email.parser.EmailParser;
 import org.apache.airavata.monitor.email.parser.ResourceConfig;
-import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
 import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.yaml.snakeyaml.Yaml;
 
-import jakarta.mail.Address;
-import jakarta.mail.Flags;
-import jakarta.mail.Folder;
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
-import jakarta.mail.Session;
-import jakarta.mail.Store;
-import jakarta.mail.search.FlagTerm;
-import jakarta.mail.search.SearchTerm;
 import java.io.InputStream;
 import java.util.*;
 
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/AiravataCustomMailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/AiravataCustomMailParser.java
index 20c561207e..aa51641999 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/AiravataCustomMailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/AiravataCustomMailParser.java
@@ -19,6 +19,8 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.monitor.JobStatusResult;
@@ -26,8 +28,6 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/EmailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/EmailParser.java
index 2996dd50cd..5baa877279 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/EmailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/EmailParser.java
@@ -19,13 +19,12 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.monitor.JobStatusResult;
 import org.apache.airavata.registry.api.RegistryService;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
-
 public interface EmailParser {
     static final String STATUS = "status";
     static final String JOBID = "jobId";
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/HTCondorEmailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/HTCondorEmailParser.java
index 5e9d5d15ee..11a66074a7 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/HTCondorEmailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/HTCondorEmailParser.java
@@ -19,6 +19,8 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.model.job.JobModel;
 import org.apache.airavata.model.status.JobState;
@@ -27,9 +29,6 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
-import java.io.IOException;
 import java.util.List;
 import java.util.Optional;
 import java.util.regex.Matcher;
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/LSFEmailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/LSFEmailParser.java
index be61fad37e..c1214b1003 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/LSFEmailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/LSFEmailParser.java
@@ -19,6 +19,8 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.monitor.JobStatusResult;
@@ -26,8 +28,6 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
 import java.io.IOException;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/PBSEmailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/PBSEmailParser.java
index 2da293d827..6b44cce4fa 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/PBSEmailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/PBSEmailParser.java
@@ -19,6 +19,8 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.monitor.JobStatusResult;
@@ -26,9 +28,6 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
-import java.io.IOException;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/SLURMEmailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/SLURMEmailParser.java
index 0e8b4b3386..bcb2773dbb 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/SLURMEmailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/SLURMEmailParser.java
@@ -19,6 +19,8 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.monitor.JobStatusResult;
@@ -26,8 +28,6 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
diff --git a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/UGEEmailParser.java b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/UGEEmailParser.java
index 728182d128..df0642bee0 100644
--- a/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/UGEEmailParser.java
+++ b/modules/job-monitor/email-monitor/src/main/java/org/apache/airavata/monitor/email/parser/UGEEmailParser.java
@@ -19,6 +19,8 @@
  */
 package org.apache.airavata.monitor.email.parser;
 
+import jakarta.mail.Message;
+import jakarta.mail.MessagingException;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.model.status.JobState;
 import org.apache.airavata.monitor.JobStatusResult;
@@ -26,8 +28,6 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import jakarta.mail.Message;
-import jakarta.mail.MessagingException;
 import java.io.IOException;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
diff --git a/modules/job-monitor/job-monitor-api/pom.xml b/modules/job-monitor/job-monitor-api/pom.xml
index 28b880aa35..18c29e1fd1 100644
--- a/modules/job-monitor/job-monitor-api/pom.xml
+++ b/modules/job-monitor/job-monitor-api/pom.xml
@@ -34,7 +34,6 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-commons</artifactId>
-            <version>0.21-SNAPSHOT</version>
         </dependency>
         <dependency>
             <groupId>org.apache.kafka</groupId>
diff --git a/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/JobStateValidator.java b/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/JobStateValidator.java
index 57bdb5237d..bd6973208a 100644
--- a/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/JobStateValidator.java
+++ b/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/JobStateValidator.java
@@ -21,15 +21,7 @@ package org.apache.airavata.monitor;
 
 import org.apache.airavata.model.status.JobState;
 
-import static org.apache.airavata.model.status.JobState.SUBMITTED;
-import static org.apache.airavata.model.status.JobState.QUEUED;
-import static org.apache.airavata.model.status.JobState.ACTIVE;
-import static org.apache.airavata.model.status.JobState.COMPLETE;
-import static org.apache.airavata.model.status.JobState.CANCELED;
-import static org.apache.airavata.model.status.JobState.FAILED;
-import static org.apache.airavata.model.status.JobState.NON_CRITICAL_FAIL;
-import static org.apache.airavata.model.status.JobState.SUSPENDED;
-import static org.apache.airavata.model.status.JobState.UNKNOWN;
+import static org.apache.airavata.model.status.JobState.*;
 
 public class JobStateValidator {
 
diff --git a/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/kafka/JobStatusResultDeserializer.java b/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/kafka/JobStatusResultDeserializer.java
index 8b7cfe77da..28d7d1be8d 100644
--- a/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/kafka/JobStatusResultDeserializer.java
+++ b/modules/job-monitor/job-monitor-api/src/main/java/org/apache/airavata/monitor/kafka/JobStatusResultDeserializer.java
@@ -19,8 +19,8 @@
  */
 package org.apache.airavata.monitor.kafka;
 
-import org.apache.airavata.monitor.JobStatusResult;
 import org.apache.airavata.model.status.JobState;
+import org.apache.airavata.monitor.JobStatusResult;
 import org.apache.kafka.common.serialization.Deserializer;
 
 import java.util.Map;
diff --git a/modules/job-monitor/pom.xml b/modules/job-monitor/pom.xml
index 74ad530e72..bdea010d88 100644
--- a/modules/job-monitor/pom.xml
+++ b/modules/job-monitor/pom.xml
@@ -41,12 +41,10 @@
             <dependency>
                 <groupId>org.yaml</groupId>
                 <artifactId>snakeyaml</artifactId>
-                <version>${snakeyaml.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.eclipse.angus</groupId>
                 <artifactId>jakarta.mail</artifactId>
-                <version>${jakarta.mail.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.apache.airavata</groupId>
diff --git a/modules/job-monitor/real-time-monitor/src/main/resources/log4j.properties b/modules/job-monitor/real-time-monitor/src/main/resources/log4j.properties
deleted file mode 100644
index a2c8d8360a..0000000000
--- a/modules/job-monitor/real-time-monitor/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,28 +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.
-# Set root logger level to DEBUG and its only appender to A1.
-log4j.rootLogger=INFO, A1
-
-log4j.category.org.apache.helix=WARN
-log4j.category.org.apache.kafka=INFO
-log4j.category.org.apache.zookeeper=WARN
-# A1 is set to be a ConsoleAppender.
-log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS} %-4r [%t] %-5p %c %x - %m [E=%X{experiment},P=%X{process},T=%X{task},G=%X{gateway}]%n
\ No newline at end of file
diff --git a/modules/job-monitor/real-time-monitor/src/main/resources/log4j2.xml b/modules/job-monitor/real-time-monitor/src/main/resources/log4j2.xml
deleted file mode 100644
index e38f7ff011..0000000000
--- a/modules/job-monitor/real-time-monitor/src/main/resources/log4j2.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-
-    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.
-
--->
-<Configuration status="WARN">
-
-    <Appenders>
-        <Console name="Console" target="SYSTEM_OUT">
-            <PatternLayout pattern="%d [%t] %-5p %c{30} %X - %m%n"/>
-        </Console>
-        <RollingFile name="RollingFileAppender" fileName="../logs/airavata.log"
-                     filePattern="logs/${date:yyyy-MM}/airavata-log-%d{MM-dd-yyyy}-%i.log.gz">
-            <PatternLayout>
-                <Pattern>%d [%t] %-5p %c{30} %X - %m%n</Pattern>
-            </PatternLayout>
-            <Policies>
-                <OnStartupTriggeringPolicy />
-                <TimeBasedTriggeringPolicy />
-                <SizeBasedTriggeringPolicy size="50 MB" />
-            </Policies>
-            <DefaultRolloverStrategy max="20" />
-        </RollingFile>
-    </Appenders>
-    <Loggers>
-        <logger name="ch.qos.logback" level="WARN"/>
-        <logger name="org.apache.helix" level="WARN"/>
-        <logger name="org.apache.zookeeper" level="ERROR"/>
-        <logger name="org.apache.airavata" level="INFO"/>
-        <logger name="org.hibernate" level="ERROR"/>
-        <Root level="INFO">
-            <AppenderRef ref="Console"/>
-            <AppenderRef ref="RollingFileAppender"/>
-        </Root>
-    </Loggers>
-</Configuration>
\ No newline at end of file
diff --git a/modules/job-monitor/real-time-monitor/src/main/resources/logback.xml b/modules/job-monitor/real-time-monitor/src/main/resources/logback.xml
new file mode 100644
index 0000000000..87b0c71f18
--- /dev/null
+++ b/modules/job-monitor/real-time-monitor/src/main/resources/logback.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+  <!-- Console Appender -->
+  <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
+    <encoder>
+      <pattern>%d [%thread] %-5level %logger{30} %X - %msg%n</pattern>
+    </encoder>
+  </appender>
+  <!-- Rolling File Appender -->
+  <appender name="RollingFileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>../logs/airavata.log</file>
+    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>logs/%d{yyyy-MM}/airavata-log-%d{MM-dd-yyyy}-%i.log.gz</fileNamePattern>
+      <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+        <maxFileSize>50MB</maxFileSize>
+      </timeBasedFileNamingAndTriggeringPolicy>
+      <maxHistory>20</maxHistory>
+    </rollingPolicy>
+    <encoder>
+      <pattern>%d [%thread] %-5level %logger{30} %X - %msg%n</pattern>
+    </encoder>
+  </appender>
+  <!-- Loggers -->
+  <logger name="ch.qos.logback" level="WARN"/>
+  <logger name="org.apache.helix" level="WARN"/>
+  <logger name="org.apache.kafka" level="INFO"/>
+  <logger name="org.apache.zookeeper" level="ERROR"/>
+  <logger name="org.apache.airavata" level="INFO"/>
+  <logger name="org.hibernate" level="ERROR"/>
+  <!-- Root Logger -->
+  <root level="INFO">
+    <appender-ref ref="Console"/>
+    <appender-ref ref="RollingFileAppender"/>
+  </root>
+</configuration>
\ No newline at end of file
diff --git a/modules/messaging/client/pom.xml b/modules/messaging/client/pom.xml
index 04a54b3ea2..5cdf1fa61a 100644
--- a/modules/messaging/client/pom.xml
+++ b/modules/messaging/client/pom.xml
@@ -39,7 +39,10 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-messaging-core</artifactId>
-            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-cli</groupId>
+            <artifactId>commons-cli</artifactId>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
@@ -54,17 +57,14 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>com.rabbitmq</groupId>
             <artifactId>amqp-client</artifactId>
-            <version>${amqp.client.version}</version>
         </dependency>
     </dependencies>
     <build>
diff --git a/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/RabbitMQListener.java b/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/RabbitMQListener.java
index bd7da896e7..7a77ae645b 100644
--- a/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/RabbitMQListener.java
+++ b/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/RabbitMQListener.java
@@ -30,21 +30,13 @@ import org.apache.airavata.model.messaging.event.ExperimentStatusChangeEvent;
 import org.apache.airavata.model.messaging.event.JobStatusChangeEvent;
 import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.airavata.model.messaging.event.TaskStatusChangeEvent;
-import org.apache.commons.cli.CommandLine;
-import org.apache.commons.cli.CommandLineParser;
-import org.apache.commons.cli.Options;
-import org.apache.commons.cli.ParseException;
-import org.apache.commons.cli.PosixParser;
+import org.apache.commons.cli.*;
 import org.apache.thrift.TBase;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStreamWriter;
+import java.io.*;
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/TestReader.java b/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/TestReader.java
index 5461e66d02..bfa0683176 100644
--- a/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/TestReader.java
+++ b/modules/messaging/client/src/main/java/org/apache/airavata/messaging/client/TestReader.java
@@ -19,9 +19,6 @@
  */
 package org.apache.airavata.messaging.client;
 
-import java.io.*;
-import java.util.ArrayList;
-import java.util.List;
 //import java.util.stream.Stream;
 
 public class TestReader {
diff --git a/modules/messaging/core/pom.xml b/modules/messaging/core/pom.xml
index 6a2d476a72..426029e504 100644
--- a/modules/messaging/core/pom.xml
+++ b/modules/messaging/core/pom.xml
@@ -39,7 +39,6 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-commons</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
@@ -48,23 +47,24 @@
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
-            <artifactId>jcl-over-slf4j</artifactId>
-            <scope>test</scope>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j2-impl</artifactId>
+            <version>${log4j2.slf4j.impl}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>com.rabbitmq</groupId>
             <artifactId>amqp-client</artifactId>
-            <version>${amqp.client.version}</version>
         </dependency>
     </dependencies>
 
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/MessagingFactory.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/MessagingFactory.java
index 51995ca63e..7cb2a7c7e4 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/MessagingFactory.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/MessagingFactory.java
@@ -23,14 +23,7 @@ import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.utils.DBEventManagerConstants;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.messaging.core.impl.*;
-import org.apache.airavata.model.messaging.event.ExperimentStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.JobIdentifier;
-import org.apache.airavata.model.messaging.event.JobStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.airavata.model.messaging.event.ProcessIdentifier;
-import org.apache.airavata.model.messaging.event.ProcessStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.TaskOutputChangeEvent;
-import org.apache.airavata.model.messaging.event.TaskStatusChangeEvent;
+import org.apache.airavata.model.messaging.event.*;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
index e4e681face..2887f265e5 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.messaging.core;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.model.messaging.event.ExperimentStatusChangeEvent;
 import org.apache.airavata.model.messaging.event.MessageType;
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ExperimentConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ExperimentConsumer.java
index 16b75275ad..5025a5e7ca 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ExperimentConsumer.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ExperimentConsumer.java
@@ -23,26 +23,29 @@ import com.rabbitmq.client.AMQP;
 import com.rabbitmq.client.Channel;
 import com.rabbitmq.client.Connection;
 import com.rabbitmq.client.Envelope;
-import com.rabbitmq.client.QueueingConsumer;
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessageHandler;
-import org.apache.airavata.model.messaging.event.*;
+import org.apache.airavata.model.messaging.event.ExperimentIntermediateOutputsEvent;
+import org.apache.airavata.model.messaging.event.ExperimentSubmitEvent;
+import org.apache.airavata.model.messaging.event.Message;
+import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.thrift.TBase;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import com.rabbitmq.client.DefaultConsumer;
 
 import java.io.IOException;
 
-public class ExperimentConsumer extends QueueingConsumer {
+public class ExperimentConsumer extends DefaultConsumer {
     private static final Logger log = LoggerFactory.getLogger(ExperimentConsumer.class);
 
-    private MessageHandler handler;
+    private final MessageHandler handler;
     private Channel channel;
-    private Connection connection;
+    private final Connection connection;
 
     public ExperimentConsumer(MessageHandler messageHandler, Connection connection, Channel channel) {
         super(channel);
@@ -51,12 +54,11 @@ public class ExperimentConsumer extends QueueingConsumer {
         this.channel = channel;
     }
 
-
     @Override
     public void handleDelivery(String consumerTag,
-                               Envelope envelope,
-                               AMQP.BasicProperties properties,
-                               byte[] body) throws IOException {
+                             Envelope envelope,
+                             AMQP.BasicProperties properties,
+                             byte[] body) throws IOException {
 
         Message message = new Message();
 
@@ -99,7 +101,7 @@ public class ExperimentConsumer extends QueueingConsumer {
                 messageContext.setIsRedeliver(envelope.isRedeliver());
                 handler.onMessage(messageContext);
 
-            }else {
+            } else {
                 log.error("{} message type is not handle in ProcessLaunch Subscriber. Sending ack for " +
                         "delivery tag {} ", message.getMessageType().name(), deliveryTag);
                 sendAck(deliveryTag);
@@ -112,11 +114,11 @@ public class ExperimentConsumer extends QueueingConsumer {
     }
 
 
-    private void sendAck(long deliveryTag){
+    private void sendAck(long deliveryTag) {
         try {
-            if (channel.isOpen()){
-                channel.basicAck(deliveryTag,false);
-            }else {
+            if (channel.isOpen()) {
+                channel.basicAck(deliveryTag, false);
+            } else {
                 channel = connection.createChannel();
                 channel.basicQos(ServerSettings.getRabbitmqPrefetchCount());
                 channel.basicAck(deliveryTag, false);
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/MessageConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/MessageConsumer.java
index 306a41f9c2..c5b1d364b4 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/MessageConsumer.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/MessageConsumer.java
@@ -19,28 +19,29 @@
  */
 package org.apache.airavata.messaging.core.impl;
 
-import com.rabbitmq.client.*;
+import com.rabbitmq.client.AMQP;
+import com.rabbitmq.client.Channel;
+import com.rabbitmq.client.Connection;
+import com.rabbitmq.client.Envelope;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessageHandler;
 import org.apache.airavata.model.dbevent.DBEventMessage;
-import org.apache.airavata.model.dbevent.DBEventMessageContext;
-import org.apache.airavata.model.messaging.event.ExperimentSubmitEvent;
 import org.apache.airavata.model.messaging.event.Message;
-import org.apache.log4j.LogManager;
-import org.apache.log4j.Logger;
-import org.apache.thrift.TBase;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.thrift.TException;
+import com.rabbitmq.client.DefaultConsumer;
 
 import java.io.IOException;
 
-public class MessageConsumer extends QueueingConsumer {
+public class MessageConsumer extends DefaultConsumer {
 
     private static final Logger logger = LogManager.getLogger(MessageConsumer.class);
 
-    private MessageHandler handler;
+    private final MessageHandler handler;
     private Channel channel;
-    private Connection connection;
+    private final Connection connection;
 
     public MessageConsumer(MessageHandler messageHandler, Connection connection, Channel channel) {
         super(channel);
@@ -65,7 +66,7 @@ public class MessageConsumer extends QueueingConsumer {
             DBEventMessage dBEventMessage = new DBEventMessage();
             ThriftUtils.createThriftFromBytes(message.getEvent(), dBEventMessage);
 
-            MessageContext messageContext = new MessageContext((TBase) dBEventMessage, message.getMessageType(), message.getMessageId(), "gatewayId", envelope.getDeliveryTag());
+            MessageContext messageContext = new MessageContext(dBEventMessage, message.getMessageType(), message.getMessageId(), "gatewayId", envelope.getDeliveryTag());
             handler.onMessage(messageContext);
             //sendAck(deliveryTag);
 
@@ -76,12 +77,12 @@ public class MessageConsumer extends QueueingConsumer {
     }
 
 
-    private void sendAck(long deliveryTag){
+    private void sendAck(long deliveryTag) {
         logger.info("sendAck() -> Sending ack. Delivery Tag : " + deliveryTag);
         try {
-            if (channel.isOpen()){
-                channel.basicAck(deliveryTag,false);
-            }else {
+            if (channel.isOpen()) {
+                channel.basicAck(deliveryTag, false);
+            } else {
                 channel = connection.createChannel();
                 channel.basicQos(20);
                 channel.basicAck(deliveryTag, false);
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ProcessConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ProcessConsumer.java
index f6f1127e8c..c3b0dcd397 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ProcessConsumer.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/ProcessConsumer.java
@@ -23,7 +23,6 @@ import com.rabbitmq.client.AMQP;
 import com.rabbitmq.client.Channel;
 import com.rabbitmq.client.Connection;
 import com.rabbitmq.client.Envelope;
-import com.rabbitmq.client.QueueingConsumer;
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftUtils;
@@ -37,28 +36,29 @@ import org.apache.thrift.TBase;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import com.rabbitmq.client.DefaultConsumer;
 
 import java.io.IOException;
 
-public class ProcessConsumer extends QueueingConsumer{
+public class ProcessConsumer extends DefaultConsumer {
     private static final Logger log = LoggerFactory.getLogger(ProcessConsumer.class);
 
-    private MessageHandler handler;
+    private final MessageHandler handler;
     private Channel channel;
-    private Connection connection;
+    private final Connection connection;
 
-    public ProcessConsumer(MessageHandler messageHandler, Connection connection, Channel channel){
+    public ProcessConsumer(MessageHandler messageHandler, Connection connection, Channel channel) {
         super(channel);
         this.handler = messageHandler;
         this.connection = connection;
         this.channel = channel;
     }
 
-
-    @Override public void handleDelivery(String consumerTag,
-                               Envelope envelope,
-                               AMQP.BasicProperties basicProperties,
-                               byte[] body) throws IOException {
+    @Override
+    public void handleDelivery(String consumerTag,
+                             Envelope envelope,
+                             AMQP.BasicProperties basicProperties,
+                             byte[] body) throws IOException {
 
         Message message = new Message();
 
@@ -105,11 +105,11 @@ public class ProcessConsumer extends QueueingConsumer{
 
     }
 
-    private void sendAck(long deliveryTag){
+    private void sendAck(long deliveryTag) {
         try {
-            if (channel.isOpen()){
-                channel.basicAck(deliveryTag,false);
-            }else {
+            if (channel.isOpen()) {
+                channel.basicAck(deliveryTag, false);
+            } else {
                 channel = connection.createChannel();
                 channel.basicQos(ServerSettings.getRabbitmqPrefetchCount());
                 channel.basicAck(deliveryTag, false);
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQPublisher.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQPublisher.java
index c11a3ff526..f7b384f3c2 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQPublisher.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQPublisher.java
@@ -19,12 +19,7 @@
  */
 package org.apache.airavata.messaging.core.impl;
 
-import com.rabbitmq.client.Channel;
-import com.rabbitmq.client.Connection;
-import com.rabbitmq.client.ConnectionFactory;
-import com.rabbitmq.client.MessageProperties;
-import com.rabbitmq.client.ShutdownListener;
-import com.rabbitmq.client.ShutdownSignalException;
+import com.rabbitmq.client.*;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.messaging.core.MessageContext;
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQSubscriber.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQSubscriber.java
index 4a4413b0f6..99223d5916 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQSubscriber.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQSubscriber.java
@@ -19,15 +19,10 @@
  */
 package org.apache.airavata.messaging.core.impl;
 
-import com.rabbitmq.client.Channel;
-import com.rabbitmq.client.Connection;
-import com.rabbitmq.client.ConnectionFactory;
-import com.rabbitmq.client.Consumer;
-import com.rabbitmq.client.ShutdownListener;
-import com.rabbitmq.client.ShutdownSignalException;
+import com.rabbitmq.client.*;
 import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.messaging.core.Subscriber;
 import org.apache.airavata.messaging.core.RabbitMQProperties;
+import org.apache.airavata.messaging.core.Subscriber;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/StatusConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/StatusConsumer.java
index 4cdafab2ab..212d3d726b 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/StatusConsumer.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/StatusConsumer.java
@@ -19,24 +19,12 @@
  */
 package org.apache.airavata.messaging.core.impl;
 
-import com.rabbitmq.client.AMQP;
-import com.rabbitmq.client.Channel;
-import com.rabbitmq.client.Connection;
-import com.rabbitmq.client.DefaultConsumer;
-import com.rabbitmq.client.Envelope;
+import com.rabbitmq.client.*;
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessageHandler;
-import org.apache.airavata.model.messaging.event.ExperimentStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.JobStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.Message;
-import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.airavata.model.messaging.event.ProcessStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.TaskOutputChangeEvent;
-import org.apache.airavata.model.messaging.event.TaskStatusChangeEvent;
-import org.apache.airavata.model.messaging.event.ProcessSubmitEvent;
-import org.apache.airavata.model.messaging.event.ProcessTerminateEvent;
+import org.apache.airavata.model.messaging.event.*;
 import org.apache.thrift.TBase;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/LatencyWriterTask.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/LatencyWriterTask.java
index 3864394ca0..ae5a1d6074 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/LatencyWriterTask.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/LatencyWriterTask.java
@@ -20,7 +20,6 @@
 package org.apache.airavata.messaging.core.stats;
 
 import java.io.*;
-import java.util.List;
 import java.util.Map;
 import java.util.TimerTask;
 
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/StatCounter.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/StatCounter.java
index 69d828a0fe..f4acacf5f0 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/StatCounter.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/stats/StatCounter.java
@@ -22,7 +22,7 @@ package org.apache.airavata.messaging.core.stats;
 
 import org.apache.airavata.model.messaging.event.Message;
 
-import java.io.*;
+import java.io.File;
 import java.util.*;
 
 public class StatCounter {
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/util/DBEventPublisherUtils.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/util/DBEventPublisherUtils.java
index 9e4ad7c44c..1964c13f61 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/util/DBEventPublisherUtils.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/util/DBEventPublisherUtils.java
@@ -26,13 +26,7 @@ import org.apache.airavata.common.utils.ThriftUtils;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessagingFactory;
 import org.apache.airavata.messaging.core.Publisher;
-import org.apache.airavata.model.dbevent.CrudType;
-import org.apache.airavata.model.dbevent.DBEventMessage;
-import org.apache.airavata.model.dbevent.DBEventMessageContext;
-import org.apache.airavata.model.dbevent.DBEventPublisher;
-import org.apache.airavata.model.dbevent.DBEventPublisherContext;
-import org.apache.airavata.model.dbevent.DBEventType;
-import org.apache.airavata.model.dbevent.EntityType;
+import org.apache.airavata.model.dbevent.*;
 import org.apache.airavata.model.messaging.event.MessageType;
 import org.apache.thrift.TBase;
 import org.slf4j.Logger;
diff --git a/modules/orchestrator/orchestrator-client/pom.xml b/modules/orchestrator/orchestrator-client/pom.xml
index 937b8569ed..64ebe7e435 100644
--- a/modules/orchestrator/orchestrator-client/pom.xml
+++ b/modules/orchestrator/orchestrator-client/pom.xml
@@ -40,27 +40,26 @@
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-api-stubs</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-base-api</artifactId>
-            <version>${project.version}</version>
         </dependency>
-      	<dependency>
+        <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-model-utils</artifactId>
-            <version>${project.version}</version>
         </dependency>
-	<dependency>
+        <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-client-configuration</artifactId>
-            <version>${project.version}</version>
         </dependency>
     </dependencies>
 
diff --git a/modules/orchestrator/orchestrator-core/pom.xml b/modules/orchestrator/orchestrator-core/pom.xml
index e8d54953f6..8c84f9efce 100644
--- a/modules/orchestrator/orchestrator-core/pom.xml
+++ b/modules/orchestrator/orchestrator-core/pom.xml
@@ -39,45 +39,22 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-commons</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-messaging-core</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-credential-store</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-model-utils</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
@@ -87,18 +64,15 @@
         <dependency>
             <groupId>org.testng</groupId>
             <artifactId>testng</artifactId>
-            <version>${testng.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>registry-api-stubs</artifactId>
-            <version>${project.version}</version>
         </dependency>
     </dependencies>
 
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/schedule/HostScheduler.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/schedule/HostScheduler.java
index 30c7965f03..a8a0638093 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/schedule/HostScheduler.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/schedule/HostScheduler.java
@@ -19,10 +19,10 @@
  */
 package org.apache.airavata.orchestrator.core.schedule;
 
-import java.util.List;
-
 import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
 
+import java.util.List;
+
 public  interface HostScheduler {
     /**
      * This method will pick a host among set of hosts based on the algorithm users wants to implement, For a single instance
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/utils/OrchestratorUtils.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/utils/OrchestratorUtils.java
index ce5bf20d7b..be318f77cd 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/utils/OrchestratorUtils.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/utils/OrchestratorUtils.java
@@ -47,7 +47,10 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
-import java.util.*;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
 
 /**
  * This contains orchestrator specific utilities
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/JobMetadataValidator.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/JobMetadataValidator.java
index ba04b04685..21150e7566 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/JobMetadataValidator.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/JobMetadataValidator.java
@@ -22,7 +22,6 @@ package org.apache.airavata.orchestrator.core.validator;
 import org.apache.airavata.model.error.ValidationResults;
 import org.apache.airavata.model.experiment.ExperimentModel;
 import org.apache.airavata.model.process.ProcessModel;
-import org.apache.airavata.model.task.TaskModel;
 
 /**
  * This is the interface to implement a validation logic, users can implement their validation
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
index 50651c90ce..5f16937d9b 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/validator/impl/BatchQueueValidator.java
@@ -25,7 +25,8 @@ import org.apache.airavata.model.appcatalog.computeresource.BatchQueue;
 import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
 import org.apache.airavata.model.error.ValidationResults;
 import org.apache.airavata.model.error.ValidatorResult;
-import org.apache.airavata.model.experiment.*;
+import org.apache.airavata.model.experiment.ExperimentModel;
+import org.apache.airavata.model.experiment.UserConfigurationDataModel;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.scheduling.ComputationalResourceSchedulingModel;
 import org.apache.airavata.orchestrator.core.validator.JobMetadataValidator;
diff --git a/modules/orchestrator/orchestrator-service/pom.xml b/modules/orchestrator/orchestrator-service/pom.xml
index c8fa5f3f6c..33ba5f3fc6 100644
--- a/modules/orchestrator/orchestrator-service/pom.xml
+++ b/modules/orchestrator/orchestrator-service/pom.xml
@@ -40,62 +40,54 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-credential-store</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.thrift</groupId>
             <artifactId>libthrift</artifactId>
-            <version>${thrift.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-orchestrator-core</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-orchestrator-client</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-model-utils</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-commons</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>cluster-monitoring</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>metascheduler-core</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>process-scheduler</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>metadata-analyzer</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>computer-resource-monitoring-service</artifactId>
-            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
         </dependency>
     </dependencies>
 
diff --git a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
index e3eac12661..3d9f59ec14 100644
--- a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
+++ b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
@@ -61,7 +61,7 @@ import org.apache.airavata.registry.api.RegistryService;
 import org.apache.airavata.registry.api.RegistryService.Client;
 import org.apache.airavata.registry.api.client.RegistryServiceClientFactory;
 import org.apache.airavata.registry.api.exception.RegistryServiceException;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.curator.RetryPolicy;
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.framework.CuratorFrameworkFactory;
diff --git a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorServerThreadPoolExecutor.java b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorServerThreadPoolExecutor.java
index 9566f8cc02..52a3e51287 100644
--- a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorServerThreadPoolExecutor.java
+++ b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorServerThreadPoolExecutor.java
@@ -19,15 +19,14 @@
  */
 package org.apache.airavata.orchestrator.util;
 
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-
-
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
 public class OrchestratorServerThreadPoolExecutor {
 	    private final static Logger logger = LoggerFactory.getLogger(OrchestratorServerThreadPoolExecutor.class);
 	    public static final String AIRAVATA_SERVER_THREAD_POOL_SIZE = "airavata.server.thread.pool.size";
diff --git a/modules/platform-monitoring/pom.xml b/modules/platform-monitoring/pom.xml
index 75725ab0b6..d9629f4e3e 100644
--- a/modules/platform-monitoring/pom.xml
+++ b/modules/platform-monitoring/pom.xml
@@ -54,7 +54,7 @@
         <!-- Pushgateway exposition-->
         <dependency>
             <groupId>io.prometheus</groupId>
-                <artifactId>simpleclient_pushgateway</artifactId>
+            <artifactId>simpleclient_pushgateway</artifactId>
             <version>${prometheus.version}</version>
         </dependency>
     </dependencies>
diff --git a/modules/registry/registry-core/pom.xml b/modules/registry/registry-core/pom.xml
index 93ac0a4af0..a8403b1199 100644
--- a/modules/registry/registry-core/pom.xml
+++ b/modules/registry/registry-core/pom.xml
@@ -33,74 +33,35 @@
     <groupId>org.apache.airavata</groupId>
     <artifactId>airavata-registry-core</artifactId>
 
-    <properties>
-        <derby.version>10.11.1.1</derby.version>
-        <surefire.version>2.18.1</surefire.version>
-        <skipTests>false</skipTests>
-        <mysql.connector.version>8.0.31</mysql.connector.version>
-    </properties>
-
     <dependencies>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-data-models</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>net.sf.dozer</groupId>
-            <artifactId>dozer</artifactId>
-            <version>${dozer.version}</version>
-            <exclusions>
-               <exclusion>
-                   <groupId>org.slf4j</groupId>
-                   <artifactId>slf4j-log4j12</artifactId>
-               </exclusion>
-               <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>slf4j-api</artifactId>
-                </exclusion>
-            </exclusions>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.github.dozermapper</groupId>
+            <artifactId>dozer-core</artifactId>
         </dependency>
         <dependency>
             <groupId>org.hibernate.orm</groupId>
             <artifactId>hibernate-core</artifactId>
-            <version>${hibernate-core.version}</version>
         </dependency>
         <dependency>
             <groupId>com.mysql</groupId>
             <artifactId>mysql-connector-j</artifactId>
-            <version>${mysql.connector.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbyclient</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-            <version>${derby.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbytools</artifactId>
-            <version>${derby.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>${junit.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-commons</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
@@ -110,18 +71,15 @@
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-registry-cpi</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.ibatis</groupId>
             <artifactId>ibatis-sqlmap</artifactId>
-            <version>${ibatis-sqlmap.version}</version>
         </dependency>
         <!-- For MariaDB based schema migrations -->
         <dependency>
             <groupId>org.mariadb.jdbc</groupId>
             <artifactId>mariadb-java-client</artifactId>
-            <version>${mariadb-java-client.version}</version>
             <scope>runtime</scope>
         </dependency>
     </dependencies>
@@ -131,13 +89,9 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven.compiler.plugin.version}</version>
+                <version>${maven-compiler-plugin.version}</version>
                 <configuration>
                    <release>17</release>
-                    <!--<compilerArgs>-->
-                        <!--<arg>&#45;&#45;add-opens=java.base/java.lang=ALL-UNNAMED</arg>-->
-                    <!--</compilerArgs>-->
-                    <!--<fork>true</fork>-->
                 </configuration>
             </plugin>
             <plugin>
@@ -225,11 +179,8 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-surefire-plugin</artifactId>
-                <version>${surefire.version}</version>
-                <inherited>true</inherited>
                 <configuration>
                     <failIfNoTests>false</failIfNoTests>
-                    <skipTests>${skipTests}</skipTests>
                     <workingDirectory>${project.build.testOutputDirectory}</workingDirectory>
                 </configuration>
             </plugin>
@@ -259,7 +210,7 @@
                     </execution>
                 </executions>
             </plugin>
-            </plugins>
+        </plugins>
     </build>
 
 </project>
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowEntity.java
index dbac506777..9b5785d6f4 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowEntity.java
@@ -20,6 +20,7 @@
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowErrorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowErrorEntity.java
index 6075873508..cb2897bd41 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowErrorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowErrorEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowStatusEntity.java
index 480db8264d..b2d1d5d502 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/AiravataWorkflowStatusEntity.java
@@ -19,9 +19,9 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.workflow.WorkflowState;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationErrorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationErrorEntity.java
index 3fb368095f..9528960c7c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationErrorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationErrorEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationStatusEntity.java
index 35907c2a4d..4e2ae5ea10 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/ApplicationStatusEntity.java
@@ -19,9 +19,9 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.workflow.ApplicationState;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerErrorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerErrorEntity.java
index 8041855b64..072b24ab00 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerErrorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerErrorEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerInputEntity.java
index 06328c3c24..1d235938f6 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerInputEntity.java
@@ -20,9 +20,9 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerOutputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerOutputEntity.java
index dc0140b293..b0190675db 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerOutputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerOutputEntity.java
@@ -20,9 +20,9 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerStatusEntity.java
index 476e695d8a..d3d9b44aaa 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/HandlerStatusEntity.java
@@ -20,6 +20,7 @@
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowApplicationEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowApplicationEntity.java
index 27c243795e..2d27ef7290 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowApplicationEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowApplicationEntity.java
@@ -19,9 +19,8 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
-import org.apache.airavata.registry.core.entities.expcatalog.ProcessEntity;
-
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowConnectionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowConnectionEntity.java
index 8f342c30b7..22e4ceb082 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowConnectionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowConnectionEntity.java
@@ -19,9 +19,9 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.workflow.ComponentType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowDataBlockEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowDataBlockEntity.java
index 703a93c509..0a905dc860 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowDataBlockEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowDataBlockEntity.java
@@ -20,6 +20,7 @@
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowHandlerEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowHandlerEntity.java
index a1eab80949..537af76b90 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowHandlerEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/airavataworkflowcatalog/WorkflowHandlerEntity.java
@@ -19,9 +19,9 @@
  */
 package org.apache.airavata.registry.core.entities.airavataworkflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.workflow.HandlerType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppEnvironmentEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppEnvironmentEntity.java
index 7f8d1b98cb..9081921557 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppEnvironmentEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppEnvironmentEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppModuleMappingEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppModuleMappingEntity.java
index bb6f8cd48a..6d4f7a4114 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppModuleMappingEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/AppModuleMappingEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationDeploymentEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationDeploymentEntity.java
index 8836c589d9..f3bb85e93d 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationDeploymentEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationDeploymentEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.parallelism.ApplicationParallelismType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInputEntity.java
index 709d1a3916..ecc940177e 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInputEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInterfaceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInterfaceEntity.java
index 50255b7fff..21fec09587 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInterfaceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationInterfaceEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationModuleEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationModuleEntity.java
index 2b8ee2f73d..19f8c2d277 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationModuleEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationModuleEntity.java
@@ -24,6 +24,7 @@ import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
 import jakarta.persistence.Id;
 import jakarta.persistence.Table;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationOutputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationOutputEntity.java
index 41924b2b44..6f3724692f 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationOutputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ApplicationOutputEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/BatchQueueEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/BatchQueueEntity.java
index 6cace49203..28cd63bd67 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/BatchQueueEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/BatchQueueEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/CloudJobSubmissionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/CloudJobSubmissionEntity.java
index 0bfa6b7f21..1372b148d2 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/CloudJobSubmissionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/CloudJobSubmissionEntity.java
@@ -19,10 +19,10 @@
  */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.appcatalog.computeresource.ProviderName;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceEntity.java
index cdb83f33c2..5520193b8d 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceEntity.java
@@ -21,10 +21,10 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
-import java.util.Map;
 
 /**
  * The persistent class for the compute_resource database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceFileSystemEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceFileSystemEntity.java
index 988dc9228a..1f7a98698b 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceFileSystemEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceFileSystemEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.appcatalog.computeresource.FileSystems;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourcePreferenceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourcePreferenceEntity.java
index c855437c51..541bc912f2 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourcePreferenceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourcePreferenceEntity.java
@@ -20,10 +20,10 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceReservationEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceReservationEntity.java
index 61681e2bfe..ba6230ea95 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceReservationEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ComputeResourceReservationEntity.java
@@ -19,22 +19,12 @@
  */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
 
-import jakarta.persistence.CascadeType;
-import jakarta.persistence.CollectionTable;
-import jakarta.persistence.Column;
-import jakarta.persistence.ElementCollection;
-import jakarta.persistence.Entity;
-import jakarta.persistence.FetchType;
-import jakarta.persistence.Id;
-import jakarta.persistence.JoinColumn;
-import jakarta.persistence.JoinColumns;
-import jakarta.persistence.ManyToOne;
-import jakarta.persistence.Table;
-
 /**
  * The persistent class for the COMPUTE_RESOURCE_RESERVATION database table.
  */
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/DataMovementInterfaceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/DataMovementInterfaceEntity.java
index 328c29ccaa..7f1e827d8e 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/DataMovementInterfaceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/DataMovementInterfaceEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayGroupsEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayGroupsEntity.java
index 787a36ce0a..0b000049a4 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayGroupsEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayGroupsEntity.java
@@ -24,6 +24,7 @@ import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
 import jakarta.persistence.Id;
 import jakarta.persistence.Table;
+
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayProfileEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayProfileEntity.java
index 4835b04b59..644eba7d54 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayProfileEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GatewayProfileEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusGkEndpointEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusGkEndpointEntity.java
index 93d45ce67b..55657c5649 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusGkEndpointEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusGkEndpointEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusSubmissionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusSubmissionEntity.java
index 80105a01d1..d8c1bbd8e2 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusSubmissionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GlobusSubmissionEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpDataMovementEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpDataMovementEntity.java
index afefee06ee..7ef6cfb2a6 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpDataMovementEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpDataMovementEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpEndpointEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpEndpointEntity.java
index 41e77d4fdd..ee96b15d36 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpEndpointEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GridftpEndpointEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupComputeResourcePrefEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupComputeResourcePrefEntity.java
index 6632bc5f95..2dcc1d114c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupComputeResourcePrefEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupComputeResourcePrefEntity.java
@@ -19,24 +19,11 @@
  */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
 
-import jakarta.persistence.CascadeType;
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.EnumType;
-import jakarta.persistence.Enumerated;
-import jakarta.persistence.FetchType;
-import jakarta.persistence.Id;
-import jakarta.persistence.IdClass;
-import jakarta.persistence.JoinColumn;
-import jakarta.persistence.ManyToOne;
-import jakarta.persistence.OneToMany;
-import jakarta.persistence.OrderBy;
-import jakarta.persistence.Table;
 import java.io.Serializable;
-import java.sql.Timestamp;
 import java.util.List;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupResourceProfileEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupResourceProfileEntity.java
index 8e5487d10b..49fe255084 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupResourceProfileEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupResourceProfileEntity.java
@@ -19,13 +19,8 @@
  */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
-import jakarta.persistence.CascadeType;
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.FetchType;
-import jakarta.persistence.Id;
-import jakarta.persistence.OneToMany;
-import jakarta.persistence.Table;
+import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.util.List;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupSSHAccountProvisionerConfig.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupSSHAccountProvisionerConfig.java
index 074904523b..973f70ffbe 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupSSHAccountProvisionerConfig.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GroupSSHAccountProvisionerConfig.java
@@ -19,15 +19,8 @@
  */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
-import jakarta.persistence.CascadeType;
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.Id;
-import jakarta.persistence.IdClass;
-import jakarta.persistence.JoinColumn;
-import jakarta.persistence.JoinColumns;
-import jakarta.persistence.ManyToOne;
-import jakarta.persistence.Table;
+import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshExportEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshExportEntity.java
index 3d60ca0b2e..2d1522faf0 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshExportEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshExportEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPostjobcommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPostjobcommandEntity.java
index 833c055fa1..d3dd697ef2 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPostjobcommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPostjobcommandEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPrejobcommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPrejobcommandEntity.java
index 10ba332f15..c4672c6e88 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPrejobcommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshPrejobcommandEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshSubmissionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshSubmissionEntity.java
index 65ecbc8275..2cc3f03c2f 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshSubmissionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/GsisshSubmissionEntity.java
@@ -24,6 +24,7 @@ import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
 import jakarta.persistence.Id;
 import jakarta.persistence.Table;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobManagerCommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobManagerCommandEntity.java
index 8940d83919..d21637ea91 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobManagerCommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobManagerCommandEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobSubmissionInterfaceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobSubmissionInterfaceEntity.java
index 0f1ee7e32c..bbb8c8b61f 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobSubmissionInterfaceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/JobSubmissionInterfaceEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryApendPathEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryApendPathEntity.java
index 5074cfb797..684b92514c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryApendPathEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryApendPathEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryPrependPathEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryPrependPathEntity.java
index 9538894f0a..3b1933f063 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryPrependPathEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LibraryPrependPathEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalDataMovementEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalDataMovementEntity.java
index 26ec1b8965..966c96ba9e 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalDataMovementEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalDataMovementEntity.java
@@ -24,6 +24,7 @@ import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
 import jakarta.persistence.Id;
 import jakarta.persistence.Table;
+
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalSubmissionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalSubmissionEntity.java
index 7b1570520f..d6e6234243 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalSubmissionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/LocalSubmissionEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ModuleLoadCmdEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ModuleLoadCmdEntity.java
index b63e9410e4..8cf42ba2ce 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ModuleLoadCmdEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ModuleLoadCmdEntity.java
@@ -19,7 +19,9 @@
  *
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
+
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParallelismCommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParallelismCommandEntity.java
index 993e7c798b..6dc6a88206 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParallelismCommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParallelismCommandEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.parallelism.ApplicationParallelismType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorEntity.java
index e49521d88a..8034a96d61 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.util.List;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorInputEntity.java
index 3e4c89cc1c..9b47bec2ae 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserConnectorInputEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserEntity.java
index b75a19280c..0b47e69321 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.util.List;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserInputEntity.java
index 22ed5f051a..61c760ff07 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserInputEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserOutputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserOutputEntity.java
index e34fe408d4..6a01203659 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserOutputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParserOutputEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateEntity.java
index 8f1c23f679..2f6613d978 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.util.List;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateInputEntity.java
index 341e435553..8d6095645d 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ParsingTemplateInputEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PostjobCommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PostjobCommandEntity.java
index 971d98767c..396ce7ef5a 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PostjobCommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PostjobCommandEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PrejobCommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PrejobCommandEntity.java
index e227f90395..430af7f6a8 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PrejobCommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/PrejobCommandEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ResourceJobManagerEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ResourceJobManagerEntity.java
index bbcea3b995..d6be925d1f 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ResourceJobManagerEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ResourceJobManagerEntity.java
@@ -20,10 +20,10 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ScpDataMovementEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ScpDataMovementEntity.java
index f5f2ee7f33..59dade7f12 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ScpDataMovementEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/ScpDataMovementEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/SshJobSubmissionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/SshJobSubmissionEntity.java
index 2f7a554b4e..ffefb4fbc3 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/SshJobSubmissionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/SshJobSubmissionEntity.java
@@ -20,10 +20,10 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.common.utils.AiravataUtils;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageInterfaceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageInterfaceEntity.java
index 985aaedce2..5465a0eff9 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageInterfaceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageInterfaceEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.DataMovementProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StoragePreferenceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StoragePreferenceEntity.java
index 65062a5dd1..5cf27f0741 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StoragePreferenceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StoragePreferenceEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageResourceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageResourceEntity.java
index f517b37b21..f559026304 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageResourceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/StorageResourceEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreDatamovementEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreDatamovementEntity.java
index 602914277c..071bfef6ae 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreDatamovementEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreDatamovementEntity.java
@@ -20,14 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.EnumType;
-import jakarta.persistence.Enumerated;
-import jakarta.persistence.Id;
-import jakarta.persistence.Table;
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreSubmissionEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreSubmissionEntity.java
index 33a95c8f9d..be21c03346 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreSubmissionEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UnicoreSubmissionEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.movement.SecurityProtocol;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserComputeResourcePreferenceEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserComputeResourcePreferenceEntity.java
index 68eaf8c838..a0acb93c2c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserComputeResourcePreferenceEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserComputeResourcePreferenceEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.appcatalog;
 
 import jakarta.persistence.*;
+
 import java.sql.Timestamp;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserResourceProfileEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserResourceProfileEntity.java
index c55f964197..39519d1b73 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserResourceProfileEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/appcatalog/UserResourceProfileEntity.java
@@ -20,9 +20,10 @@
 */
 package org.apache.airavata.registry.core.entities.appcatalog;
 
-import java.util.*;
 import jakarta.persistence.*;
+
 import java.sql.Timestamp;
+import java.util.List;
 
 /**
  * The persistent class for the user_resource_profile database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ComputationalResourceSchedulingEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ComputationalResourceSchedulingEntity.java
index 69bed11152..f01b8544d8 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ComputationalResourceSchedulingEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ComputationalResourceSchedulingEntity.java
@@ -1,6 +1,7 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentEntity.java
index f4259ef470..a994830aef 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.experiment.ExperimentType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentErrorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentErrorEntity.java
index 5b8c3fcf81..f3d12877c8 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentErrorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentErrorEntity.java
@@ -21,9 +21,9 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
-import java.util.List;
 
 /**
  * The persistent class for the experiment_error database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentInputEntity.java
index ddfe9d93d7..62b851afa4 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentInputEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentOutputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentOutputEntity.java
index 1eb50a1e9f..870205cc07 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentOutputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentOutputEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentStatusEntity.java
index 7fd47159b0..db17238b6b 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentStatusEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.status.ExperimentState;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentSummaryEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentSummaryEntity.java
index 28a4dcf99d..d356181af5 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentSummaryEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ExperimentSummaryEntity.java
@@ -19,7 +19,10 @@
  */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
-import jakarta.persistence.*;
+import jakarta.persistence.Column;
+import jakarta.persistence.Id;
+import jakarta.persistence.Table;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayEntity.java
index 42ca12e5d9..9089d225c5 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.workspace.GatewayApprovalStatus;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayUsageReportingCommandEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayUsageReportingCommandEntity.java
index 6e7371e752..52973f53bf 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayUsageReportingCommandEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayUsageReportingCommandEntity.java
@@ -20,6 +20,7 @@
  package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 @Entity
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayWorkerEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayWorkerEntity.java
index 8b5d58d111..94cf632d20 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayWorkerEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/GatewayWorkerEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobEntity.java
index 176ccfefc3..04261aaaa3 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobStatusEntity.java
index e6d74846ad..6378c8f850 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/JobStatusEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.status.JobState;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/NotificationEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/NotificationEntity.java
index 6c4d329623..bff9b2ae69 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/NotificationEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/NotificationEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.workspace.NotificationPriority;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessEntity.java
index 90e4570958..7be782dcc4 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessEntity.java
@@ -22,6 +22,7 @@ package org.apache.airavata.registry.core.entities.expcatalog;
 
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.Collection;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessErrorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessErrorEntity.java
index 7a1d2ad716..49652491a2 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessErrorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessErrorEntity.java
@@ -21,9 +21,9 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
-import java.util.List;
 
 /**
  * The persistent class for the process_error database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessInputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessInputEntity.java
index d2f1a7ea41..db2e494790 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessInputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessInputEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessOutputEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessOutputEntity.java
index c8c7ccec33..7df2044691 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessOutputEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessOutputEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.application.io.DataType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessResourceScheduleEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessResourceScheduleEntity.java
index b167438216..1cdd5e6456 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessResourceScheduleEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessResourceScheduleEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessStatusEntity.java
index b33dc6e6c8..c519df4287 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessStatusEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.status.ProcessState;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessWorkflowPK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessWorkflowPK.java
index 7436e560be..1d9fc2b96c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessWorkflowPK.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProcessWorkflowPK.java
@@ -1,7 +1,5 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
-import jakarta.persistence.Column;
-import jakarta.persistence.Id;
 import java.io.Serializable;
 
 public class ProcessWorkflowPK implements Serializable {
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectEntity.java
index 519a603115..85e365d982 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectEntity.java
@@ -20,8 +20,11 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
-import jakarta.persistence.*;
-import java.util.List;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.Id;
+import jakarta.persistence.Table;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectUserEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectUserEntity.java
index 54a68fb290..45db5ee019 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectUserEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/ProjectUserEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusEntity.java
index 4f93fe16e5..26e78e231e 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusEntity.java
@@ -21,9 +21,9 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.math.BigInteger;
-import java.sql.Timestamp;
 
 /**
  * The persistent class for the queue_status database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusPK.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusPK.java
index 05b8097ac0..0447c8ec3c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusPK.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/QueueStatusPK.java
@@ -22,7 +22,6 @@ package org.apache.airavata.registry.core.entities.expcatalog;
 
 import java.io.Serializable;
 import java.math.BigInteger;
-import java.sql.Timestamp;
 
 /**
  * The primary key class for the queue_status database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskEntity.java
index 03904b0cee..56bf8d1bcc 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.task.TaskTypes;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskErrorEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskErrorEntity.java
index 32cd7e5d75..f88751d9be 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskErrorEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskErrorEntity.java
@@ -21,9 +21,9 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
-import java.util.List;
 
 /**
  * The persistent class for the task_error database table.
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskStatusEntity.java
index 4e0bb568fe..2c1f2a4bdc 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/TaskStatusEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.expcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.status.TaskState;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/UserConfigurationDataEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/UserConfigurationDataEntity.java
index 629c62158a..86be95318f 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/UserConfigurationDataEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/expcatalog/UserConfigurationDataEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.expcatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 import java.util.List;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/ConfigurationEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/ConfigurationEntity.java
index 7c39c10204..94fb7ec549 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/ConfigurationEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/ConfigurationEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.replicacatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductEntity.java
index 9639cc2c94..183ef40222 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.replicacatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.replica.DataProductType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.List;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductMetadataEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductMetadataEntity.java
index 5cf844b78f..53d329ca08 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductMetadataEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataProductMetadataEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.replicacatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaLocationEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaLocationEntity.java
index 89b9bd3d64..fb00966a88 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaLocationEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaLocationEntity.java
@@ -20,10 +20,10 @@
 */
 package org.apache.airavata.registry.core.entities.replicacatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.data.replica.ReplicaLocationCategory;
 import org.apache.airavata.model.data.replica.ReplicaPersistentType;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 import java.util.Map;
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaMetadataEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaMetadataEntity.java
index bf50f8cdfe..5d5cc790fb 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaMetadataEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/replicacatalog/DataReplicaMetadataEntity.java
@@ -21,6 +21,7 @@
 package org.apache.airavata.registry.core.entities.replicacatalog;
 
 import jakarta.persistence.*;
+
 import java.io.Serializable;
 
 /**
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/ComponentStatusEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/ComponentStatusEntity.java
index 9276bf94fa..985c084178 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/ComponentStatusEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/ComponentStatusEntity.java
@@ -24,6 +24,7 @@ import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
 import jakarta.persistence.Id;
 import jakarta.persistence.Table;
+
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/EdgeEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/EdgeEntity.java
index 9c99a1b9b3..74e81beae0 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/EdgeEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/EdgeEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.workflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.ComponentStatus;
 
-import jakarta.persistence.*;
 import java.io.Serializable;
 import java.sql.Timestamp;
 
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/NodeEntity.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/NodeEntity.java
index ff6c006216..ab1175eb77 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/NodeEntity.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/entities/workflowcatalog/NodeEntity.java
@@ -20,9 +20,9 @@
 */
 package org.apache.airavata.registry.core.entities.workflowcatalog;
 
+import jakarta.persistence.*;
 import org.apache.airavata.model.ComponentStatus;
 
-import jakarta.persistence.*;
... 4578 lines suppressed ...