2.6 Release Notes
2.6 Release Notes
Major Features in 2.6
- Allow the ability to edit published assessments and re-grade submissions. - SAK-8432Getting issue details... STATUS
- UCT contributed improvements:1) Group scoped tests 2) Improvements to statistics reporting 3)Include part scores in spreadsheet export. - SAK-13058Getting issue details... STATUS
- Missing confirm screen after Submit for Grading. (Based on contributed code from Rutgers) - SAK-13545Getting issue details... STATUS
- Auto-submit at due date in Tests & Quizzes/Samigo. - SAK-14474Getting issue details... STATUS
- Enhancements to Audio Recording Applet. - SAK-14380Getting issue details... STATUS
- Show the anonymous users their test results immediately after they submit the assessment. Contributed by ASU. - SAK-14273Getting issue details... STATUS
- Ability to share question pools with site members. Contributed by UPV. - SAK-14147Getting issue details... STATUS
- Negative point value for incorrect answer selection. Contributed by UPV. - SAK-14106Getting issue details... STATUS
- Samigo published assessments should be registered as Entities in the Entity Broker and available through the direct servlet. Contributed by ASU. - SAK-14042Getting issue details... STATUS
- Misc. Improvements to UX and Performance.
Issues resolved in 2.6.0
Click to see Issues resolved in 2.6
Issues resolved after 2.6.0.
Click to see Issues resolved in 2.6.x
Known issues:
Click to see Samigo Known Issues
Configuration:
sakai.properties settings:
# SAMIGO CONFIGURATION # ** Samigo File Upload question type settings ** # the following default settings: # com.corejsf.UploadFilter.repositoryPath, # com.corejsf.UploadFilter.sizeThreshold, # com.corejsf.UploadFilter.sizeMax and # com.corejsf.UploadFilter.saveMediaToDb # in Samigo web.xml can be overidden with the following settings in sakai.properties: samigo.answerUploadRepositoryPath=/tmp/ samigo.sizeThreshold=512 samigo.sizeMax=20480 samigo.saveMediaToDb=false # The email settings are for Samigo only. They are used because Sakai email # doesn't support Resources attachments. Samigo first looks to these settings # instead of the regular Sakai email settings. If they are not set, the # Sakai eamil settings will be used. Please note, these settings do not # override the usual Sakai settings. # # outgoing SMTP server (If not set, the Sakai smtp server setting will be used) #samigo.smtp.server= # outgoing SMTP port (If not set, the default part 25 will be used) #samigo.smtp.port= # # Temp directory for handling email attachment files. samigo.email.prefixedPath=/tmp/ # This is for Samlite, the word-2-QTI converter (default is true) samigo.samliteEnabled=true # Edit Published Assessment # When samigo.editPubAssessment.restricted is set to false, the published assessment is editable even if students have started taking it. # Default is true. # samigo.editPubAssessment.restricted=true # When samigo.editPubAnonyGrading.restricted is set to true, the Students' Identities section in published settings is not editable. # Default is false. # samigo.editPubAnonyGrading.restricted=false # --- Samigo Automatic Submission feature --- # Set samigo.autoSubmisson.enabled = true to enable Automatic Submission feature. (Default is false). # samigo.autoSubmit.enabled=true # After this feature enabled, please run the following sql to make it show up in the pre-populated assessment types # For mysql # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (NULL, 1, 'automaticSubmission_isInstructorEditable', 'true'); # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (NULL, (SELECT ID FROM SAM_ASSESSMENTBASE_T WHERE TITLE='Quiz' AND TYPEID='142' AND ISTEMPLATE=1), 'automaticSubmission_isInstructorEditable', 'true'); # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (NULL, (SELECT ID FROM SAM_ASSESSMENTBASE_T WHERE TITLE='Problem Set' AND TYPEID='142' AND ISTEMPLATE=1), 'automaticSubmission_isInstructorEditable', 'true'); # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (NULL, (SELECT ID FROM SAM_ASSESSMENTBASE_T WHERE TITLE='Test' AND TYPEID='142' AND ISTEMPLATE=1), 'automaticSubmission_isInstructorEditable', 'true'); # For oracle # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (sam_assessMetaData_id_s.nextVal, 1, 'automaticSubmission_isInstructorEditable', 'true'); # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (sam_assessMetaData_id_s.nextVal, (SELECT ID FROM SAM_ASSESSMENTBASE_T WHERE TITLE='Quiz' AND TYPEID='142' AND ISTEMPLATE=1), 'automaticSubmission_isInstructorEditable', 'true'); # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (sam_assessMetaData_id_s.nextVal, (SELECT ID FROM SAM_ASSESSMENTBASE_T WHERE TITLE='Problem Set' AND TYPEID='142' AND ISTEMPLATE=1), 'automaticSubmission_isInstructorEditable', 'true'); # INSERT INTO SAM_ASSESSMETADATA_T (ASSESSMENTMETADATAID, ASSESSMENTID, LABEL, ENTRY) VALUES (sam_assessMetaData_id_s.nextVal, (SELECT ID FROM SAM_ASSESSMENTBASE_T WHERE TITLE='Test' AND TYPEID='142' AND ISTEMPLATE=1), 'automaticSubmission_isInstructorEditable', 'true'); # --- end of Samigo Automatic Submission feature ---
File Upload and Audio Recording questions:
For File Upload and Audio Recording questions in Samigo, answers are saved to DB as a blob by default. If you want to save answers to files, you can override this default by adding the following in your sakai.properties file.
\# \*\* Samigo File Upload question type settings \*\* \# the following default settings \# com.corejsf.UploadFilter.repositoryPath, \# com.corejsf.UploadFilter.sizeThreshold, \# com.corejsf.UploadFilter.sizeMax and \# com.corejsf.UploadFilter.saveMediaToDb in Samigo web.xml \# can be overidden with the following settings in sakai.properties samigo.answerUploadRepositoryPath=/sakaitmp/ samigo.sizeThreshold=512 samigo.sizeMax=20480 samigo.saveMediaToDb=false
Please make sure that Sakai has write privilege to the directory specified in samigo.answerUploadRepositoryPath.
When saveToDB is true, SAM_MEDIA_T.MEDIA must be a blob or equivalent to work. If you're running Oracle and using auto.ddl to create tables, you should check the data type of the "MEDIA" column in the SAM_MEDIA_T table. Hibernate tries to choose the right data type for this field, but has a habit of choosing the wrong one for Oracle. The correct types for each database are:
- HSQLDB --> varbinary
- Oracle --> blob
- MySQL --> longblob
Audio recording questions (since 2.2):
Audio recording questions are turned on by default. You can turn it off by modifying sam/samigo-app/src/webapp/WEB-INF/faceconfig.xml, and changing the showAudio to false.
<managed-property>
<property-name>showAudio</property-name>
<value>false</value>
</managed-property>
Audio recording uses the same storage configuration as File Upload questions, so they can be configured to be stored either in DB or files.
Audio recording questions uses an Audio Recording Applet (Based on Sun's Java Sound API) to record. Because the default JRE installation doesn't allow Java to record audio from your computer's sound card, you have to do one of the following:
1. Modify your java.policy file and add the following permissions:
permission javax.sound.sampled.AudioPermission "record"; permission java.io.FilePermission "<<ALL FILES>>", "read, write"; permission java.util.PropertyPermission "user.dir", "read";
Or
2. Obtain a digital certificate and use it to sign the applet.
Here is an example we used on our dev instance, coursework-s1, to get a self-signed certificate : 1. assuming we have deployed sakai in tomcat already, i.e. samigo.war has expanded in tomcat/webapps, kill tomcat 2. create ketstore keytool -genkey -keyalg RSA -keystore ~/applet-keystore/audio_applet_keystore -alias audioApplet -keypass mypassword -validity 3650 I used these value when prompted "CN=Lydia Li, OU=Stanford, O=Stanford, L=Stanford, ST=CA, C=US" 3. create self-signed certificate keytool -selfcert -keystore ~/applet-keystore/audio_applet_keystore -alias audioApplet -dname "CN=Lydia Li, OU=Stanford, O=Stanford, L=Stanford, ST=CA, C=US" -validity 3650 4. signing applet cd ../tomcat/webapps/samigo/applets jarsigner -keystore ~/applet-keystore/audio_applet_keystore -storepass mypassword sakai-samigo-audio-dev.jar audioApplet jarsigner -verify sakai-samigo-audio-dev.jar 5. restart tomcat In production, you will probably need to get an officially signed applet. References used 1. http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html 2. http://www-personal.umich.edu/~lsiden/tutorials/signed-applet/signed-applet.html 3. http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/keytool.html
Or
3. There is also a 3rd way, which is to sign the applet during maven build/deploy. Modify your sakai/sam/samigo-audio/pom.xml file, and the jar will be signed and deployed.
<!--replace your alias, storepass and keystore location --> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <goals> <goal>sign</goal> </goals> </execution> </executions> <configuration> <keystore>/somepath/your.keystore</keystore> <alias>youralias</alias> <storepass>yourpassword</storepass> <verify>true</verify> </configuration> </plugin> </plugins> <resources> ... </resources> </build>
Temporary file location for QTI Assessment Import
Currently, by default QTI Assessment Import also uses the com.corejsf.UploadFilter.repositoryPath parameter in web.xml as the location to store a temporary file. These temporary files are removed after the import is completed. com.corejsf.UploadFilter.repositoryPath is set to /tmp by default. This again can be overridden in sakai.properties the same way as in File Upload/Audio recording questions. Please make sure that Sakai has write privilege to this directory.
For example,
samigo.answerUploadRepositoryPath=/sakaitmp/
Conversion from previous versions
If you are upgrading from an earlier version, after you finish running the conversion script, please be sure to turn off autoddl by setting autoddl=false in your sakai.properties file. There is a known issue with autoddl=true which causes duplicate indexes to be created.