diff --git a/modules/charon-core/pom.xml b/modules/charon-core/pom.xml
index 16542b144..f11b837af 100644
--- a/modules/charon-core/pom.xml
+++ b/modules/charon-core/pom.xml
@@ -51,8 +51,8 @@
slf4j-api
- commons-lang
- commons-lang
+ org.apache.commons
+ commons-lang3
org.testng
@@ -104,7 +104,7 @@
org.json.*,
org.apache.commons.logging.*; version="${commons-logging.osgi.version.range}",
- org.apache.commons.lang.*; version="${commons-lang.wso2.osgi.version.range}",
+ org.apache.commons.lang3.*; version="${commons-lang3.wso2.osgi.version.range}",
org.apache.axiom.om.*; version="${axiom.osgi.version.range}",
javax.xml.namespace.*,
javax.xml.stream.*,
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/attributes/DefaultAttributeFactory.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/attributes/DefaultAttributeFactory.java
index 884a978a4..3a7d131c5 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/attributes/DefaultAttributeFactory.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/attributes/DefaultAttributeFactory.java
@@ -17,7 +17,7 @@
*/
package org.wso2.charon3.core.attributes;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.wso2.charon3.core.exceptions.BadRequestException;
import org.wso2.charon3.core.exceptions.CharonException;
import org.wso2.charon3.core.protocol.ResponseCodeConstants;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/config/ExtensionBuilder.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/config/ExtensionBuilder.java
index d19f9c88a..e00b87dbb 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/config/ExtensionBuilder.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/config/ExtensionBuilder.java
@@ -18,7 +18,7 @@
package org.wso2.charon3.core.config;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMSystemSchemaExtensionBuilder.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMSystemSchemaExtensionBuilder.java
index a67862fa5..ac97a6e52 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMSystemSchemaExtensionBuilder.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMSystemSchemaExtensionBuilder.java
@@ -18,7 +18,7 @@
package org.wso2.charon3.core.config;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMUserSchemaExtensionBuilder.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMUserSchemaExtensionBuilder.java
index 751563362..3d10d4424 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMUserSchemaExtensionBuilder.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/config/SCIMUserSchemaExtensionBuilder.java
@@ -15,7 +15,7 @@
*/
package org.wso2.charon3.core.config;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONDecoder.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONDecoder.java
index 94ceb5d76..b42b99926 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONDecoder.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONDecoder.java
@@ -15,7 +15,7 @@
*/
package org.wso2.charon3.core.encoder;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONEncoder.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONEncoder.java
index 092572c17..1636eb9a8 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONEncoder.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/encoder/JSONEncoder.java
@@ -17,7 +17,7 @@
*/
package org.wso2.charon3.core.encoder;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/Group.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/Group.java
index c9d06893d..a530095a1 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/Group.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/Group.java
@@ -17,7 +17,7 @@
*/
package org.wso2.charon3.core.objects;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.wso2.charon3.core.attributes.Attribute;
import org.wso2.charon3.core.attributes.ComplexAttribute;
import org.wso2.charon3.core.attributes.DefaultAttributeFactory;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/User.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/User.java
index d4dc5ab32..93eacec34 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/User.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/objects/User.java
@@ -17,7 +17,7 @@
*/
package org.wso2.charon3.core.objects;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.wso2.charon3.core.attributes.Attribute;
import org.wso2.charon3.core.attributes.ComplexAttribute;
import org.wso2.charon3.core.attributes.DefaultAttributeFactory;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/BulkRequestProcessor.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/BulkRequestProcessor.java
index e25a3f330..63f0eef93 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/BulkRequestProcessor.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/BulkRequestProcessor.java
@@ -17,7 +17,7 @@
*/
package org.wso2.charon3.core.protocol;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/GroupResourceManager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/GroupResourceManager.java
index fc359751b..001a1112c 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/GroupResourceManager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/GroupResourceManager.java
@@ -15,7 +15,7 @@
*/
package org.wso2.charon3.core.protocol.endpoints;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/MeResourceManager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/MeResourceManager.java
index 6f081615a..6993d9866 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/MeResourceManager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/MeResourceManager.java
@@ -16,7 +16,7 @@
package org.wso2.charon3.core.protocol.endpoints;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.wso2.charon3.core.encoder.JSONDecoder;
import org.wso2.charon3.core.encoder.JSONEncoder;
import org.wso2.charon3.core.exceptions.BadRequestException;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceManager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceManager.java
index e0445405b..8bc4480d9 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceManager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceManager.java
@@ -16,8 +16,8 @@
package org.wso2.charon3.core.protocol.endpoints;
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceV2Manager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceV2Manager.java
index 06c490f75..d93c9d22f 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceV2Manager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/RoleResourceV2Manager.java
@@ -18,8 +18,8 @@
package org.wso2.charon3.core.protocol.endpoints;
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/SchemaResourceManager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/SchemaResourceManager.java
index dd1627624..dc91bef96 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/SchemaResourceManager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/SchemaResourceManager.java
@@ -15,7 +15,7 @@
*/
package org.wso2.charon3.core.protocol.endpoints;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/UserResourceManager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/UserResourceManager.java
index ec4144692..1508bac8a 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/UserResourceManager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/protocol/endpoints/UserResourceManager.java
@@ -17,7 +17,7 @@
package org.wso2.charon3.core.protocol.endpoints;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.wso2.charon3.core.attributes.Attribute;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/schema/AbstractValidator.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/schema/AbstractValidator.java
index fc2d71ade..9a49f5c51 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/schema/AbstractValidator.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/schema/AbstractValidator.java
@@ -16,7 +16,7 @@
package org.wso2.charon3.core.schema;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.wso2.charon3.core.attributes.AbstractAttribute;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/AttributeUtil.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/AttributeUtil.java
index 0db7b0d5a..f2e31be2d 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/AttributeUtil.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/AttributeUtil.java
@@ -17,8 +17,8 @@
*/
package org.wso2.charon3.core.utils;
-import org.apache.commons.lang.StringUtils;
-import org.apache.commons.lang.math.NumberUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.math.NumberUtils;
import org.json.JSONObject;
import org.wso2.charon3.core.exceptions.BadRequestException;
import org.wso2.charon3.core.exceptions.CharonException;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/ResourceManagerUtil.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/ResourceManagerUtil.java
index 86d46a68c..58909fa16 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/ResourceManagerUtil.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/ResourceManagerUtil.java
@@ -16,7 +16,7 @@
package org.wso2.charon3.core.utils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.wso2.charon3.core.config.CharonConfiguration;
import org.wso2.charon3.core.exceptions.BadRequestException;
import org.wso2.charon3.core.exceptions.CharonException;
diff --git a/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/codeutils/FilterTreeManager.java b/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/codeutils/FilterTreeManager.java
index 0b001ab8b..7ed782213 100644
--- a/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/codeutils/FilterTreeManager.java
+++ b/modules/charon-core/src/main/java/org/wso2/charon3/core/utils/codeutils/FilterTreeManager.java
@@ -15,7 +15,7 @@
*/
package org.wso2.charon3.core.utils.codeutils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.wso2.charon3.core.exceptions.BadRequestException;
import org.wso2.charon3.core.protocol.ResponseCodeConstants;
import org.wso2.charon3.core.schema.SCIMConstants;
diff --git a/modules/charon-utils/src/main/java/org/wso2/charon3/utils/usermanager/InMemoryUserManager.java b/modules/charon-utils/src/main/java/org/wso2/charon3/utils/usermanager/InMemoryUserManager.java
index 8db2ec714..3de63f3be 100644
--- a/modules/charon-utils/src/main/java/org/wso2/charon3/utils/usermanager/InMemoryUserManager.java
+++ b/modules/charon-utils/src/main/java/org/wso2/charon3/utils/usermanager/InMemoryUserManager.java
@@ -18,7 +18,7 @@
package org.wso2.charon3.utils.usermanager;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/pom.xml b/pom.xml
index 053e29553..e40be4c1a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -104,9 +104,9 @@
${slf4j.version}
- commons-lang
- commons-lang
- ${commons.lang.version}
+ org.apache.commons
+ commons-lang3
+ ${commons.lang3.version}
@@ -458,8 +458,8 @@
2.7.3
2.12.6.1
- 2.6
- [2.6.0, 3.0.0)
+ 3.18.0
+ [3.18.0, 4.0.0)
1.7.26
4.9.8.2