Note: You are currently viewing documentation for Moodle 2.9. Up-to-date documentation for the latest stable version of Moodle may be available here: EJSApp.

EJSApp

From MoodleDocs
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The EJSApp Set of Plugins

EJSApp are a set of plugins for Moodle that let you:

  • To deploy applications written in Easy Java Simulations (EJS).
  • To control user access to the deployed EJS applications and distinguish between virtual labs (or simulations) and remote labs based on Java and/or Javascript.
  • To set several resizing options for displaying the embedded EJS applets.
  • To personalize the simulations created with EJS for each of your students.
  • To backup and restore thanks to Moodle course backups.
  • To use cloud storage for any data, image or state file created by the EJS application.
  • To create sessions for synchronous collaborative working with the Java applets created with Easy Java Simulations.
  • To manage and control the access to EJS remote laboratories by means of a booking system that gets integrated into Moodle.

EJSApp Activity

The EJSApp activity plugin allows users to embedd Easy Java Simulations (EJS) applications (such as simulations, virtual and remote laboratories) into a Moodle course. This plugin works with version 2.0 or higher of Moodle.

EJSApp plugin can be downloaded from Moodle Plugins Directory and from Github.

As with any customization, it is recommended that you have a good backup of your Moodle site before attempting to install contributed code. While those contributing code make every effort to provide the best code that they can, using contributed code nevertheless entails a certain degree of risk as contributed code is not as carefully reviewed and/or tested as the Moodle core code.

EJSApp is useful for adding simulations or remote laboratories into your Moodle courses, which is of especial interest for those of scientific or technical nature. More information about EJS and EJSApp can be obtained at http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle.

Installation

  • Code - Copy the files into your Moodle mod folder ($CFG->dirroot/mod)

WARNING: If you are updating ejsapp from a previous version, DO NOT replace/delete your old jarfiles directory inside your old ejsapp directory.

IMPORTANT: For Unix Moodle servers (e.g., Linux and Mac systems), EJSApp requires that (i) the apache user is the owner of the "jarfiles" dir inside the "ejsapp" dir, and (ii) it has permissions to read, write and execute the jarfiles dir.

The following points describe how to do it:

1) go to the ejsapp dir:                                                                       
$ cd ejsapp                                                                                    
                                                                                               
2) Change the owner of the jarfiles dir to apache.                                             
For instance,                                                                                  
2.a) in Linux CentOS, the apache user is "apache", so you should write                         
$ chown -R apache jarfiles                                                                     
2.b) in Linux OpenSuse, the apache user is "wwwrun", so you should write                       
$ chown -R wwwrun jarfiles                                                                     
                                                                                               
3) Change the permissions of the apache user:                                                  
$ chmod -R 700 jarfiles    
  • Database - Login in as a Moodle Administrator and go to the Administration notifications page to create the required EJSApp tables.
  • Settings - During the previous step you will come across the setting configuration page for the EJSApp plugin. Default values might be valid for you. However, read the description of each parameter there and change any value you want. The README.txt file that comes along with the EJSApp plugin has even more information about these parameters.

Configuration

When installing ejsapp for the first time, you will need to set six variables:

  • certificate_path: This variable defines the absolute path to the trust certificate file, if you have one for signing your Java applets.
  • certificate_password: This variable must contain the password of the trust certificate.
  • "certificate_alias": This variable stores the alias given to your trust certificate.
  • sarlab_IP: This variable defines the IP(s) address(es) of the SARLAB system(s) used for managing the access to the remote laboratories. If left empty, the plugin understands that SARLAB is not used.
  • sarlab_port: This variable defines the port(s) used to communicate with the SARLAB system(s). If left empty, the plugin understands that SARLAB is not used.
  • "sarlab_enc_key": This 16 characters long variable must be configure to match exactly the key set in the SARLAB system(s).

If you are not sure what values you should be setting for these parameters, use the ones by default.

Languages

The EJSApp activity plugin is available in:

  • English (en_utf8)
  • Spanish (es_utf8)

If you would like to supply translations for other languages, please create an issue in the tracker and attach a zip file of the language files.

Related Plugins

The EJSApp activity plugin works autonomously and does not require any other plugin to be installed in your Moodle site. However, there are three more plugins (the EJSAppBooking activity plugin and the EJSAppFileBrowser and the EJSAppCollabSession block plugins) that add new features to the system and might enhance the use of your EJS applications embedded into Moodle.

