<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-22243503</id><updated>2010-04-28T18:16:57.914+01:00</updated><title type='text'>minted</title><subtitle type='html'>Moodle Integration with Enterprise Data</subtitle><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/content.html'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default?start-index=26&amp;max-results=25'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.sussex.ac.uk/its/minted/atom.xml'/><author><name>Carol</name><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-22243503.post-4819476543143536538</id><published>2007-05-02T09:52:00.000+01:00</published><updated>2007-05-18T10:22:01.294+01:00</updated><title type='text'>Course profile plugin gets into Moodle core!</title><content type='html'>Hi all,&lt;br /&gt;&lt;br /&gt;Fantastic news - Martin Dougiamas (Moodle creator) has asked me to get a version of the Minted course profile plugin for Moodle 1.9.... Finally, we get our plugin in to the Moodle core!&lt;br /&gt;&lt;br /&gt;&lt;http: d="66977"&gt;&lt;br /&gt;&lt;br /&gt;Paolo&lt;/http:&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-4819476543143536538?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/4819476543143536538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/4819476543143536538'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2007/05/course-profile-plugin-gets-into-moodle.html' title='Course profile plugin gets into Moodle core!'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-1048187538312246028</id><published>2007-03-14T09:40:00.000Z</published><updated>2007-03-14T12:27:58.759Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='scaleability'/><category scheme='http://www.blogger.com/atom/ns#' term='defaults template'/><category scheme='http://www.blogger.com/atom/ns#' term='plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='Moodle'/><title type='text'>Introducing the Minted course enrolment plugin 2.0</title><content type='html'>Within the Minted project we developed two Moodle plugins and one bundled plugin.  Up until now we have only made one of the plugins and a bundled version of both plugins available to the Moodle community.&lt;br /&gt;&lt;br /&gt;Although generating some interest and some adopters, neither have got in to the Moodle core.  I believe there are several reasons for this.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The bundled plugin 1.5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.    The plugin is too big and all encompassing.  For the adopters in the Moodle community it has made changes to their Moodle installation that, although documented, they were not expecting.  These issues have been easy to resolve, but have in some instances given a bad impression on the forum.&lt;br /&gt;&lt;br /&gt;2.    The IMS enterprise enrolment method itself, although now in Moodle core, has not had wide take up due to the low adoption so far of the data specification it uses.  In the meantime a more popular enrolment method simply called the database enrolment method, which does not use any standards, has been widely adopted.&lt;br /&gt;&lt;br /&gt;3. The IMS enrolment plugin and Minted enrolment plugin should be more configurable - disparities already exist between the Minted and the IMS-E enrolment plugin interpretation of the IMS-E standard (I may work on this shortly).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The profile plugin 1.02&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.    I feel one problem is that the profile plugin has become associated with the IMS-Enterprise enrolment method and, therefore, people not using it do not look at the profile plugin&lt;br /&gt;&lt;br /&gt;2.    The plugin gets confused with a template tool due mainly to the default activities it makes available in topic zero.  It generates interest, but for the wrong reason.  We could have enabled a template course site to be specified if we thought the tool was to be used for templating (and I may do that).&lt;br /&gt;&lt;br /&gt;3.    The profile plugin aims to provide a default profile for all mechanisms of course creation, user creation and user enrolment.  It unavoidably requires small additions to code to all these areas, therefore, becoming a large commitment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Minted course profile plugin 2.0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The fact the plugins have so far not been added to the Moodle core is a disappointment, especially as we feel it would improve Moodle.  It would also avoid versioning problems that we will have when upgrading. I have therefore developed a new version of the Minted profile plugin, called the Minted course profile plugin 2.0.  It differs from the Minted profile plugin because:&lt;br /&gt;&lt;br /&gt;1.    It allows you to define what is a basic and advanced course setting.  This is a model derived from the quiz settings and is a very sensible way to simplify the setting page for your institution.  I believe this to be the &lt;span style="font-style: italic;"&gt;tour de force&lt;/span&gt; of the Minted course profile plugin 2.0&lt;br /&gt;&lt;br /&gt;2.    It does not set up profiles for users.  Although we believe a user default is a sensible addition to Moodle, there are developments around user profiles in Moodle 1.7 and Moodle 1.8 and any work in this area would overlap. Furthermore, there is a workaround - however unpleasant - by changing default database field attributes.&lt;br /&gt;&lt;br /&gt;3.    It does not add topic-one default activities.  This is mainly due to the misunderstanding it caused when advertising the plugin. And also because a templating system based on another course site, although far from intuitive, seems to be the Moodle users preferred solution.&lt;br /&gt;&lt;br /&gt;Select &lt;a href="https://studydirect.sussex.ac.uk/downloads" target="’_blank’"&gt;here&lt;/a&gt; for more information, screenshots or to download the Moodle course profile plugin 2.0.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-1048187538312246028?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/1048187538312246028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/1048187538312246028'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2007/03/introducing-minted-course-enrolment.html' title='Introducing the Minted course enrolment plugin 2.0'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-116533011793327269</id><published>2006-12-05T14:45:00.000Z</published><updated>2006-12-05T14:48:37.950Z</updated><title type='text'>Managing enrolments using a simple REST service</title><content type='html'>Andy has put together a useful document about &lt;a href="http://www.sussex.ac.uk/its/minted/REST_web_service_overview.html"&gt;managing enrolments using a simple REST service&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This is available from the Minted site &lt;a href="http://www.sussex.ac.uk/its/minted/index.php?page=discussion"&gt;discussion&lt;/a&gt; page too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-116533011793327269?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/116533011793327269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/116533011793327269'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/12/managing-enrolments-using-simple-rest.html' title='Managing enrolments using a simple REST service'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-115502927455410646</id><published>2006-08-08T10:23:00.000+01:00</published><updated>2006-08-08T10:27:54.566+01:00</updated><title type='text'>Web pages for the Minted project</title><content type='html'>In addition to the &lt;a href="http://www.jisc.ac.uk/index.cfm?name=project_minted"&gt;original JISC web pages for the Minted project&lt;/a&gt;, I have now put together a more &lt;a href="http://www.sussex.ac.uk/its/minted/"&gt;detailed overview&lt;/a&gt; of what we've been doing with Minted. It's still work in progress, and we'll be adding to it over the next few weeks.&lt;br /&gt;&lt;br /&gt;I've moved the location of this blog, although I've left the &lt;a href="http://www.sussex.ac.uk/its/minted/atom.xml"&gt;Atom feed&lt;/a&gt; in the same place.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-115502927455410646?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115502927455410646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115502927455410646'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/08/web-pages-for-minted-project.html' title='Web pages for the Minted project'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-115278887196109153</id><published>2006-07-13T11:34:00.000+01:00</published><updated>2006-07-13T12:07:52.006+01:00</updated><title type='text'>Minted project overview</title><content type='html'>Here's another version of the Minted project overview:&lt;br /&gt;&lt;br /&gt;&lt;img alt="An overview of the MINTED project - updated" src="http://www.sussex.ac.uk/its/minted/updated_minted_tech_diagram.jpg" width="700" /&gt;&lt;br /&gt;&lt;br /&gt;We've simplified the bridge code by separating it out into two logical entities:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;the Data Access Layer (DAL), an institutionally specific implementation of the methods defined by the IMS Enterprise services specification&lt;br /&gt;&lt;/li&gt;&lt;li&gt;a generic bridge that maps the IMS Enterprise services specification to the web service end point&lt;/li&gt;&lt;/ul&gt;The abstraction is managed as a java interface, the DAL interface.&lt;br /&gt;&lt;br /&gt;In order to get the cetis-es toolkit up and running, the institution need only to implement this interface. For example, an institution would implement the readGroup method by defining the query to extract data from their database, and then mapping the columns from the result set to the group object as defined by the toolkit.&lt;br /&gt;&lt;br /&gt;The same interface could also manage the way in which client code interacts with the toolkit.&lt;br /&gt;&lt;br /&gt;This would make it easier for a pre-built client to be distributed with the cetis-es toolkit, if Scott and CETIS colleagues thought this was useful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-115278887196109153?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115278887196109153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115278887196109153'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/07/minted-project-overview.html' title='Minted project overview'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-115091960834131471</id><published>2006-06-14T16:23:00.000+01:00</published><updated>2006-06-28T18:26:54.533+01:00</updated><title type='text'>Oracle connectivity Part 2 - with Tomcat</title><content type='html'>Once you've decided what driver you want to use (see previous post) the rest of it is pretty straightforward!&lt;br /&gt;&lt;br /&gt;The Tomcat documentation outlines what needs to be done in the doc "JNDI Datasource HOW-TO".&lt;br /&gt;&lt;br /&gt;I'm using Tomcat v4.x so the documentation is:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tomcat.apache.org/tomcat-4.1-doc/jndi-datasource-examples-howto.html"&gt;http://tomcat.apache.org/tomcat-4.1-doc/jndi-datasource-examples-howto.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-115091960834131471?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115091960834131471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115091960834131471'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/06/oracle-connectivity-part-2-with-tomcat.html' title='Oracle connectivity Part 2 - with Tomcat'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-115090328317496114</id><published>2006-06-12T10:25:00.000+01:00</published><updated>2006-06-28T18:25:00.403+01:00</updated><title type='text'>Oracle connectivity Part 1</title><content type='html'>Part of the Minted project involves integration with an oracle database.&lt;br /&gt;&lt;br /&gt;The first step is to download one of Oracle's JDBC drivers.&lt;br /&gt;&lt;br /&gt;These are available from&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html"&gt;http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Which driver do you need?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There are three factors to consider here:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;whether you need a "thin" or "OCI" driver&lt;br /&gt;&lt;/li&gt;&lt;li&gt;the version of the Oracle RDBMS that you need to connect to&lt;/li&gt;&lt;li&gt;the version of JDK that you are using&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;There's a helpful FAQ which I recommend, and what follows is a summary of information in it.&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq_0.htm#02_02"&gt;http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq_0.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;Thin or OCI&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;The Thin driver is 100% java, so can run on any Java VM. It requires TCP/IP connectivity.&lt;br /&gt;&lt;br /&gt;The OCI driver uses a specific set of OCI libraries written in C that will be dependant on the OS of the oracle server.&lt;br /&gt;&lt;br /&gt;It is therefore generally easier to use the Thin driver.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;RDBMS compatibility&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Details of the Oracle RDBMS compatibilities with the drivers:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq_0.htm#02_02"&gt;http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq_0.htm#02_02&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;At the time of writing, the most recent set of drivers is version 10.2.0 which the Oracle site says is compatible with this list of RDBMS versions:&lt;br /&gt;10.2.0&lt;br /&gt;10.1.0&lt;br /&gt;9.2.0&lt;br /&gt;9.0.1&lt;br /&gt;8.1.7&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;JDK compatibility&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Each of the JDBC distributions includes a number of different drivers aimed at different versions of the JDK.&lt;br /&gt;&lt;br /&gt;At the time of writing, only 10.2.0. contains a driver for Java 1.5 (aka 5)&lt;br /&gt;&lt;br /&gt;This is the driver &lt;span style="font-style: italic;"&gt;ojdbc14.jar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Download and test&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I opted for ojdbc14.jar. In order to download it from&lt;br /&gt;&lt;a href="http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html"&gt;http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html&lt;/a&gt;&lt;br /&gt;you have to agree to the Oracle Technology Network Development and Distribution License Terms, which include a US export controls restriction.&lt;br /&gt;&lt;br /&gt;Once you have downloaded the jar, you can test it with the following code:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;import java.sql.*;&lt;br /&gt;class OracleConnect {&lt;br /&gt;public static void main (String args []) throws SQLException&lt;br /&gt;{&lt;br /&gt;DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());&lt;br /&gt;&lt;br /&gt;Connection conn = DriverManager.getConnection&lt;br /&gt;("jdbc:oracle:thin:@yrserver.network.com:1521:orcl", "scott", "tiger");&lt;br /&gt;// @machineName:port:SID,   userid,  password&lt;br /&gt;&lt;br /&gt;Statement stmt = conn.createStatement();&lt;br /&gt;ResultSet rset = stmt.executeQuery("select * from emp");&lt;br /&gt;while (rset.next())&lt;br /&gt;System.out.println (rset.getString(1));   // Print col 1&lt;br /&gt;stmt.close();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;When you compile and run it, you obviously need to ensure that the driver is in your classpath:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;javac -cp /home/me/jars/ojdbc14.jar:. OracleConnect.java&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;java -cp /home/me/jars/ojdbc14.jar:. OracleConnect&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-115090328317496114?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115090328317496114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/115090328317496114'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/06/oracle-connectivity-part-1.html' title='Oracle connectivity Part 1'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114867404628687091</id><published>2006-05-26T10:47:00.000+01:00</published><updated>2006-05-27T21:07:36.236+01:00</updated><title type='text'>IMS Enterprise enrolment</title><content type='html'>Here is a list of changes we have made so far to the IMS Enterprise enrolment module in addition to those mentioned in posts in the 17th and 22nd March and the some of the issues that arise for me:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Changes:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;- Include more member roles so: &lt;br /&gt;&lt;br /&gt;  01 - Learner = student&lt;br /&gt;  02 - Instructor = course tutor (staff)&lt;br /&gt;  05 - Manager = convenor&lt;br /&gt;  08 - Teaching assistant = course tutor (associate tutor)&lt;br /&gt;&lt;br /&gt;  and insert new roles into mdl_user_teachers.role *1&lt;br /&gt;&lt;br /&gt;- Use sussex_courses.description to create &amp;lsaquo;full&amp;rsaquo; &amp;lsaquo;description&amp;rsaquo; and populate mdl_course.summary&lt;br /&gt;&lt;br /&gt;- Update mdl_course.fullname, mdl_course.summary *2, mdl_course.category,&lt;br /&gt;  mdl_course.startdate if changed&lt;br /&gt;&lt;br /&gt;- Unenrol students and staff associated with a particular course if they are not&lt;br /&gt;  in central records *3&lt;br /&gt;&lt;br /&gt;- Update mdl_user.email if changed *4&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Issues arising:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;*1 In addition we need a new role for departmental co-ordinators that help faculty upload files.  We will probably need a new field in the central records system to identify these people.&lt;br /&gt;&lt;br /&gt;*2 It is unclear to me if the course summary should be updated with the latest course description or if the course summary should be customisable by the course administrators.&lt;br /&gt;&lt;br /&gt;*3a Equally, I am unclear if students should be able to &amp;lsquo;enrol&amp;rsquo; themselves on the online element of the course without being formally enrolled on the course itself. If so, perhaps we shouldn&amp;lsquo;t &amp;lsquo;unenrol&amp;rsquo; them.   Having said that, it is not a big deal &amp;lsquo;re-enrolling&amp;rsquo; as it is all doen through LDAP and posts and marks are not lost.  &lt;br /&gt;&lt;br /&gt;*3b Another related point is that some tutors of courses are not formally associated with the course, but will want administrative access to their courses and perhaps shouldn&amp;lsquo;t be removed either.&lt;br /&gt;&lt;br /&gt;*4 Finally, I am unsure what, if any, user fields should be updated. Probably, MLE and VLE email addresses should be updated at the same time, so currently email is updated by the central record system, but this may not be sensible.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Also:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We will add the profile URL of staff to mdl_user.url&lt;br /&gt;&lt;br /&gt;We will need a one-off update rule that will change the idnumber from course code to course code plus term and year for the first run&lt;br /&gt;&lt;br /&gt;I will look into updating the module for PHP 5 using simpleXML&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114867404628687091?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114867404628687091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114867404628687091'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/05/ims-enterprise-enrolment.html' title='IMS Enterprise enrolment'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114712872860193527</id><published>2006-05-08T23:35:00.000+01:00</published><updated>2006-10-11T18:48:51.726+01:00</updated><title type='text'>Starting to work on a client</title><content type='html'>I've been working with a simple client package that Scott sent as part of his rebuilt cetis-es SDK for Axis 1.3. (See &lt;a href="http://www.sussex.ac.uk/its/minted/2006/05/deploying-rebuilt-sdk-using-axis-13.html"&gt;Deploying the rebuilt SDK using Axis 1.3&lt;/a&gt; for details.)&lt;br /&gt;&lt;br /&gt;This consisted of two classes, Test and Enterprise.&lt;br /&gt;&lt;br /&gt;I'd been working on building some more functionality into a local version of the ReadPersonsForGroupHandler, and as Scott's test client used that service call too I was able to test my fledgling service with it too.&lt;br /&gt;&lt;br /&gt;Obviously any correctly running client implementation should work with any correctly running service implementation (where the same soap requests are implemented) - though would there be version problems across Axis versions / cetis-es versions ?&lt;br /&gt;&lt;br /&gt;So Alex and I could swap client implementations at some point (though mine would not be very thrilling at this stage ..)&lt;br /&gt;&lt;br /&gt;And so for the future of the cetis-es distribution, would it therefore be worth having a fuller client available for download so that people could use it to test their deployments more easily?&lt;br /&gt;&lt;br /&gt;I then decided to transfer the two classes Test and Enterprise into Eclipse and modify them a bit.&lt;br /&gt;&lt;br /&gt;When I did this, I was getting an error in Enterprise.java on line&lt;br /&gt;PersonManagementServiceSyncSoapStub svc = (PersonManagementServiceSyncSoapStub)loc.getPersonManagementServiceSyncSoap(new java.net.URL(_endpoint));&lt;br /&gt;&lt;br /&gt;The error was:&lt;br /&gt;"The type javax.xml.rpc.ServiceException cannot be resolved. It is indirectly referenced from required .class files"&lt;br /&gt;&lt;br /&gt;In order to resolve this error I had to add the jaxrpc.jar from the Axis 1.3 library directly into my build path. (I didn't need to import javax.xml.rpc.* from it though, just having it in the path was sufficient to resolve the error).&lt;br /&gt;&lt;br /&gt;I'm just noting it here for future reference.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114712872860193527?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114712872860193527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114712872860193527'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/05/starting-to-work-on-client.html' title='Starting to work on a client'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114685129310016009</id><published>2006-05-05T16:23:00.000+01:00</published><updated>2006-05-06T13:34:29.970+01:00</updated><title type='text'>IMS Enterprise Service SOAP requests ...</title><content type='html'>At the moment, I haven't yet written any client code, although I have got some client code working from an example that Scott sent us.&lt;br /&gt;&lt;br /&gt;I'm working on implementing the Membership service to test out a problem Alex is having, described in this cetis-es SourceForge forum &lt;a href="http://sourceforge.net/forum/forum.php?thread_id=1491739&amp;amp;forum_id=350729"&gt;thread&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And I want to be able to send correctly formed SOAP requests to the service via tcpmon, the utility that comes with Axis for communicating directly with the port that your service is listening on.&lt;br /&gt;&lt;br /&gt;I thought this would be a good way of confirming whether or not it was the client code that was causing the problem Alex is experiencing.&lt;br /&gt;&lt;br /&gt;I thought that I'd be able to use the SOAP requests that are given on the &lt;a href="http://www.imsglobal.org/es/"&gt;IMS Enterprise Service homepage&lt;/a&gt; in the Examples section, such as &lt;a href="http://www.imsglobal.org/es/esv1p0/examples/readGroupRequestSync.txt"&gt;http://www.imsglobal.org/es/esv1p0/examples/readGroupRequestSync.txt&lt;/a&gt;. But these don't seem to work quite as I'd expect, throwing parser errors when I send them into the running webservice using tcpmon.&lt;br /&gt;&lt;br /&gt;I've added a posting to the SourceForge thread about it ... and will update here if I get any clearer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114685129310016009?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114685129310016009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114685129310016009'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/05/ims-enterprise-service-soap-requests.html' title='IMS Enterprise Service SOAP requests ...'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114675861308378059</id><published>2006-05-04T16:58:00.000+01:00</published><updated>2006-05-04T17:03:33.093+01:00</updated><title type='text'>Deploying the rebuilt SDK using Axis 1.3</title><content type='html'>Scott has been working on a rebuilt version of the cetis-es toolkit, and I've just successfully deployed it in Tomcat 4.1.31 and Axis 1.3.&lt;br /&gt;&lt;br /&gt;It took a few hours, mostly spent sorting out some parsing issues with web.xml files and getting HSQLDB running properly.&lt;br /&gt;&lt;br /&gt;I found the documentation very easy to follow, and think Scott's new version is going to be a great help to anyone interested in trying out the cetis-es toolkit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114675861308378059?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114675861308378059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114675861308378059'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/05/deploying-rebuilt-sdk-using-axis-13.html' title='Deploying the rebuilt SDK using Axis 1.3'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114676041696417965</id><published>2006-04-28T17:07:00.000+01:00</published><updated>2006-05-04T18:19:27.376+01:00</updated><title type='text'>Next steps with the cetis-es toolkit</title><content type='html'>After meeting up with Scott and Alex, my first action was to get myself properly set up using the &lt;a href="http://www.eclipse.org/"&gt;Eclipse IDE &lt;/a&gt;(integrated development environment), which I really can't recommend highly enough. I also installed the &lt;a href="http://www.sysdeo.com/eclipse/tomcatplugin"&gt;Sysdeo Tomcat Plugin,&lt;/a&gt; which allows you to control Tomcat from Eclipse and to get the output from catalina.out into a window on your Eclipse desktop.&lt;br /&gt;&lt;br /&gt;So having successfully deployed the minimal example, I next wanted to build a connection to a local database, and get that running.&lt;br /&gt;&lt;br /&gt;Although our eventual goal is to connect to an Oracle database, for short-term development I decided it would be quickest to work with a MySQL database running on the same server as my Tomcat installation.&lt;br /&gt;&lt;br /&gt;I did run into some problems and got extremely prompt and helpful advice from Scott. The &lt;a href="http://sourceforge.net/projects/cetis-es/"&gt;cetis-es SourceForge site&lt;/a&gt; is where  we normally post messages about problems, but that was down when I was doing the work, so we had an exchange via email which I will update into SourceForge when I get a chance, and put a link in to this blog entry.&lt;br /&gt;&lt;br /&gt;See &lt;a href="http://sourceforge.net/forum/forum.php?thread_id=1491884&amp;forum_id=350729"&gt;http://sourceforge.net/forum/forum.php?thread_id=1491884&amp;amp;forum_id=350729&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;My errors were to do with using Axis 1.2.1, which was a choice I made right at the start of my attempts to get the installation sorted out because it was so hard to find a mirror site with Axis 1.1 on it. Given that it is now hard to find Axis 1.1, it's great that Scott is working on making the toolkit compatible with later versions of Axis.&lt;br /&gt;&lt;br /&gt;I was also having problems getting the MySQL connection set up, which I solved by looking more carefully at the Tomcat notes on setting up an &lt;a href="http://tomcat.apache.org/tomcat-4.1-doc/jndi-resources-howto.html"&gt;Initial Context &lt;/a&gt;with the JNDI API and notes on &lt;a href="http://tomcat.apache.org/tomcat-4.0-doc/config/"&gt;server configuration&lt;/a&gt; generally.&lt;br /&gt;&lt;br /&gt;As I haven't built any client code yet, I'm using the TCP Monitor utility that's distributed as part of Axis. It's invoked as:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;%&gt; java org.apache.axis.utils.tcpmon&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now I've got this working, my next step is to build a client to invoke the service.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114676041696417965?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114676041696417965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114676041696417965'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/04/next-steps-with-cetis-es-toolkit.html' title='Next steps with the cetis-es toolkit'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114666580295346566</id><published>2006-04-22T15:22:00.000+01:00</published><updated>2006-05-04T16:58:21.626+01:00</updated><title type='text'>To Bolton ... and Beyond</title><content type='html'>Back from leave and straight off to two days in Bolton, the first being a day spent with Scott and Sam in CETIS, along with Juliettte and Alex from JoinIn. This was extremely useful, getting an overview of how the "bridge" code works in the cetis-es toolkit, and getting a sense of what we need to do to build our own versions of the bridge.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114666580295346566?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114666580295346566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114666580295346566'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/04/to-bolton-and-beyond.html' title='To Bolton ... and Beyond'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114433665326759221</id><published>2006-04-06T16:16:00.000+01:00</published><updated>2006-04-11T09:58:35.566+01:00</updated><title type='text'>Record status</title><content type='html'>Carol may know some of the answers to my questions, but I have decided to blog this because I think it is of general interest and it is a bit of a stream of consciousness.  &lt;br /&gt;&lt;br /&gt;It seems likely that Moodle records will be updated nightly. This is because making live queries on the central database will mean too many modifications to the Moodle code. As you have probably gathered from our previous blogs we intend to query the central database, create an ims specification xml file with the data and populate the moodle database.  The records that we pass are standard user, group and membership.  The records will either be new or modified and some records will need to be deleted.  The questions I have revolve about how we determine what needs to happen to each record.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;How can we determine if a record is new or updated?&lt;/span&gt;*&lt;br /&gt;&lt;br /&gt;Is there a time stamp indicating when it was created/updated on the central database? And does this include membership changes? If so, we could easily determine the correct rec_status for the record. If not, should we compare the database query results with the previous xml file nodes and create the new xml file, setting the rec_status of each record accordingly or should we create an xml file with all the query results and compare the xml file with the moodle database and insert, update or do nothing accordingly? &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;How can we determine if a record should be deleted?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Users presumably will be deleted when they have graduated or left.  There is a 'deleted' field in the user table.  When do we want to use this and when do we want to completely delete them?&lt;br /&gt;&lt;br /&gt;When do we want to delete courses?** Carol suggested and I agree that occurences of courses should be kept until the last person who sat on that course has graduated or left. Can we simply delete courses that have started but have no students (membership) associated with it?&lt;br /&gt;&lt;br /&gt;When do we want to delete membership?  We are of the opinion that students should have access to the occurrence of their course until they have graduated or have left.***  But how can we identify people who have sat on an occurrence of a course and, therefore, keep their membership and those who have started and dropped a course and, therefore, delete their membership?  &lt;span style="font-style:italic;"&gt;I.e.&lt;/span&gt; Does the central database store membership of past course occurrences (&lt;span style="font-style:italic;"&gt;Edit: and I see from Carol's post on the 17th March it does and this question for us may be irrelevant&lt;/span&gt;)?&lt;br /&gt;&lt;br /&gt;* We will need to update the IMS Enterprise enrolment plugin to handle updates of courses and users.&lt;br /&gt;** What process will be in place for staff copying materials from one occurrence of a course to another - will the restore and backups on a request basis be sufficient? &lt;br /&gt;*** Would we want the individual to be able to include course materials in their e-portfolio? This begs the question: what happens to their e-portfolio when they leave?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114433665326759221?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114433665326759221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114433665326759221'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/04/record-status_114433665326759221.html' title='Record status'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114362897134974908</id><published>2006-03-29T11:35:00.000+01:00</published><updated>2006-03-29T11:42:51.350+01:00</updated><title type='text'>Minimal deployment notes</title><content type='html'>I talked to Sam (Easterby-Smith) at the &lt;a href="http://www.cetis.ac.uk/members/enterprise/index_html"&gt;Enterprise SIG&lt;/a&gt; meeting in Oxford yesterday.&lt;br /&gt;&lt;br /&gt;Sam said it would be useful for me to write up the notes on deploying the Minimal Deployment.&lt;br /&gt;&lt;br /&gt;As posted  earlier, I originally used versions:&lt;br /&gt;&lt;br /&gt;Tomcat 4.1.31&lt;br /&gt;Axis 1.2.1&lt;br /&gt;&lt;a href="http://www.sussex.ac.uk/its/minted/2006/02/getting-jboss-running.html"&gt;running with JDK 1.3.1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Sam and I agreed I'd write the instructions based on most recent stable versions of the application server etc.&lt;br /&gt;&lt;br /&gt;I have reset my CurrentJDK symbolic link back to 1.4.2, and the minimal deployment still works.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114362897134974908?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114362897134974908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114362897134974908'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/minimal-deployment-notes.html' title='Minimal deployment notes'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114302954912598925</id><published>2006-03-22T12:06:00.000Z</published><updated>2006-03-22T12:12:29.136Z</updated><title type='text'>Publishing data mappings and adapters</title><content type='html'>Scott made this good suggestion via email on 15th March, and I'm just posting it here so that we keep it in mind:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;I think also when yourselves and BEWT have  completed your data mappings you should publish those, and eventually  the adapters themselves too. We always hoped that people would  contribute working server-end adapters for various systems (SITS,  EBS, Oracle Student, SCT etc) so we could have them downloadable from  SF, rather than everyone having to first do a mapping and roll your  own data. The problem is a lot of MIS vendors do so much DB  customization for each customer site.&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114302954912598925?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114302954912598925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114302954912598925'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/publishing-data-mappings-and-adapters.html' title='Publishing data mappings and adapters'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114304188225410760</id><published>2006-03-22T11:13:00.000Z</published><updated>2006-03-22T16:43:46.013Z</updated><title type='text'>Progress report into the transfer of data into Moodle</title><content type='html'>Carol, Andy and I have been testing the transfer of data from our central record system into Moodle.  Carol wrote some SQL queries to extract data, Andy used these commands and XMLRPC to populate an IMS Enterprise specification XML file and serve it via a secure web page. I used the data to populate the Moodle database using a modified version of Moodle's IMS Enterprise enrolment plugin.&lt;br /&gt;&lt;br /&gt;Here is how the plugin has been modified:&lt;br /&gt;&lt;br /&gt;WAS: It used the IMS Enterprise short description tag to pass the course name into mdl_course.fullname.&lt;br /&gt;NOW: It uses the IMS Enterprise long description tag to pass the course name into mdl_course.fullname, the  IMS Enterprise short description tag to pass the course code into mdl_course.shortname and the ID to pass the course code plus the term and year (occurrence) into mdl_course.idnumber.&lt;br /&gt;&lt;br /&gt;WAS: It used set values to populate the course settings (format: topic, section: 1, etc.)&lt;br /&gt;NOW: It uses the category course profile to populate the course settings (if the profile exists).&lt;br /&gt;&lt;br /&gt;WAS: It created one News forum on each course.  &lt;br /&gt;NOW: It creates Moodle course modules/activities that the category course profile specifies (if the profile exists).&lt;br /&gt; &lt;br /&gt;WAS: It used the day that the Moodle course was created as the course start date.  &lt;br /&gt;NOW: I have added a new option to the enrolment plugin so that the administrator can specify whether to use the course start date as defined in the category course profile (if the profile exists) or use the course start date as passed by IMS data (the actual course start date)&lt;br /&gt;&lt;br /&gt;WAS: It used the database column defaults when adding Moodle users (students and staff)&lt;br /&gt;NOW: It uses the site user profile if it exists when adding Moodle users (students and staff)&lt;br /&gt;&lt;br /&gt;WAS: It used regular expression matching to extract the XML data and did not take into account that the XML may be using CDATA. &lt;br /&gt;NOW: It still uses regular expression matching, but does take into account that the XML may be using CDATA. Andy Collington pointed out it would have been wiser to use something like &lt;a href="http://minixml.psychogenic.com/"&gt;minixml&lt;/a&gt; to extract the data rather than parsing regular expressions. I may look into this shortly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114304188225410760?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114304188225410760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114304188225410760'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/progress-report-into-transfer-of-data.html' title='Progress report into the transfer of data into Moodle'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114302600513943092</id><published>2006-03-22T10:35:00.000Z</published><updated>2006-03-22T11:32:27.810Z</updated><title type='text'>Minimal IMS Enterprise web service .. deployed</title><content type='html'>With help from Scott (see thread&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a href="http://sourceforge.net/forum/forum.php?forum_id=350729"&gt;http://sourceforge.net/forum/forum.php?forum_id=350729&lt;/a&gt;), we've now got the &lt;a href="http://www.cetis.ac.uk/content2/20040624131946"&gt;minimal IMS Enterprise web service&lt;/a&gt; running.&lt;br /&gt;&lt;br /&gt;The platform used was:&lt;br /&gt;Tomcat 4.1.31&lt;br /&gt;Axis 1.2.1&lt;br /&gt;running with JDK 1.3.1&lt;br /&gt;&lt;br /&gt;I had to make a couple of changes to the deployment descriptor web.xml in the enterprise-war WAR to get it to work on Tomcat.&lt;br /&gt;&lt;br /&gt;Most significantly, I needed to reorganise the elements within web.xml so that it complied strictly with the element order as given in the DTD, and add in&lt;servlet&gt; &lt;servlet-mapping&gt; entries for AxisServlet from the axis installation's web.xml.&lt;br /&gt;&lt;br /&gt;Perhaps someone with experience of using different servlet containers/application servers would be able to comment on whether the version of Tomcat I'm using takes a "stricter" approach to the ordering of elements from the DTD than - say - JRun?&lt;br /&gt;&lt;br /&gt;(Also the sub-element order for the &lt;servlet&gt; element specified by the DTDs themselves changed from servlet v2.3 to v2.4, I think.)&lt;br /&gt;&lt;br /&gt;The deployment method used is briefly touched on in the &lt;a href="http://ws.apache.org/axis/java/install.html"&gt;Axis Installation&lt;/a&gt; document as section "Advanced Installation: adding Axis to your own Webapp".&lt;br /&gt;&lt;br /&gt;I'll draft a set of detailed Tomcat/Axis deployment instructions (initially via Scott to check for accuracy/completeness) if anyone would find this useful.&lt;/servlet-mapping&gt;&lt;/servlet&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114302600513943092?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114302600513943092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114302600513943092'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/minimal-ims-enterprise-web-service.html' title='Minimal IMS Enterprise web service .. deployed'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114285746867074677</id><published>2006-03-20T11:58:00.000Z</published><updated>2006-03-20T12:29:33.163Z</updated><title type='text'>Deploying the minimal IMS Enterprise web service</title><content type='html'>Over the last few weeks I've been getting Tomcat and Axis installed, and running through the examples given in their respective installation guides in order to test that I've got them installed correctly and also to try to haul myself up the learning curve ..&lt;br /&gt;&lt;br /&gt;At the moment, I'm working with&lt;br /&gt;&lt;br /&gt;Tomcat 4.1.31&lt;br /&gt;Axis 1.2.1&lt;br /&gt;running with JDK 1.3.1&lt;br /&gt;&lt;br /&gt;I'm currently trying to get Scott's "Minimal IMS Enterprise Web Service" deployed.&lt;br /&gt;&lt;br /&gt;There's a useful article on doing this at:&lt;br /&gt;&lt;a href="http://www.cetis.ac.uk/content2/20040624131946"&gt; http://www.cetis.ac.uk/content2/20040624131946&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;However, I've not yet got the deployment to work, and have posted some questions on &lt;a href="http://sourceforge.net/forum/forum.php?forum_id=350729"&gt;cetis-es sourceforge forum&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;As part of encouraging use of the toolkit, maybe it would be good to identify a couple of likely servers/engines (e.g. Tomcat+Axis, JRun, JBoss) and a recommended version for each. And then provide quite detailed descriptions of the deployment for each?&lt;br /&gt;&lt;br /&gt;I see from the &lt;a href="http://iet.open.ac.uk/pp/a.little/index.cfm?page=JoinIn"&gt;JoinIn blog&lt;/a&gt; (27th Feb) that Alex had a few issues with the minimal deployment on JRun and JBoss too. Alex - if you're out there - do you think a detailed deployment guide for a few defined servers/engines would be useful?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114285746867074677?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114285746867074677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114285746867074677'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/deploying-minimal-ims-enterprise-web.html' title='Deploying the minimal IMS Enterprise web service'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114250444158110980</id><published>2006-03-17T10:05:00.000Z</published><updated>2006-03-21T18:26:47.186Z</updated><title type='text'>Representing courses in Moodle</title><content type='html'>The overall aim of MINTED is to capture sufficient detail from the university's database so that we can properly represent the entities "person", "course" and "teaching group" in Moodle, and so that the memberships of persons to courses and groups is correct.&lt;br /&gt;&lt;br /&gt;On the university database, courses are represented as having &lt;span style="font-style: italic;"&gt;instances&lt;/span&gt;, where an instance is a particular incarnation of a given course, e.g. with a particular set of learning outcomes and assessments.&lt;br /&gt;&lt;br /&gt;Each given instance of a course can then run 0, 1 or many times. Each time it runs, it runs in an &lt;span style="font-style: italic;"&gt;occurrence&lt;/span&gt;. For example, a given course might run in the Spring Term of academic year 05/06. To represent this we associate the instance of the course with the appropriate occurrence code, in this case SPR05/06.&lt;br /&gt;&lt;br /&gt;When the database represents memberships of students on courses, it obviously does so using the appropriate &lt;span style="font-style: italic;"&gt;occurrence&lt;/span&gt; record for the course.&lt;br /&gt;&lt;br /&gt;In Moodle, there appears to be a slightly flatter structure, without the notion of the occurrence built in to the data structure.&lt;br /&gt;&lt;br /&gt;However, it must surely be a requirement of a mature e-learning system that students who took a course in their 1st year can re-visit the course during their 3rd year perhaps as part of their revision. So we will need to manage multiple occurrences of the same course on Moodle.&lt;br /&gt;&lt;br /&gt;The table below shows mappings from the database via IMS Enterprise and into Moodle Course Settings:&lt;br /&gt;&lt;br /&gt;&lt;img src="data_ims_moodle_mappings_1_1.jpg" alt="A table showing mappings between the administration database, IMS Enterprise and Moodle" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114250444158110980?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114250444158110980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114250444158110980'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/representing-courses-in-moodle.html' title='Representing courses in Moodle'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114261746464012370</id><published>2006-03-15T16:08:00.000Z</published><updated>2006-03-17T17:44:24.756Z</updated><title type='text'>More on course and user profiles</title><content type='html'>Paolo and I had a good meeting today looking in a bit more detail at his Course and User profiles, mostly concentrating on the Course stuff.&lt;br /&gt;&lt;br /&gt;We thought quite a bit about "Start Date" and agreed that this should be set by default to the start date of the course, as transferred from the database via IMS Enterprise.&lt;br /&gt;&lt;br /&gt;At the moment course availability is managed by a simple radio button. After discussion, we thought that probably it would make sense to say that by default courses were available from the start_date passed in via IMS Enterprise, but that this would be editable by individual staff.&lt;br /&gt;&lt;br /&gt;We talked about providing an option for making it available N days before the start of the course.&lt;br /&gt;&lt;br /&gt;Paolo said he'd do a mock up of what the screen would look like, and we could then try it out on various staff to get feedback on usability. We didn't want to make things too complex.&lt;br /&gt;&lt;br /&gt;I've subsequently been looking at the "Define Course Profile by Category" screen from Paolo's work, while thinking through what the mappings are going to be from the Administration database to Moodle via Dan's IMS Enterprise enrollment plugin and Paolo's default settings.&lt;br /&gt;&lt;br /&gt;Got a couple of questions:&lt;br /&gt;&lt;br /&gt;The form for "Define course profile" shows a pair of fields labelled "Date range"&lt;br /&gt;&lt;br /&gt;Is this the Date Range for when to allow Course Enrollments, if the radio button "Course enrollment" is set to Date Range? Will this date range have any other use?&lt;br /&gt;&lt;br /&gt;If it is totally related to Course Enrolments, would it be worth indenting it so that this is more obvious? (Or is that not a Moodle way of doing things?)&lt;br /&gt;&lt;br /&gt;(Ideally the irrelevant options would be displayed greyed out, and as the user changed options this would be updated dynamically, but this won't work on a pure html page!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114261746464012370?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114261746464012370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114261746464012370'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/more-on-course-and-user-profiles.html' title='More on course and user profiles'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114235254180459555</id><published>2006-03-14T16:00:00.000Z</published><updated>2006-03-22T16:14:11.660Z</updated><title type='text'>Creating course and user profiles</title><content type='html'>It turns out modifying the database was a big no, no... so I decided to create course, user and activity module profile tables.  All these (apart from user) were indexed by department (in Moodle terminology: categories).  This is a major improvement suggested by Carol and really enhances Moodle.&lt;br /&gt;&lt;br /&gt;It works really nice with Dan's IMS Enterprise enrollment module and could work equally well with manual user and course creation, the LDAP or external database enrollment mechanisms with some minor tweaks, and because of this I put the functions in the main Moodle lib folder. I will develop these other enrollment mechanisms if any requests are made for them on the forum.&lt;br /&gt;&lt;br /&gt;I have posted my profiles_plugin on the Moodle forums:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://moodle.org/mod/forum/discuss.php?d=41658#191762'&gt;http://moodle.org/mod/forum/discuss.php?d=41658&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Paolo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114235254180459555?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114235254180459555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114235254180459555'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/03/creating-course-and-user-profiles.html' title='Creating course and user profiles'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114103470514878120</id><published>2006-02-27T10:02:00.000Z</published><updated>2006-02-27T11:20:40.176Z</updated><title type='text'>Creating default Moodle profiles</title><content type='html'>Hi!&lt;br /&gt;&lt;br /&gt;Carol expressed surprise to me that Moodle creates courses and users with relatively arbitrary profiles.  Indeed, the profiles often change according on the mechanism by which you are creating users or courses.  &lt;br /&gt;&lt;br /&gt;There are two reasons for this: &lt;br /&gt;&lt;br /&gt;1. The course and user creation mechanisms populate the course and user tables with the developers' own preferred values.  Their choice to do this has probably been influenced by the fact that the database column default values are not the choice of the local Moodle administrator in any case. &lt;br /&gt;2. There is no Moodle interface to choose and arrange default Moodle course blocks (displays and activities in the side bars).&lt;br /&gt;&lt;br /&gt;It seemed sensible, therefore, to do a number of things:&lt;br /&gt;&lt;br /&gt;1. Create  a Moodle interface for local administrators to choose the database column default values for the course and user tables. &lt;br /&gt;2. Create a Moodle interface to the programming mechanism that has been developed to choose and arrange default Moodle course blocks.&lt;br /&gt;3. Create a Moodle interface to determine topic and week zero activities.&lt;br /&gt;4. Modify the Moodle IMS Enterprise Enrolment plugin to work with these.&lt;br /&gt;&lt;br /&gt;On creating the Moodle interfaces it occured to us that we should pose the question:  how safe is it to modify the Moodle database? And that we should at least warn admin to do it in a quiet period and create a backup of the database.&lt;br /&gt;&lt;br /&gt;We also wondered, given the varied flavours of teaching and study at our institution, whether default profiles should depend on department.  This we thought may be particularly useful when seeking buy-in and a feeling of ownership from departments and academics within that department.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114103470514878120?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114103470514878120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114103470514878120'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/02/creating-default-moodle-profiles.html' title='Creating default Moodle profiles'/><author><name>Paolo</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07753045013775101797'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114056459059102688</id><published>2006-02-21T23:14:00.000Z</published><updated>2006-03-15T10:14:39.803Z</updated><title type='text'>.. or getting Tomcat running</title><content type='html'>OK, so in the last post I looked at preliminary issues around getting JBoss running as your Java application server.&lt;br /&gt;&lt;br /&gt;But what about using Tomcat as your application server?&lt;br /&gt;&lt;br /&gt;On the Tomcat site, there's &lt;a href="http://tomcat.apache.org/whichversion.html"&gt;the following info&lt;/a&gt; about which version you need to use:&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;  &lt;td valign="top" &gt;&lt;br /&gt;    &lt;strong&gt;Servlet/JSP Spec&lt;/strong&gt;&lt;br /&gt;  &lt;/td&gt;&lt;br /&gt;  &lt;td valign="top" &gt;&lt;br /&gt;    &lt;strong&gt;Apache Tomcat version&lt;/strong&gt;&lt;br /&gt;  &lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;  &lt;td&gt;2.4/2.0&lt;/td&gt;&lt;br /&gt;  &lt;td&gt;5.5.x&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;  &lt;td&gt;2.3/1.2&lt;/td&gt;&lt;br /&gt;  &lt;td&gt;4.1.x&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;  &lt;td&gt;2.2/1.1&lt;/td&gt;&lt;br /&gt;  &lt;td&gt;3.3.x&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;I've posted a message onto the &lt;a href="https://sourceforge.net/forum/forum.php?forum_id=350729"&gt;cetis-es sourceforge forums&lt;/a&gt; asking whether anyone has any information on this and other version requirements for the various candidate application servers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114056459059102688?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114056459059102688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114056459059102688'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/02/or-getting-tomcat-running.html' title='.. or getting Tomcat running'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry><entry><id>tag:blogger.com,1999:blog-22243503.post-114044005906769771</id><published>2006-02-20T21:21:00.000Z</published><updated>2006-03-29T11:45:37.666+01:00</updated><title type='text'>Getting JBoss running</title><content type='html'>In this blog, we're going to take things step by step, in the hope that by describing the process we've gone through in some detail will be useful for groups out there who want to try out using web services such as the cetis-es but haven't got much previous experience.&lt;br /&gt;&lt;br /&gt;Just a reminder that the cetis-es source is availabe at &lt;a href="https://sourceforge.net/projects/cetis-es/"&gt;https://sourceforge.net/projects/cetis-es/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;and that there's a useful article on getting started with the CETIS Enterprise SDK at &lt;a href="http://cetis-es.sourceforge.net/"&gt;http://cetis-es.sourceforge.net/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So let's start from the beginning - Gettinga Java Application Server Running.&lt;br /&gt;&lt;br /&gt;In this case, JBoss. But you could use Tomcat or others ..&lt;br /&gt;&lt;br /&gt;First of all, this is a good article on the role that JBoss is going to be playing in your deployed web service, and how to get it going:&lt;br /&gt;&lt;a href="http://today.java.net/pub/a/today/2005/03/01/InstallingJBoss.html"&gt;java.net:JBoss At Work Part 1: Installing and Configuring JBoss&lt;/a&gt;. This article was written when JBoss v4.0.1 was current.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is a really useful post from the BEWT project on getting the CETIS-es toolkit working on JBoss:&lt;br /&gt;&lt;a href="http://www.weblogs.uhi.ac.uk/bewt/?p=9"&gt;BEWT: Deploying on JBoss Application Server&lt;/a&gt;.&lt;br /&gt;This points out that the toolkit needs JBoss version 3.2.x&lt;br /&gt;&lt;br /&gt;I have a feeling that it may not spell this out on the CETIS site.&lt;br /&gt;&lt;br /&gt;&lt;&lt;&gt;&gt;&lt;br /&gt;&lt;br /&gt;So I've downloaded JBoss v 3.2.8 from &lt;a href="http://www.jboss.com/products/jbossas/downloads"&gt;http://www.jboss.com/products/jbossas/downloads&lt;/a&gt;, and found a very useful&lt;br /&gt;manual for  JBoss v3.2.x: &lt;a href="http://www.jboss.com/products/jbossas/docs"&gt;JBoss documentation site &lt;/a&gt; entitled "JBoss AS Getting Started Guide" for v3.2.x.&lt;br /&gt;&lt;br /&gt;Right now I'm just running it on my PowerBook (on Mac OS X v10.4)&lt;br /&gt;&lt;br /&gt;Not sure whether or not anyone else will be trying to do this, but if you are, here is what I had to do.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Step 1 - get the right version of JDK &lt;/h4&gt;&lt;br /&gt;&lt;br /&gt;If you're currently using Tiger, you'll have a range of Java JDK versions available to you. I &lt;em&gt;think&lt;/em&gt; but am not certain, that JBoss v 3.2.8 requires JDK version 1.3.x  &lt;&lt;&gt;&gt;&lt;br /&gt;&lt;br /&gt;You can tell what version you currently have setup by typing:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;%java -version&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;in a terminal window.&lt;br /&gt;&lt;br /&gt;If you need to change version, then go to directory:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;/System/Library/Frameworks/JavaVM.framework/Versions/&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;This contains a directory for each of the JDK versions you have installed on your Mac. It also has a number of symbolic links pointing to these versions. The most significant of these is the symbolic link CurrentJDK.&lt;br /&gt;&lt;br /&gt;Is there a way to switch between versions dynamically? I've had a look around, and the best approach seems to be to re-set this CurrentJDK directory, e.g by running a command such as:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;%sudo ln -sf 1.3.1 CurrentJDK&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;Health Warning&lt;/span&gt;: Of course, if you subsequently upgrade your system in some way then the linking of CurrentJDK could be altered, or worse still, the upgrade might work unpredictably if the setting of CurrentJDK isn't as expected.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;More of a Health Warning&lt;/span&gt;: If you make this change, some of your existing applications may not work as you expect them to. I have found that with CurrentJDK set to 1.3.1, the (excellent) Mac Project Management Software &lt;a href="http://www.projectwizards.net/en/"&gt;Merlin&lt;/a&gt; throws an error on importing MPP files. (note added 29th March 2006)&lt;br /&gt;&lt;h4&gt;Step 2 - set your JAVA_HOME environment variable &lt;/h4&gt;&lt;br /&gt;&lt;br /&gt;From reading this blog&lt;br /&gt;&lt;a href="http://mamamusings.net/archives/2004/04/28/installing_tomcat_5_on_os_x.php"&gt;http://mamamusings.net/archives/2004/04/28/installing_tomcat_5_on_os_x.php&lt;/a&gt;&lt;br /&gt;it sounds like you can do this best of all via /Library/Java/Home - which is a bit baffling, but I assume it's yet more symbolic linking going on&lt;br /&gt;&lt;br /&gt;setenv JAVA_HOME /Library/Java/Home&lt;br /&gt;(assuming you're using csh or tsch)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Basically as long as JAVA_HOME is set, the JBoss installation all works straight from the download.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Step 3 - set your JBoss environment variable &lt;/h4&gt;&lt;br /&gt;&lt;br /&gt;setenv JBOSS_HOME /usr/local/jboss-3.2.8&lt;br /&gt;&lt;br /&gt;(or whereever you decided to install it)&lt;br /&gt;&lt;br /&gt;I've got JBoss running - it isn't doing anything, but it's running and I can see it via&lt;br /&gt;&lt;code&gt;http://localhost:8080/jmx-console/&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22243503-114044005906769771?l=www.sussex.ac.uk%2Fits%2Fminted%2Fcontent.html' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114044005906769771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22243503/posts/default/114044005906769771'/><link rel='alternate' type='text/html' href='http://www.sussex.ac.uk/its/minted/2006/02/getting-jboss-running.html' title='Getting JBoss running'/><author><name>Carol</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='03408844797873012765'/></author></entry></feed>
