Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/QaAppConstants.java
===================================================================
diff -u -r5137b070eb144e247a323c143293151ca039f1b6 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/QaAppConstants.java (.../QaAppConstants.java) (revision 5137b070eb144e247a323c143293151ca039f1b6)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/QaAppConstants.java (.../QaAppConstants.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -99,7 +99,6 @@
public static final String IS_USERNAME_VISIBLE_MONITORING ="isUsernameVisibleMonitoring";
public static final String IS_SYNCH_INMONITOR_MONITORING ="isSynchInMonitorMonitoring";
public static final String IS_QUESTIONS_SEQUENCED_MONITORING ="isQuestionsSequencedMonitoring";
- public static final String USER_ID ="userId";
public static final String RICHTEXT_OFFLINEINSTRUCTIONS ="richTextOfflineInstructions";
public static final String RICHTEXT_ONLINEINSTRUCTIONS ="richTextOnlineInstructions";
public static final String RICHTEXT_TITLE ="richTextTitle";
@@ -265,18 +264,8 @@
public static final String FEEDBACK_TYPE_SEQUENTIAL ="You will be presented a total of : ";
public static final String FEEDBACK_TYPE_COMBINED ="You are being presented a total of : ";
public static final String QUESTIONS =" questions.";
+
/**
- * refers to current tool user whether an author or a learner
- */
- public static final String TOOL_USER ="toolUser";
- /**
- * these indicate current user's reporting data
- */
- public static final String CURRENT_TOOL_USER_FULLNAME ="currentToolUserFullname";
- public static final String CURRENT_TOOL_USER_ATTEMPTTIME ="currentToolUserAttemptTime";
- public static final String CURRENT_TOOL_USER_ANSWER ="currentToolUserAnswer";
-
- /**
* constants redundant for the moment
*/
public static final String DISPLAY_QUESTIONS ="display";
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/QaUtils.java
===================================================================
diff -u -r5137b070eb144e247a323c143293151ca039f1b6 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/QaUtils.java (.../QaUtils.java) (revision 5137b070eb144e247a323c143293151ca039f1b6)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/QaUtils.java (.../QaUtils.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -21,19 +21,22 @@
import java.util.TreeMap;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.upload.FormFile;
import org.lamsfoundation.lams.contentrepository.NodeKey;
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.tool.qa.web.QaAuthoringForm;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
/**
*
*
- * The session attributes ATTR_USERDATA and TOOL_USER refer to the same User object.
- * TOOL_USER is the one we consistently use across the application to obtain current user data.
+ * The session attributes ATTR_USERDATA refer to the same User object.
*
* Verify the assumption:
* We make the assumption that the obtained User object will habe a userId property ready in it.
@@ -143,13 +146,9 @@
request.getSession().removeAttribute(CHECK_ALL_SESSIONS_COMPLETED);
request.getSession().removeAttribute(TOOL_CONTENT_ID);
request.getSession().removeAttribute(ATTR_USERDATA);
- request.getSession().removeAttribute(TOOL_USER);
request.getSession().removeAttribute(TOOL_SERVICE);
request.getSession().removeAttribute(TARGET_MODE);
-
- request.getSession().removeAttribute(CURRENT_TOOL_USER_FULLNAME);
- request.getSession().removeAttribute(CURRENT_TOOL_USER_ATTEMPTTIME);
- request.getSession().removeAttribute(CURRENT_TOOL_USER_ANSWER);
+
}
public static void setDefaultSessionAttributes(HttpServletRequest request, QaContent defaultQaContent, QaAuthoringForm qaAuthoringForm)
@@ -222,9 +221,11 @@
public static int getCurrentUserId(HttpServletRequest request) throws QaApplicationException
{
- User user=(User) request.getSession().getAttribute(TOOL_USER);
- logger.debug(logger + " " + "QaUtils" + " Current user is: " + user + " with id: " + user.getUserId());
- return user.getUserId().intValue();
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
+ logger.debug(logger + " " + "QaUtils" + " Current user is: " + user + " with id: " + user.getUserID());
+ return user.getUserID().intValue();
}
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/AuthoringUtil.java
===================================================================
diff -u -r5137b070eb144e247a323c143293151ca039f1b6 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/AuthoringUtil.java (.../AuthoringUtil.java) (revision 5137b070eb144e247a323c143293151ca039f1b6)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/AuthoringUtil.java (.../AuthoringUtil.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -15,6 +15,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
@@ -27,6 +28,9 @@
import org.lamsfoundation.lams.tool.qa.QaUtils;
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
/**
*
@@ -351,12 +355,14 @@
/**obtain user object from the session*/
- User toolUser=(User)request.getSession().getAttribute(TOOL_USER);
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO toolUser = (UserDTO) ss.getAttribute(AttributeNames.USER);
logger.debug("retrieving toolUser: " + toolUser);
- logger.debug("retrieving toolUser userId: " + toolUser.getUserId());
+ logger.debug("retrieving toolUser userId: " + toolUser.getUserID());
String fullName= toolUser.getFirstName() + " " + toolUser.getLastName();
logger.debug("retrieving toolUser fullname: " + fullName);
- long userId=toolUser.getUserId().longValue();
+ long userId=toolUser.getUserID().longValue();
/** create a new qa content and leave the default content intact*/
QaContent qa = new QaContent();
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/LearningUtil.java
===================================================================
diff -u -r5583b96031dbb65e91d200b7121cc5cd49e26003 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/LearningUtil.java (.../LearningUtil.java) (revision 5583b96031dbb65e91d200b7121cc5cd49e26003)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/LearningUtil.java (.../LearningUtil.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -14,6 +14,7 @@
import java.util.TreeSet;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.lamsfoundation.lams.tool.qa.QaAppConstants;
@@ -27,6 +28,9 @@
import org.lamsfoundation.lams.tool.qa.QaUtils;
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
/**
*
@@ -155,9 +159,11 @@
IQaService qaService =QaUtils.getToolService(request);
logger.debug("createUsers-retrieving qaService: " + qaService);
- User toolUser=(User)request.getSession().getAttribute(TOOL_USER);
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO toolUser = (UserDTO) ss.getAttribute(AttributeNames.USER);
logger.debug("retrieving toolUser: " + toolUser);
- logger.debug("retrieving toolUser userId: " + toolUser.getUserId());
+ logger.debug("retrieving toolUser userId: " + toolUser.getUserID());
logger.debug("retrieving toolUser username: " + toolUser.getLogin());
/**
* !!double check this!!
@@ -166,7 +172,7 @@
String fullName= toolUser.getFirstName() + " " + toolUser.getLastName();
logger.debug("retrieving toolUser fullname: " + fullName);
- Long userId=new Long(toolUser.getUserId().longValue());
+ Long userId=new Long(toolUser.getUserID().longValue());
/**
* retrive contentId from the http session
@@ -448,7 +454,9 @@
/**
* find out whos is the current user. Important to know for reporting responses in learning mode
*/
- User toolUser=(User)request.getSession().getAttribute(TOOL_USER);
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO toolUser = (UserDTO) ss.getAttribute(AttributeNames.USER);
logger.debug("retrieving toolUser: " + toolUser + " userName: " + toolUser.getLogin());
/**
* !!double check if String userName=toolUser.getLogin();
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/MonitoringUtil.java
===================================================================
diff -u -r183fd9b105d8f11b7ab038be49e542499d28b970 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/MonitoringUtil.java (.../MonitoringUtil.java) (revision 183fd9b105d8f11b7ab038be49e542499d28b970)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/MonitoringUtil.java (.../MonitoringUtil.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -80,7 +80,6 @@
request.getSession().removeAttribute(CHECK_ALL_SESSIONS_COMPLETED);
request.getSession().removeAttribute(TOOL_CONTENT_ID);
request.getSession().removeAttribute(ATTR_USERDATA);
- request.getSession().removeAttribute(TOOL_USER);
request.getSession().removeAttribute(TOOL_SERVICE);
request.getSession().removeAttribute(TARGET_MODE);
}
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QAction.java
===================================================================
diff -u -r5137b070eb144e247a323c143293151ca039f1b6 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QAction.java (.../QAction.java) (revision 5137b070eb144e247a323c143293151ca039f1b6)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QAction.java (.../QAction.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -27,6 +27,7 @@
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.Globals;
@@ -42,6 +43,9 @@
import org.lamsfoundation.lams.tool.qa.QaUtils;
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
/**
@@ -562,7 +566,9 @@
*/
Long toolSessionId=(Long)request.getSession().getAttribute(TOOL_SESSION_ID);
- User user=(User)request.getSession().getAttribute(TOOL_USER);
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
logger.debug("simulating container behaviour by calling " +
"leaveToolSession() with toolSessionId: " + toolSessionId + " and user: " + user);
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaExportPortfolioStarterAction.java
===================================================================
diff -u -r0609dfb2ce1f4bd0463cff44b56481f42bc6c7f1 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaExportPortfolioStarterAction.java (.../QaExportPortfolioStarterAction.java) (revision 0609dfb2ce1f4bd0463cff44b56481f42bc6c7f1)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaExportPortfolioStarterAction.java (.../QaExportPortfolioStarterAction.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -31,6 +31,7 @@
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.Globals;
@@ -51,6 +52,9 @@
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
public class QaExportPortfolioStarterAction extends Action implements QaAppConstants {
static Logger logger = Logger.getLogger(QaExportPortfolioStarterAction.class.getName());
@@ -81,32 +85,17 @@
* obtain and setup the current user's data
*/
- String userId="";
- userId=request.getParameter(USER_ID);
- logger.debug("userId: " + userId);
- try
- {
- User user=QaUtils.createSimpleUser(new Integer(userId));
- request.getSession().setAttribute(TOOL_USER, user);
- }
- catch(NumberFormatException e)
- {
- persistError(request,"error.userId.notNumeric");
- request.setAttribute(USER_EXCEPTION_USERID_NOTNUMERIC, new Boolean(true));
- logger.debug("forwarding to: " + PORTFOLIO_REPORT);
- return (mapping.findForward(PORTFOLIO_REPORT));
- }
-
-
- if ((userId == null) || (userId.length()==0))
- {
+ //get session from shared session.
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
+ if ((user == null) || (user.getUserID() == null))
+ {
logger.debug("error: The tool expects userId");
- persistError(request,"error.userId.required");
+ persistError(request,"error.authoringUser.notAvailable");
request.setAttribute(USER_EXCEPTION_USERID_NOTAVAILABLE, new Boolean(true));
- logger.debug("forwarding to: " + PORTFOLIO_REPORT);
- return (mapping.findForward(PORTFOLIO_REPORT));
- }
- logger.debug("TOOL_USER is:" + request.getSession().getAttribute(TOOL_USER));
+ return (mapping.findForward(LOAD_QUESTIONS));
+ }
String mode="";
mode=request.getParameter(MODE);
@@ -216,7 +205,7 @@
}
/**
- at this point we have session attributes TOOL_CONTENT_ID, TOOL_SESSION_ID and TOOL_USER AND MODE ready to use
+ at this point we have session attributes TOOL_CONTENT_ID, TOOL_SESSION_ID AND MODE ready to use
*/
mode=(String)request.getSession().getAttribute(MODE);
@@ -241,11 +230,10 @@
logger.debug("IS_USERNAME_VISIBLE: " + qaContent.isUsernameVisible());
request.getSession().setAttribute(IS_USERNAME_VISIBLE, new Boolean(qaContent.isUsernameVisible()));
- logger.debug("TOOL_USER is:" + request.getSession().getAttribute(TOOL_USER));
- User toolUser= (User)request.getSession().getAttribute(TOOL_USER);
- logger.debug("TOOL_USER id:" + toolUser.getUserId());
+ logger.debug("TOOL USER is:" + user);
+ logger.debug("TOOL USER id:" + user.getUserID());
- QaQueUsr qaQueUsr=qaService.loadQaQueUsr(new Long(toolUser.getUserId().longValue()));
+ QaQueUsr qaQueUsr=qaService.loadQaQueUsr(new Long(user.getUserID().longValue()));
logger.debug("qaQueUsr:" + qaQueUsr);
if (qaQueUsr != null)
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaLearningStarterAction.java
===================================================================
diff -u -r2cf549098f28a78e5a5f18cdc1a7ec8eaa02787e -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaLearningStarterAction.java (.../QaLearningStarterAction.java) (revision 2cf549098f28a78e5a5f18cdc1a7ec8eaa02787e)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaLearningStarterAction.java (.../QaLearningStarterAction.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -12,6 +12,7 @@
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.Globals;
@@ -33,6 +34,9 @@
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
/**
* TO DO:
* remove line:
@@ -151,30 +155,21 @@
/**
* obtain and setup the current user's data
*/
- String userId=request.getParameter(USER_ID);
- if ((userId == null) || (userId.length()==0))
- {
+ String userId = "";
+ //get session from shared session.
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
+ if ((user == null) || (user.getUserID() == null))
+ {
logger.debug("error: The tool expects userId");
persistError(request,"error.authoringUser.notAvailable");
request.setAttribute(USER_EXCEPTION_USERID_NOTAVAILABLE, new Boolean(true));
- logger.debug("forwarding to: " + LOAD);
- return (mapping.findForward(LOAD));
- }
+ return (mapping.findForward(LOAD_QUESTIONS));
+ }else
+ userId = user.getUserID().toString();
+
- try
- {
- User user=QaUtils.createUser(new Integer(userId));
- request.getSession().setAttribute(TOOL_USER, user);
- }
- catch(NumberFormatException e)
- {
- persistError(request,"error.userId.notNumeric");
- request.setAttribute(USER_EXCEPTION_USERID_NOTNUMERIC, new Boolean(true));
- logger.debug("forwarding to: " + LOAD);
- return (mapping.findForward(LOAD));
- }
- logger.debug("TOOL_USER is:" + request.getSession().getAttribute(TOOL_USER));
-
/**
* process incoming tool session id and later derive toolContentId from it.
*/
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringStarterAction.java
===================================================================
diff -u -r1213de28fa1704749c2b8cc7029667a5e944cef8 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringStarterAction.java (.../QaMonitoringStarterAction.java) (revision 1213de28fa1704749c2b8cc7029667a5e944cef8)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringStarterAction.java (.../QaMonitoringStarterAction.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -30,6 +30,7 @@
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.Globals;
@@ -49,6 +50,9 @@
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
public class QaMonitoringStarterAction extends Action implements QaAppConstants {
static Logger logger = Logger.getLogger(QaMonitoringStarterAction.class.getName());
@@ -84,38 +88,22 @@
/**
* obtain and setup the current user's data
*/
-
- String userId="";
- User toolUser=(User)request.getSession().getAttribute(TOOL_USER);
- if (toolUser != null)
- userId=toolUser.getUserId().toString();
- else
- {
- userId=request.getParameter(USER_ID);
- try
- {
- User user=QaUtils.createSimpleUser(new Integer(userId));
- request.getSession().setAttribute(TOOL_USER, user);
- }
- catch(NumberFormatException e)
- {
- persistError(request,"error.userId.notNumeric");
- request.setAttribute(USER_EXCEPTION_USERID_NOTNUMERIC, new Boolean(true));
- logger.debug("forwarding to: " + MONITORING_REPORT);
- return (mapping.findForward(MONITORING_REPORT));
- }
- }
-
- if ((userId == null) || (userId.length()==0))
- {
+ String userId = "";
+ //get session from shared session.
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
+ if ((user == null) || (user.getUserID() == null))
+ {
logger.debug("error: The tool expects userId");
persistError(request,"error.authoringUser.notAvailable");
request.setAttribute(USER_EXCEPTION_USERID_NOTAVAILABLE, new Boolean(true));
- logger.debug("forwarding to: " + MONITORING_REPORT);
- return (mapping.findForward(MONITORING_REPORT));
- }
- logger.debug("TOOL_USER is:" + request.getSession().getAttribute(TOOL_USER));
+ return (mapping.findForward(LOAD_QUESTIONS));
+ }else
+ userId = user.getUserID().toString();
+ logger.debug("TOOL_USER is:" + user);
+
String toolContentId=request.getParameter(TOOL_CONTENT_ID);
logger.debug("TOOL_CONTENT_ID: " + toolContentId);
Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaStarterAction.java
===================================================================
diff -u -r5137b070eb144e247a323c143293151ca039f1b6 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaStarterAction.java (.../QaStarterAction.java) (revision 5137b070eb144e247a323c143293151ca039f1b6)
+++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaStarterAction.java (.../QaStarterAction.java) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -76,6 +76,7 @@
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts.Globals;
@@ -94,6 +95,9 @@
import org.lamsfoundation.lams.tool.qa.service.IQaService;
import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.web.session.SessionManager;
+import org.lamsfoundation.lams.web.util.AttributeNames;
public class QaStarterAction extends Action implements QaAppConstants {
@@ -145,36 +149,18 @@
/**
* obtain and setup the current user's data
*/
- String userId="";
- User toolUser=(User)request.getSession().getAttribute(TOOL_USER);
- if (toolUser != null)
- userId=toolUser.getUserId().toString();
- else
- {
- userId=request.getParameter(USER_ID);
- if ((userId == null) || (userId.length()==0))
- {
- logger.debug("error: The tool expects userId");
- persistError(request,"error.authoringUser.notAvailable");
- request.setAttribute(USER_EXCEPTION_USERID_NOTAVAILABLE, new Boolean(true));
- return (mapping.findForward(LOAD_QUESTIONS));
- }
-
- try
- {
- /* Check QaUtils.createAuthoringUser again User Management Service is ready */
- User user=QaUtils.createSimpleUser(new Integer(userId));
- request.getSession().setAttribute(TOOL_USER, user);
- }
- catch(NumberFormatException e)
- {
- persistError(request,"error.userId.notNumeric");
- request.setAttribute(USER_EXCEPTION_USERID_NOTNUMERIC, new Boolean(true));
- return (mapping.findForward(LOAD_QUESTIONS));
- }
- }
+ //get session from shared session.
+ HttpSession ss = SessionManager.getSession();
+ //get back login user DTO
+ UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER);
+ if ((user == null) || (user.getUserID() == null))
+ {
+ logger.debug("error: The tool expects userId");
+ persistError(request,"error.authoringUser.notAvailable");
+ request.setAttribute(USER_EXCEPTION_USERID_NOTAVAILABLE, new Boolean(true));
+ return (mapping.findForward(LOAD_QUESTIONS));
+ }
-
/**
* retrieve the default content id based on tool signature
*/
Index: lams_tool_laqa/web/WEB-INF/web.xml
===================================================================
diff -u -r8eb0ff15b8d67a73bbca9af09ca0486fa6f6eb63 -r3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86
--- lams_tool_laqa/web/WEB-INF/web.xml (.../web.xml) (revision 8eb0ff15b8d67a73bbca9af09ca0486fa6f6eb63)
+++ lams_tool_laqa/web/WEB-INF/web.xml (.../web.xml) (revision 3b5a7ca8b9fe39d0ce74e4403356c817aa4a7f86)
@@ -34,7 +34,20 @@
contentFilter
/portfolioExport
-->
-
+
+
+ SystemSessionFilter
+
+ org.lamsfoundation.lams.web.session.SystemSessionFilter
+
+
+
+
+ SystemSessionFilter
+ /*
+
+
+
exportPortfolio
Export Portfolio