Index: 4.0.5/src/main/java/org/wso2/carbon/context/internal/CarbonContextDataHolder.java
===================================================================
--- 4.0.5/src/main/java/org/wso2/carbon/context/internal/CarbonContextDataHolder.java	(revision 153040)
+++ 4.0.5/src/main/java/org/wso2/carbon/context/internal/CarbonContextDataHolder.java	(working copy)
@@ -1677,7 +1677,19 @@
      * @return the username.
      */
     public String getUsername() {
-        return username;
+        if (username != null) {
+            return username;
+        } else {
+            MessageContext messageContext = MessageContext.getCurrentMessageContext();
+            HttpServletRequest request = (HttpServletRequest) messageContext.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);
+            HttpSession session = request.getSession(false);
+            if (session != null) {
+                username = (String) session.getAttribute(ServerConstants.USER_LOGGED_IN);
+                return username;
+            } else {
+                return null;
+            }
+        }
     }
 
     /**