These additional plugins can also be downloaded from the EJSApp Set Webpage at Moodle Plugins Directory and from Github.

Contributor/Maintainer

The EJSApp activity plugin and the other three mentioned in the Related Plugins section are contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

EJSApp File Browser

This plugin is a modification of the "Private Files" block of Moodle and lets Java applets, created with Easy Java Simulations (EJS) and added to a Moodle course by means of the ejsapp module activity, to store data files saved from these applets. It also includes a little AJAX feature that let users to refresh their files block without refreshing the entire page.

Installation

This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.3 (or later) of EJSApp.

Contributor/Maintainer

The EJSApp file browser block is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

EJSApp Collab Sessions

This plugin lets you to create sessions for synchronous collaborative work with Java applets created with Easy Java Simulations (EJS) and added to a Moodle course by means of the ejsapp activity module.

Installation

This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.3 (or later) of EJSApp.

Contributor/Maintainer

The EJSApp collaborative sessions block is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

EJSApp Booking System

This plugin allows adding a booking system to handle the conections to the remote laboratories developed using EJS and added to a Moodle course using the ejsapp activity module.

Installation

This is a module plugin for Moodle so you should place the ejsappbooking folder in your /mod folder, inside you Moodle installation. This module has been tested in all Moodle 2.x versions.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.4 (or later) of EJSApp.

Contributor/Maintainer

The EJSApp file browser block is contributed and maintained by Luis de la Torre, Rubén Heradio and Francisco José Calvillo, from the Spanish Open University (UNED).

OSP Repository

This plugin lets you download any Easy Java (and Javascript) Simulations (EJS) application stored in the vast OSP-Compadre collection (http://www.compadre.org/osp) directly from your Moodle.

Installation

This is a repository plugin for Moodle so you should place the osp folder in your /repository folder, inside you Moodle installation.

Dependencies

This module DOES NOT need the ejsapp module. That being said, when used in combination with the EJSApp plugin, you will be able not only to access, search and download these applications but also to add them automatically to your Moodle courses as activities. Javascript simulations from the OSP library are only accesible with OSP 1.1 version of this plugin and only get well embedded when EJSApp 1.6 or superior is used.

Contributor/Maintainer

The OSP repository plugin is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

Video tutorials

What is EJSApp?

A general vision of the EJSApp plugins and the ideas behind them. <mediaplayer>http://youtu.be/RsRS_ERQs0c</mediaplayer>

EJSApp: core plugins

Presenting the EJSApp activity module and the EJSApp File Browser block. <mediaplayer>http://youtu.be/Oql5h_ravGE</mediaplayer>

Collaborative Web-labs

Presenting the EJSApp Collab Session block and the synchronous collaborative experimental sessions feature of EJS. <mediaplayer>http://youtu.be/DOOoq2rUJYE</mediaplayer> (Activate the subtitles!)

Remote Labs and the EJSApp Booking System

Keys for configuring your EJS applications in Moodle as remote laboratories and using the EJSApp booking system. <mediaplayer> http://youtu.be/YGlTTMmkaC0</mediaplayer>

What is UNEDLabs?

A general view of UNEDLabs; a Moodle web portal of collaborative, virtual and remote laboratories. <mediaplayer>http://youtu.be/QC6-bmW1Y4c</mediaplayer>

Easy Java Simulations (EJS) and the ComPADRE library

A brief description about EJS and how to find and access hundreds of EJS applications for free from the Open Source Physics (OSP) collection at the ComPADRE library. <mediaplayer>http://youtu.be/6rUgWDkoZKM</mediaplayer>

See also

EJSApp Set Moodle modules webpage: https://moodle.org/plugins/browse.php?list=set&id=27

EJSApp UNEDLabs Github repository: https://github.com/organizations/UNEDLabs

EJSApp Moodle forum discussion: https://moodle.org/mod/forum/discuss.php?d=217163

UNILabs webpage (a Moodle site hosting a network of virtual and remote laboratories based on EJS and EJSApp): http://unilabs.dia.uned.es/

Youtube channel: http://www.youtube.com/user/UNEDLabs

EJSApp tutorial: http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle

EJS webpage: http://www.um.es/fem/EjsWiki/