Index: dbLearnStar-webApp/src/main/java/dblearnstar/webapp/pages/QueryTest.java
===================================================================
--- dbLearnStar-webApp/src/main/java/dblearnstar/webapp/pages/QueryTest.java	(revision 1867432bbb3215b0fb0dc95fde3fd3883f65ec1b)
+++ dbLearnStar-webApp/src/main/java/dblearnstar/webapp/pages/QueryTest.java	(revision e97112dd529031d1ff9b2420ccd441fe2fcff30e)
@@ -39,4 +39,5 @@
 
 import org.apache.commons.fileupload.FileUploadException;
+import org.apache.tapestry5.EventContext;
 import org.apache.tapestry5.PersistenceConstants;
 import org.apache.tapestry5.StreamResponse;
@@ -135,5 +136,5 @@
 
 	@Property
-	@Persist
+//	@Persist
 	private TaskInTestInstance taskInTestInstance;
 	@Property
@@ -191,5 +192,5 @@
 	private String oneHeader;
 
-	private long studentId;
+	private Long studentId;
 	private boolean toUpload;
 	private boolean toSubmitText;
@@ -279,38 +280,47 @@
 	}
 
-	public void onActivate() {
-		logger.debug("onActivate: empty");
-		studentId = pm.getStudentsByPersonId(userInfo.getPersonId()).get(0).getStudentId();
-	}
-
-	public Object onActivate(TaskInTestInstance tti) {
-		logger.debug("onActivate: {}", tti.getTaskInTestInstanceId());
-		taskInTestInstance = genericService.getByPK(TaskInTestInstance.class, tti.getTaskInTestInstanceId());
-		Student student = pm.getStudentsByPersonId(userInfo.getPersonId()).get(0);
-
-		if (userInfo.isAdministrator() || testManager.accessToTaskInTestInstanceAllowed(student, tti)) {
-			studentId = student.getStudentId();
-			codeType = taskInTestInstance.getTask().getTaskIsOfTypes().get(0).getTaskType().getCodetype();
-
-			resultsErrors = null;
-			resultsSimple = null;
-
-			resultsEvaluation = null;
-			resultsHeadersSimple = null;
-			taskInTestInstance = genericService.getByPK(TaskInTestInstance.class,
-					taskInTestInstance.getTaskInTestInstanceId());
-			if (filterNotForEvalution == null) {
-				filterNotForEvalution = false;
-			}
-			recordActivity(ModelConstants.ActivityViewTask, "", "onActivity");
-			toUpload = false;
-			logger.debug("access allowed");
-			accessAllowed = true;
-			return null;
-		} else {
-			accessAllowed = false;
-			logger.error("Task not allowed: ttiId:{} username:{}", tti.getTaskInTestInstanceId(),
-					student.getPerson().getUserName());
+	public Object onActivate(EventContext eventContext) {
+		if (eventContext.getCount() > 1) {
 			return ExamsAndTasksOverviewPage.class;
+		} else if (eventContext.getCount() == 1) {
+			TaskInTestInstance tti = eventContext.get(TaskInTestInstance.class, 0);
+			if (tti == null) {
+				logger.error("tti is null, username:{}", userInfo.getUserName());
+				return ExamsAndTasksOverviewPage.class;
+			} else {
+				logger.info("onActivate: {}", tti.getTaskInTestInstanceId());
+				taskInTestInstance = genericService.getByPK(TaskInTestInstance.class, tti.getTaskInTestInstanceId());
+				Student student = pm.getStudentsByPersonId(userInfo.getPersonId()).get(0);
+				studentId = student.getStudentId();
+
+				if (userInfo.isAdministrator() || testManager.accessToTaskInTestInstanceAllowed(student, tti)) {
+					studentId = student.getStudentId();
+					codeType = taskInTestInstance.getTask().getTaskIsOfTypes().get(0).getTaskType().getCodetype();
+
+					resultsErrors = null;
+					resultsSimple = null;
+
+					resultsEvaluation = null;
+					resultsHeadersSimple = null;
+					taskInTestInstance = genericService.getByPK(TaskInTestInstance.class,
+							taskInTestInstance.getTaskInTestInstanceId());
+					if (filterNotForEvalution == null) {
+						filterNotForEvalution = false;
+					}
+					recordActivity(ModelConstants.ActivityViewTask, "", "onActivity");
+					toUpload = false;
+					logger.debug("access allowed");
+					accessAllowed = true;
+					return null;
+				} else {
+					accessAllowed = false;
+					logger.error("Task not allowed: ttiId:{} username:{}", tti.getTaskInTestInstanceId(),
+							userInfo.getUserName());
+					return ExamsAndTasksOverviewPage.class;
+				}
+			}
+		} else {
+			logger.error("Task not selected username:{}", userInfo.getUserName());
+			return ExamsAndTasksOverviewPage.class; // no tti selected
 		}
 	}
@@ -331,5 +341,5 @@
 	@CommitAfter
 	public void recordActivity(String type, String payload, String issuer) {
-		logger.debug("recordActivity RECEIVED: {},{},{}", type, issuer, payload);
+		logger.info("recordActivity RECEIVED: {},{},{}", type, issuer, payload);
 		Student student = pm.getStudentsByPersonId(userInfo.getPersonId()).get(0);
 		testManager.recordActivityInTask(student.getPerson(), taskInTestInstance, type, payload);
@@ -343,5 +353,6 @@
 				if (lines != null && lines.size() > 0) {
 					String s = lines.get(0);
-					return s.substring(s.indexOf("Position:") + 10).split(" ")[0];
+					String posit = s.substring(s.indexOf("Position:") + 10).split(" ")[0];
+					return posit;
 				} else {
 					return "0";
