Merge branch 'JAL-957_jbake' into r281_JAL-957
authorJim Procter <jprocter@compbio.dundee.ac.uk>
Mon, 3 Feb 2014 16:49:32 +0000 (16:49 +0000)
committerJim Procter <jprocter@compbio.dundee.ac.uk>
Mon, 3 Feb 2014 16:49:32 +0000 (16:49 +0000)
Conflicts:
build.xml
examples/linkedapplets_ng.html

1  2 
build.xml
examples/linkedapplets_ng.html

diff --cc build.xml
+++ b/build.xml
  
  -->
  
 -  <target name="init">
 -    <path id="axis.classpath">
 -      <!-->
 -      <fileset dir="/usr/local/axis/lib">
 -        <include name="**/*.jar" />
 -      </fileset>
 -      <fileset dir="/usr/local/jakarta-tomcat-5/webapps/axis/WEB-INF/lib">
 -        <include name="**/*.jar"/>
 -        <include name="*.jar"/>
 -      </fileset> -->
 +      <target name="init">
 +              <path id="axis.classpath">
 +                      <!-->
 +                      <fileset dir="/usr/local/axis/lib">
 +                              <include name="**/*.jar" />
 +                      </fileset>
 +                      <fileset dir="/usr/local/jakarta-tomcat-5/webapps/axis/WEB-INF/lib">
 +                              <include name="**/*.jar"/>
 +                              <include name="*.jar"/>
 +                      </fileset> -->
        </path>
 -    <!-- Jalview Version String displayed by application on startup and used to check for updates -->
 -    <property name="JALVIEW_VERSION" value="DEVELOPMENT" />
 -    <!-- 2.4 (VAMSAS)" -->
 -    <!-- Include debugging information in javac true or false -->
 -    <property name="javac.debug" value="true" />
 -
 -    <!-- JarSigner Key Store for Webstart Distribution -->
 -    <property name="jalview.keystore" value="./keys/.keystore" />
 -    <!-- Keystore Password -->
 -    <property name="jalview.keystore.pass" value="alignmentisfun" />
 -    <!-- Key Name -->
 -    <property name="jalview.key" value="jalview" />
 -    <!-- Key Password -->
 -    <property name="jalview.key.pass" value="alignmentisfun" />
 -
 -
 -
 -    <!-- Don't change anything below here unless you know what you are doing! -->
 -    <!-- Url path for WebStart in JNLP file -->
 -    <property name="WebStartLocation" value="http://www.jalview.org/webstart" />
 -    <!-- Webstart Image - looked for in resources/images -->
 -    <property name="WebStartImage" value="JalviewLogo_big.png" />
 -    <!-- J2SE version needed for webstart launch -->
 -    <property name="j2sev" value="1.6+" />
 +              <!-- Jalview Version String displayed by application on startup and used to check for updates -->
 +              <property name="JALVIEW_VERSION" value="DEVELOPMENT" />
 +              <!-- 2.4 (VAMSAS)" -->
 +              <!-- Include debugging information in javac true or false -->
 +              <property name="javac.debug" value="true" />
 +
 +              <!-- JarSigner Key Store for Webstart Distribution -->
 +              <property name="jalview.keystore" value="./keys/.keystore" />
 +              <!-- Keystore Password -->
 +              <property name="jalview.keystore.pass" value="alignmentisfun" />
 +              <!-- Key Name -->
 +              <property name="jalview.key" value="jalview" />
 +              <!-- Key Password -->
 +              <property name="jalview.key.pass" value="alignmentisfun" />
 +
 +                  
 +                  
 +              <!-- Don't change anything below here unless you know what you are doing! -->
 +              <!-- Url path for WebStart in JNLP file -->
 +              <property name="WebStartLocation" value="http://www.jalview.org/webstart" />
 +              <!-- Webstart Image - looked for in resources/images -->
 +              <property name="WebStartImage" value="JalviewLogo_big.png"/>
 +              <!-- J2SE version needed for webstart launch -->
 +              <property name="j2sev" value="1.6+"/>
  
-     <!-- Permissions for running Java applets and applications. Defaults are those suitable for deploying jalview webstart/jalviewLite at www.jalview.org -->
-     <property name="application.codebase" value="*.jalview.org"/>
-     <property name="applet.codebase" value="*.jalview.org"/>
-     <property name="applet.caller-codebase" value="${applet.codebase}"/>
+     <!-- Permissions for running Java applets and applications. -->
+     <!-- Defaults are those suitable for deploying jalview webstart www.jalview.org -->
+     <property name="application.codebase" value="*.jalview.org" />
+     <!-- and allowing the applet to be deployed from any URL -->
+     <property name="applet.codebase" value="*" />
+     <property name="applet.caller-codebase" value="${applet.codebase}" />
  
 -    <!-- build directory configuration -->
 -    <property name="libDir" value="lib" />
 -    <property name="resourceDir" value="resources" />
 -    <property name="helpDir" value="help" />
 -    <property name="docDir" value="doc" />
 -    <property name="sourceDir" value="src" />
 -    <property name="schemaDir" value="schemas" />
 -    <property name="outputDir" value="classes" />
 -    <property name="packageDir" value="dist" />
 -    <property name="outputJar" value="jalview.jar" />
 -    <!-- Jalview Applet JMol Jar Dependency -->
 -    <property name="jmolJar" value="JmolApplet-12.2.4.jar" />
 -    <property name="jalviewLiteJar" value="jalviewApplet.jar" />
 -    <!-- switch to indicate if we should obfuscate jalviewLite -->
 -    <!--<property name="donotobfuscate" value="true"/> -->
 -
 -    <!-- Jalview Web Service Clients - see the comments in 'buildextclients' for details -->
 -    <property name="wsdl.File" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/jpred?wsdl" />
 -    <property name="wsdl.Files" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/vamsas?wsdlFiles" />
 -    <property name="wsdl.MsaWS" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/MuscleWS?wsdl" />
 -    <property name="wsdl.MsaWS2" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/ClustalWS?wsdl" />
 -    <property name="WSInterf" value="MsaWS" />
 -    <property name="wsdl.Namespace" value="vamsas" />
 -    <property name="wsdl.ClientNS" value="ext.vamsas" />
 -    <!-- the class path for building the application -->
 -    <path id="build.classpath">
 -      <fileset dir="utils">
 -        <include name="*.jar" />
 -        <include name="**/*.jar" />
 -      </fileset>
 -      <fileset dir="${libDir}">
 -        <include name="*.jar" />
 -        <include name="**/*.jar" />
 -      </fileset>
 -      <fileset dir="${java.home}/lib">
 -        <include name="plugin.jar" />
 -      </fileset>
 -      <fileset dir="appletlib">
 -        <!-- the JmolApplet includes the JmolApplet console and the application javac seems to always try and build all packages 
 +              <!-- build directory configuration -->
 +              <property name="libDir" value="lib" />
 +              <property name="resourceDir" value="resources" />
 +              <property name="helpDir" value="help" />
 +              <property name="docDir" value="doc" />
 +              <property name="sourceDir" value="src" />
 +              <property name="schemaDir" value="schemas" />
 +              <property name="outputDir" value="classes" />
 +              <property name="packageDir" value="dist" />
 +              <property name="outputJar" value="jalview.jar" />
 +              <!-- Jalview Applet JMol Jar Dependency -->
 +              <property name="jmolJar" value="JmolApplet-12.2.4.jar" />
 +              <property name="jalviewLiteJar" value="jalviewApplet.jar" />
 +              <!-- switch to indicate if we should obfuscate jalviewLite -->
 +              <!--<property name="donotobfuscate" value="true"/> -->
 +
 +              <!-- Jalview Web Service Clients - see the comments in 'buildextclients' for details -->
 +              <property name="wsdl.File" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/jpred?wsdl" />
 +              <property name="wsdl.Files" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/vamsas?wsdlFiles" />
 +              <property name="wsdl.MsaWS" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/MuscleWS?wsdl" />
 +              <property name="wsdl.MsaWS2" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/ClustalWS?wsdl" />
 +              <property name="WSInterf" value="MsaWS" />
 +              <property name="wsdl.Namespace" value="vamsas" />
 +              <property name="wsdl.ClientNS" value="ext.vamsas" />
 +              <!-- the class path for building the application -->
 +              <path id="build.classpath">
 +                      <fileset dir="utils">
 +                              <include name="*.jar" />
 +                              <include name="**/*.jar" />
 +                      </fileset>
 +                      <fileset dir="${libDir}">
 +                              <include name="*.jar" />
 +                              <include name="**/*.jar" />
 +                      </fileset>
 +                      <fileset dir="${java.home}/lib">
 +                              <include name="plugin.jar"/>
 +                      </fileset>
 +                      <fileset dir="appletlib">
 +                              <!-- the JmolApplet includes the JmolApplet console and the application javac seems to always try and build all packages 
                                -->
 -        <include name="${jmolJar}" />
 -      </fileset>
 +                              <include name="${jmolJar}" />
 +                      </fileset>
  
 -    </path>
 -    <property name="source.dist.name" value="${basedir}/jalview-src.tar.gz" />
 -    <!-- The Location of the java 1.1.8 jdk -->
 -    <!--<property name="java118.home" value="C:\Sun\jdk1.1.8" />
 -              -->
 -    <property name="java118.home" value="${java.home}" />
 -    <!--<property name="applet.jre.tools" value="${java118.home}/lib/classes.zip" />
 +              </path>
 +              <property name="source.dist.name" value="${basedir}/jalview-src.tar.gz" />
 +              <!-- The Location of the java 1.1.8 jdk -->
 +              <!--<property name="java118.home" value="C:\Sun\jdk1.1.8" />
                -->
 -    <!-- jre for 1.4 version -->
 -    <property name="applet.jre.tools" value="${java.home}/lib/rt.jar" />
 -
 -    <!-- the classpath for building the 1.1 applet -->
 -    <path id="jalviewlite.deps">
 -      <fileset dir="${java118.home}">
 -        <include name="lib/classes.zip" />
 -      </fileset>
 -      <fileset dir="${java.home}/lib">
 -        <include name="plugin.jar" />
 -      </fileset>
 -      <pathelement location="appletlib/${jmolJar}" />
 -    </path>
 +              <property name="java118.home" value="${java.home}" />
 +                  <!--<property name="applet.jre.tools" value="${java118.home}/lib/classes.zip" />
 +              --><!-- jre for 1.4 version -->
 +              <property name="applet.jre.tools" value="${java.home}/lib/rt.jar"/>
 +              
 +              <!-- the classpath for building the 1.1 applet -->
 +              <path id="jalviewlite.deps">
 +                      <fileset dir="${java118.home}">
 +                              <include name="lib/classes.zip" />
 +                      </fileset>
 +                      <fileset dir="${java.home}/lib">
 +                              <include name="plugin.jar"/>
 +                      </fileset>
 +                      <pathelement location="appletlib/${jmolJar}" />
 +              </path>
      <!-- default location for outputting javadoc -->
 -    <property name="javadocDir" value="${packageDir}/javadoc" />
 -  </target>
 +    <property name="javadocDir" value="${packageDir}/javadoc"/>
 +      </target>
  
  
 -  <taskdef classpath="utils/roxes-ant-tasks-1.2-2004-01-30.jar" resource="com/roxes/tools/ant/taskdefs.properties" />
 -  <target name="buildPropertiesFile" depends="init">
 -    <tstamp prefix="build">
 -      <format property="date" pattern="dd MMMM yyyy" />
 -    </tstamp>
 -    <properties file="${outputDir}/.build_properties">
 -      <header>
 +      <taskdef classpath="utils/roxes-ant-tasks-1.2-2004-01-30.jar" resource="com/roxes/tools/ant/taskdefs.properties" />
 +      <target name="buildPropertiesFile" depends="init">
 +              <tstamp prefix="build">
 +                      <format property="date" pattern="dd MMMM yyyy" />
 +              </tstamp>
 +              <properties file="${outputDir}/.build_properties">
 +                      <header>
            ---Jalview Build Details---
          </header>
 -      <property name="VERSION" value="${JALVIEW_VERSION}" />
 -      <property name="BUILD_DATE" value="${build.date}" />
 -    </properties>
 -  </target>
 -
 -
 -  <target name="clean" depends="init">
 -    <!-- not efficient yet. -->
 -    <delete dir="${outputDir}" includes="*,**/*" />
 -  </target>
 -
 -  <target name="distclean" depends="init, clean">
 -
 -    <echo message="REMOVING ALL BACKUP/AUTOSAVES!" />
 -    <delete>
 -      <fileset dir=".">
 -        <include name="${outputJar}" />
 -        <include name="#*#" />
 -        <include name="#*.*#" />
 -        <include name="**/#*#" />
 -        <include name="**/#*.*#" />
 -        <include name="*~" />
 -        <include name="*.*~" />
 -        <include name="**/*~" />
 -        <include name="**/*.*~" />
 -      </fileset>
 -    </delete>
 -  </target>
 -
 -  <target name="prepare" depends="init">
 -    <mkdir dir="${outputDir}" />
 -    <copy todir="${outputDir}">
 -      <fileset dir=".">
 -        <include name="${docDir}/**/*.*" />
 -        <include name="${helpDir}/**/*.*" />
 -        <include name="${libDir}/*.jar" />
 -      </fileset>
 -      <fileset dir="${resourceDir}">
 -        <include name="**/*.*" />
 -      </fileset>
 -    </copy>
 -  </target>
 -
 -  <target name="build" depends="prepare">
 -    <!-- not efficient yet. -->
 -    <javac source="1.5" target="1.5" srcdir="${sourceDir}" destdir="${outputDir}" debug="${javac.debug}" classpathref="build.classpath">
 -      <exclude name="jalview/*applet*" />
 -      <exclude name="jalview/appletgui/**" />
 -      <exclude name="com/stevesoft/**" />
 -    </javac>
 -  </target>
 -  <target name="buildindices" depends="init, prepare" unless="help.uptodate">
 -    <java classname="com.sun.java.help.search.Indexer" classpathref="build.classpath" fork="true" dir="${outputDir}/${helpDir}">
 -      <arg line="html" />
 -    </java>
 -  </target>
 -
 -  <target name="makefulldist" depends="makedist">
 -
 -    <copy todir="${packageDir}">
 -      <fileset dir="${resourceDir}/images">
 -        <include name="${WebStartImage}" />
 -      </fileset>
 -    </copy>
 -
 -    <taskdef classpathref="build.classpath" resource="com/roxes/tools/ant/taskdefs.properties" />
 +                      <property name="VERSION" value="${JALVIEW_VERSION}" />
 +                      <property name="BUILD_DATE" value="${build.date}" />
 +              </properties>
 +      </target>
 +
 +
 +      <target name="clean" depends="init">
 +              <!-- not efficient yet. -->
 +              <delete dir="${outputDir}" includes="*,**/*"/>
 +      </target>
 +
 +      <target name="distclean" depends="init, clean">
 +
 +              <echo message="REMOVING ALL BACKUP/AUTOSAVES!" />
 +              <delete>
 +                      <fileset dir=".">
 +                              <include name="${outputJar}" />
 +                              <include name="#*#" />
 +                              <include name="#*.*#" />
 +                              <include name="**/#*#" />
 +                              <include name="**/#*.*#" />
 +                              <include name="*~" />
 +                              <include name="*.*~" />
 +                              <include name="**/*~" />
 +                              <include name="**/*.*~" />
 +                      </fileset>
 +              </delete>
 +      </target>
 +
 +      <target name="prepare" depends="init">
 +              <mkdir dir="${outputDir}" />
 +              <copy todir="${outputDir}">
 +                      <fileset dir=".">
 +                              <include name="${docDir}/**/*.*" />
 +                              <include name="${helpDir}/**/*.*" />
 +                              <include name="${libDir}/*.jar" />
 +                      </fileset>
 +                      <fileset dir="${resourceDir}">
 +                              <include name="**/*.*" />
 +                      </fileset>
 +              </copy>
 +      </target>
 +
 +      <target name="build" depends="prepare">
 +              <!-- not efficient yet. -->
 +              <javac source="1.5" target="1.5" srcdir="${sourceDir}" destdir="${outputDir}" debug="${javac.debug}" classpathref="build.classpath">
 +                      <exclude name="jalview/*applet*" />
 +                      <exclude name="jalview/appletgui/**" />
 +                      <exclude name="com/stevesoft/**" />
 +              </javac>
 +      </target>
 +      <target name="buildindices" depends="init, prepare" unless="help.uptodate">
 +              <java classname="com.sun.java.help.search.Indexer" classpathref="build.classpath" fork="true" dir="${outputDir}/${helpDir}">
 +                      <arg line="html" />
 +              </java>
 +      </target>
 +
 +      <target name="makefulldist" depends="makedist">
-               <!-- the default keystore details might need to be edited here -->
-               <signjar storepass="${jalview.keystore.pass}" keypass="${jalview.key.pass}" keystore="${jalview.keystore}" alias="${jalview.key}" lazy="false" verbose="false" sigalg="SHA1withRSA">
-                       <fileset dir="${packageDir}">
-                               <include name="*.jar" />
-                       </fileset>
-               </signjar>
 +              <copy todir="${packageDir}">
 +                      <fileset dir="${resourceDir}/images">
 +                              <include name="${WebStartImage}"/>
 +                      </fileset>
 +                                      </copy>
 +              
 +              <taskdef classpathref="build.classpath" resource="com/roxes/tools/ant/taskdefs.properties" />
  
-               <!--    codebase="http://www.jalview.org/jalview/webstart" -->
-               <!-- href="jalview.jnlp" prevent hard-wired pickup of jnlp in certain javaws versions -->
-               <jnlp toFile="${packageDir}/jalview.jnlp" codebase="${WebStartLocation}">
-                       <information>
-                               <title>Jalview</title>
-                               <vendor>The Barton Group</vendor>
-                               <homepage href="http://www.jalview.org" />
-                               <description>Jalview Multiple Alignment Editor</description>
-                               <description kind="short">Jalview</description>
-                               <icon href="${WebStartImage}" />
-                               <offline_allowed/>
-                       </information>
-                       <resources>
-                               <j2se version="${j2sev}" initial_heap_size="10M"  />
-                               <fileset dir="${packageDir}">
-                                       <include name="jalview.jar" />
-                               </fileset>
-                               <fileset dir="${packageDir}">
-                                       <include name="*.jar" />
-                                       <include name="*_*.jar" />
-                                       <exclude name="jalview.jar" />
-                               </fileset>
-                               <property name="jalview.version" value="${JALVIEW_VERSION}" />
-                       </resources>
-                       <application_desc main_class="jalview.bin.Jalview">
-                       </application_desc>
-                       <security>
-                               <all_permissions />
-                       </security>
-               </jnlp>         
-               <jnlp toFile="${packageDir}/jalview_1G.jnlp" codebase="${WebStartLocation}">
-                       <information>
-                               <title>Jalview</title>
-                               <vendor>The Barton Group</vendor>
-                               <homepage href="http://www.jalview.org" />
-                               <description>Jalview Multiple Alignment Editor</description>
-                               <description kind="short">Jalview</description>
-                               <icon href="${WebStartImage}" />
-                               <offline_allowed />
-                       </information>
-                       <resources>
-                               <j2se version="${j2sev}" initial_heap_size="128M" max_heap_size="512M" />
+     <!-- create a dummy jar which will eventually contain the jnlp template -->
+     <jar destfile="${packageDir}/jalview_jnlp_vm.jar" index="true">
 -          <fileset dir="${packageDir}">
 -            <include name="jalview.jar"/>
 -          </fileset>
 +                              <fileset dir="${packageDir}">
 +                                      <include name="jalview.jar" />
 +                              </fileset>
+     </jar>
+       
+       <mkdir dir="${packageDir}/JNLP-INF"/>
+     <antcall target="writejnlpf">
+        <param name="jnlpFile" value="${packageDir}/JNLP-INF/APPLICATION-TEMPLATE.JNLP"/>
+        <param name="inih" value="*" />
+        <param name="maxh" value="*"/>
+     </antcall>
+               
+       <jar destfile="${packageDir}/jalview_jnlp_vm.jar" index="true">
 -            <fileset dir="${packageDir}">
 +                              <fileset dir="${packageDir}">
-                                       <include name="*.jar" />
-                                       <include name="*_*.jar" />
-                                       <exclude name="jalview.jar" />
-                               </fileset>
-                               <property name="jalview.version" value="${JALVIEW_VERSION}" />
-                       </resources>
-                       <application_desc main_class="jalview.bin.Jalview">
-                       </application_desc>
-                       <security>
-                               <all_permissions />
-                       </security>
-               </jnlp>
-               <jnlp toFile="${packageDir}/jalview_2G.jnlp" codebase="${WebStartLocation}">
-                       <information>
-                               <title>Jalview</title>
-                               <vendor>The Barton Group</vendor>
-                               <homepage href="http://www.jalview.org" />
-                               <description>Jalview Multiple Alignment Editor</description>
-                               <description kind="short">Jalview</description>
-                               <icon href="${WebStartImage}" />
-                               <offline_allowed />
-                       </information>
-                       <resources>
-                               <j2se version="${j2sev}" initial_heap_size="256M" max_heap_size="1024M" />
-                               <fileset dir="${packageDir}">
-                                       <include name="jalview.jar" />
+               <include name="JNLP-INF"/>
 -            </fileset>
 +                              </fileset>
-                               <fileset dir="${packageDir}">
-                                       <include name="*.jar" />
-                                       <include name="*_*.jar" />
-                                       <exclude name="jalview.jar" />
-                               </fileset>
-                               <property name="jalview.version" value="${JALVIEW_VERSION}" />
-                       </resources>
-                       <application_desc main_class="jalview.bin.Jalview">
-                       </application_desc>
-                       <security>
-                               <all_permissions />
-                       </security>
-               </jnlp>
+       </jar>
+     
+       <antcall target="writejnlpf">
+               <param name="jnlpFile" value="${packageDir}/jalview.jnlp"/>
+               <param name="inih" value="10M" />
+         <param name="maxh" value="256M"/>
+       </antcall>
+       
+       <antcall target="writejnlpf">
+         <param name="jnlpFile" value="${packageDir}/jalview_1G.jnlp"/>
+         <param name="inih" value="128M" />
+               <param name="maxh" value="512M"/>
+       </antcall>
+           
+       <antcall target="writejnlpf">
+         <param name="jnlpFile" value="${packageDir}/jalview_2G.jnlp"/>
+         <param name="inih" value="256M" />
+         <param name="maxh" value="1024M"/>
+       </antcall>
+       
 -      <!-- finally, need to postprocess to add in associations at end of 'information' element 
 +                      <!-- finally, need to postprocess to add in associations at end of 'information' element 
                        
                        <xslt in="${packageDir}/jalview_noa_1G.jnlp" out="${packageDir}/jalview_1G.jnlp">
                
          <association mime-type="application-x/ext-file" extensions="amsa"/>
          <association mime-type="application-x/ext-file" extensions="stk"/>
          <association mime-type="application-x/ext-file" extensions="jar"/>-->
-       
+     <!-- and sign the jars -->
+     <!-- the default keystore details might need to be edited here -->
+     <signjar storepass="${jalview.keystore.pass}" keypass="${jalview.key.pass}" keystore="${jalview.keystore}" alias="${jalview.key}" lazy="false" verbose="false" sigalg="SHA1withRSA">
+         <fileset dir="${packageDir}">
+           <include name="*.jar" />
+         </fileset>
+     </signjar>
 -  </target>
 -
 -  <target name="runenv" depends="init">
 -    <path id="run.classpath">
 -      <pathelement location="${outputDir}" />
 -      <fileset dir="${outputDir}">
 -        <include name="${libDir}/*.jar" />
 -      </fileset>
 -    </path>
 -    <pathconvert targetos="unix" refid="run.classpath" property="run.classpath" />
 -
 -    <echo>java -classpath ${run.classpath} jalview.bin.Jalview
 +      </target>
 +
 +      <target name="runenv" depends="init">
 +              <path id="run.classpath">
 +                      <pathelement location="${outputDir}" />
 +                      <fileset dir="${outputDir}">
 +                              <include name="${libDir}/*.jar" />
 +                      </fileset>
 +              </path>
 +              <pathconvert targetos="unix" refid="run.classpath" property="run.classpath" />
 +
 +              <echo>java -classpath ${run.classpath} jalview.bin.Jalview
        </echo>
 -  </target>
 +      </target>
+   <target name="writejnlpf">
+       <presetdef name="jnlpf">
+           <jnlp codebase="${WebStartLocation}">
+             <information>
+               <title>Jalview</title>
+               <vendor>The Barton Group</vendor>
+               <homepage href="http://www.jalview.org" />
+               <description>Jalview Multiple Alignment Editor</description>
+               <description kind="short">Jalview</description>
+               <icon href="${WebStartImage}" />
+               <offline_allowed />
+             </information>
+             <resources>
+               <j2se version="${j2sev}" initial_heap_size="${inih}" max_heap_size="${maxh}" />
+               <fileset dir="${packageDir}">
+                 <include name="jalview.jar" />
+               </fileset>
+               <fileset dir="${packageDir}">
+                 <include name="*.jar" />
+                 <include name="*_*.jar" />
+                 <exclude name="jalview.jar" />
+               </fileset>
+               <property name="jalview.version" value="${JALVIEW_VERSION}" />
+             </resources>
+             <application_desc main_class="jalview.bin.Jalview">
+             </application_desc>
+             <security>
+               <all_permissions />
+             </security>
+           </jnlp>
+           </presetdef>
+           <jnlpf toFile="${jnlpFile}"/>
+   </target>
 -  <target name="buildextclients" depends="init">
 -    <input message="Building external client source from WSDLs - Do you really want to do this ? (Yy/Nn)" validargs="Y,y,n,N" defaultvalue="N" addproperty="doextbuild.response" />
 -    <condition property="dontextbuild">
 -      <equals arg1="n" arg2="${doextbuild.response}" />
 -    </condition>
 -    <condition property="dontextbuild">
 -      <equals arg1="N" arg2="${doextbuild.response}" />
 -    </condition>
 -    <fail if="dontextbuild">
 +      <target name="buildextclients" depends="init">
 +              <input message="Building external client source from WSDLs - Do you really want to do this ? (Yy/Nn)" validargs="Y,y,n,N" defaultvalue="N" addproperty="doextbuild.response" />
 +              <condition property="dontextbuild">
 +                      <equals arg1="n" arg2="${doextbuild.response}" />
 +              </condition>
 +              <condition property="dontextbuild">
 +                      <equals arg1="N" arg2="${doextbuild.response}" />
 +              </condition>
 +              <fail if="dontextbuild">
          Build External Client Code process aborted by user. Jalview source is unchanged.
        </fail>
 -    <!-- Currently, this doesn't happen automatically.
 +              <!-- Currently, this doesn't happen automatically.
       1. Run WSDL2Java as below, which generates an ext.vamsas +
       vamsas.<datapackages> fileset.
       2. refactor ext.vamsas.SpecificserviceWS* to
       might be using.
  
  -->
 -    <path id="axisbuild">
 -      <path refid="build.classpath" />
 -    </path>
 -    <taskdef resource="axis-tasks.properties" classpathref="axisbuild" />
 -    <move todir="./bak">
 -      <fileset dir="${sourceDir}" id="client">
 -        <include name="${wsdl.ClientNS}/*.*" />
 -      </fileset>
 -    </move>
 -
 -    <axis-wsdl2java output="${sourceDir}" verbose="true" url="${wsdl.MsaWS2}" serverside="false" deployscope="Request" debug="false" helpergen="true" all="true">
 -      <mappingSet>
 -        <mapping namespace="${wsdl.Namespace}" package="${wsdl.ClientNS}" />
 -        <mapping namespace="http://dataTypes.vamsas" package="${wsdl.ClientNS}" />
 -      </mappingSet>
 -    </axis-wsdl2java>
 -  </target>
 -
 -  <target name="makedist" depends="build, buildPropertiesFile, buildindices">
 -    <!-- make the package jar if not already existing -->
 -    <mkdir dir="${packageDir}" />
 -    <!-- clean dir if it already existed -->
 -    <delete>
 -      <fileset dir="${packageDir}">
 -        <include name="*.jar" />
 -      </fileset>
 -    </delete>
 -    <jar destfile="${packageDir}/${outputJar}" index="true">
 -      <manifest>
 -        <attribute name="Main-Class" value="jalview.bin.Jalview" />
 +              <path id="axisbuild">
 +                      <path refid="build.classpath" />
 +              </path>
 +              <taskdef resource="axis-tasks.properties" classpathref="axisbuild" />
 +              <move todir="./bak">
 +                      <fileset dir="${sourceDir}" id="client">
 +                              <include name="${wsdl.ClientNS}/*.*" />
 +                      </fileset>
 +              </move>
 +
 +              <axis-wsdl2java output="${sourceDir}" verbose="true" url="${wsdl.MsaWS2}" serverside="false" deployscope="Request" debug="false" helpergen="true" all="true">
 +                      <mappingSet>
 +                              <mapping namespace="${wsdl.Namespace}" package="${wsdl.ClientNS}" />
 +                              <mapping namespace="http://dataTypes.vamsas" package="${wsdl.ClientNS}" />
 +                      </mappingSet>
 +              </axis-wsdl2java>
 +      </target>
 +
 +      <target name="makedist" depends="build, buildPropertiesFile, buildindices">
 +              <!-- make the package jar if not already existing -->
 +              <mkdir dir="${packageDir}" />
 +              <!-- clean dir if it already existed -->
 +              <delete>
 +                      <fileset dir="${packageDir}">
 +                              <include name="*.jar"/>
 +                      </fileset>
 +              </delete>
 +              <jar destfile="${packageDir}/${outputJar}" index="true">
 +                      <manifest>
 +                              <attribute name="Main-Class" value="jalview.bin.Jalview" />
          <attribute name="Permissions" value="all-permissions" />
-         <!--<attribute name="Trusted-Lib" value="true" /> -->
-         <attribute name="Application-Name" value="Jalview Desktop"/>
-         <attribute name="Codebase" value="${application.codebase}"/>
+         <attribute name="Application-Name" value="Jalview Desktop" />
+         <attribute name="Codebase" value="${application.codebase}" />
 -      </manifest>
 -      <fileset dir="${outputDir}/">
 -        <exclude name="cache*/**" />
 -        <exclude name="*.jar" />
 -        <exclude name="*.jar.*" />
 -        <exclude name="**/*.jar" />
 -        <exclude name="**/*.jar.*" />
 -      </fileset>
 -    </jar>
 -
 -    <copy toDir="${packageDir}" flatten="true">
 -      <fileset dir="${outputDir}">
 -        <include name="*.jar" />
 -        <include name="**/*.jar" />
 -      </fileset>
 -    </copy>
 -  </target>
 -
 -
 -  <!-- jalopy code reformatter -->
 -  <target name="sourcescrub" depends="init,build">
 -    <jalopy destdir="jsrc" classpathref="run.classpath" convention="jalview-jalopy.xml">
 -      <fileset dir="${sourceDir}">
 -        <include name="*.java" />
 -        <include name="**/*.java" />
 -        <include name="**/**/*.java" />
 -      </fileset>
 -    </jalopy>
 -  </target>
 -
 -
 -
 -  <!-- Compile, package and obfuscate Jalview Applet -->
 -  <target name="makeApplet" depends="obfuscate" description="assemble the final jalviewLite applet jar with or without obfuscation" />
 -
 -  <target name="compileApplet" depends="init,clean">
 -    <mkdir dir="${outputDir}" />
 -    <javac source="1.5" target="1.5" srcdir="${sourceDir}" destdir="${outputDir}" debug="${javac.debug}" classpathref="jalviewlite.deps" includes="jalview/appletgui/**" excludes="ext/**,MCview/**,org/**,vamsas/**" />
 -  </target>
 -
 -  <target name="packageApplet" depends="compileApplet, buildPropertiesFile">
 -    <copy file="${resourceDir}/images/idwidth.gif" toFile="${outputDir}/images/idwidth.gif" />
 -    <copy file="${resourceDir}/images/link.gif" toFile="${outputDir}/images/link.gif" />
 -    <jar destfile="in.jar" index="true">
 -      <manifest>
 -        <attribute name="Main-Class" value="jalview.bin.JalviewLite" />
 -        <attribute name="Application-Name" value="JalviewLite" />
 -        <attribute name="Codebase" value="${applet.codebase}" />
 -      </manifest>
 -      <fileset dir="${outputDir}">
 -        <include name="com/**" />
 -        <include name="MCview/**" />
 -        <include name="jalview/**" />
 -        <include name=".build_properties" />
 -        <include name="images/idwidth.gif" />
 -        <include name="images/link.gif" />
 -      </fileset>
 -    </jar>
 -  </target>
 -  <target name="obfuscate" depends="-obfuscatefake,-obfuscatereally">
 -  </target>
 -  <target name="-obfuscatefake" depends="packageApplet" if="donotobfuscate">
 -    <copy file="in.jar" tofile="${jalviewLiteJar}" overwrite="true" />
 -    <delete file="in.jar" />
 -  </target>
 -  <target name="-obfuscatereally" unless="donotobfuscate">
 -
 -    <path id="obfuscateDeps.path">
 -      <pathelement location="${applet.jre.tools}" />
 -      <pathelement location="appletlib/${jmolJar}" />
 -    </path>
 -    <taskdef resource="proguard/ant/task.properties" classpath="utils/proguard.jar" />
 -
 -    <proguard>
 -      <injar file="in.jar" />
 -      <outjar file="${jalviewLiteJar}" />
 -      <libraryjar refid="obfuscateDeps.path" />
 -      <dontwarn />
 -      <keep access="public" type="class" name="jalview.bin.JalviewLite">
 -        <field access="public" />
 -        <method access="public" />
 -        <constructor access="public" />
 -      </keep>
 -      <keep access="public" type="class" name="jalview.appletgui.AlignFrame">
 -        <field access="public" />
 -        <method access="public" />
 -        <constructor access="public" />
 -      </keep>
 -      <!--      -libraryjars "${obfuscateDeps}"
 +                      </manifest>
 +                      <fileset dir="${outputDir}/">
 +                              <exclude name="cache*/**" />
 +                              <exclude name="*.jar" />
 +                              <exclude name="*.jar.*" />
 +                              <exclude name="**/*.jar" />
 +                              <exclude name="**/*.jar.*" />
 +                      </fileset>
 +              </jar>
 +
 +              <copy toDir="${packageDir}" flatten="true">
 +                      <fileset dir="${outputDir}">
 +                              <include name="*.jar" />
 +                              <include name="**/*.jar" />
 +                      </fileset>
 +              </copy>
 +      </target>
 +
 +
 +      <!-- jalopy code reformatter -->
 +      <target name="sourcescrub" depends="init,build">
 +              <jalopy destdir="jsrc" classpathref="run.classpath" convention="jalview-jalopy.xml">
 +                      <fileset dir="${sourceDir}">
 +                              <include name="*.java" />
 +                              <include name="**/*.java" />
 +                              <include name="**/**/*.java" />
 +                      </fileset>
 +              </jalopy>
 +      </target>
 +
 +
 +
 +      <!-- Compile, package and obfuscate Jalview Applet -->
 +      <target name="makeApplet" depends="obfuscate" description="assemble the final jalviewLite applet jar with or without obfuscation"/>
 +
 +      <target name="compileApplet" depends="init,clean">
 +              <mkdir dir="${outputDir}" />
 +              <javac source="1.5" target="1.5" srcdir="${sourceDir}" destdir="${outputDir}" debug="${javac.debug}" 
 +                      classpathref="jalviewlite.deps" includes="jalview/appletgui/**"
 +                      excludes="ext/**,MCview/**,org/**,vamsas/**" />
 +      </target>
 +
 +      <target name="packageApplet" depends="compileApplet, buildPropertiesFile">
 +              <copy file="${resourceDir}/images/idwidth.gif" toFile="${outputDir}/images/idwidth.gif" />
 +              <copy file="${resourceDir}/images/link.gif" toFile="${outputDir}/images/link.gif" />
 +              <copy todir="${outputDir}/lang">
 +                      <fileset dir="${resourceDir}/lang"><include name="**.*"/></fileset></copy>
 +              <jar destfile="in.jar" index="true">
 +                      <manifest>
 +                              <attribute name="Main-Class" value="jalview.bin.JalviewLite" />
-                               <attribute name="Application-Name" value="JalviewLite Applet"/>
-                               <!--            <attribute name="Permissions" value="sandbox" /> -->
-                               <!--<attribute name="Trusted-Lib" value="true" /> -->
-                               <attribute name="Codebase" value="${applet.codebase}"/>
-                               <attribute name="Caller-Allowable-Codebase" value="${applet.caller-codebase}"/>
++              <attribute name="Application-Name" value="JalviewLite" />
++          <attribute name="Codebase" value="${applet.codebase}" />
 +                      </manifest>
 +                      <fileset dir="${outputDir}">
 +                              <include name="com/**" />
 +                              <include name="MCview/**" />
 +                              <include name="jalview/**" />
 +                              <include name=".build_properties" />
 +                              <include name="images/idwidth.gif" />
 +                              <include name="images/link.gif" />
 +                              <include name="lang/**" />
 +                      </fileset>
 +              </jar>
 +      </target>
 +      <target name="obfuscate" depends="-obfuscatefake,-obfuscatereally">
 +      </target>
 +      <target name="-obfuscatefake" depends="packageApplet" if="donotobfuscate">
 +              <copy file="in.jar" tofile="${jalviewLiteJar}" overwrite="true" />
 +              <delete file="in.jar" />
 +      </target>
 +      <target name="-obfuscatereally" unless="donotobfuscate">
 +
 +              <path id="obfuscateDeps.path">
 +                      <pathelement location="${applet.jre.tools}" />
 +                      <pathelement location="appletlib/${jmolJar}" />
 +              </path>
 +              <taskdef resource="proguard/ant/task.properties" classpath="utils/proguard.jar" />
 +
 +              <proguard>
 +                      <injar file="in.jar" />
 +                      <outjar file="${jalviewLiteJar}" />
 +                      <libraryjar refid="obfuscateDeps.path" />
 +                      <dontwarn/>
 +                      <keep access="public" type="class" name="jalview.bin.JalviewLite">
 +                              <field access="public" />
 +                              <method access="public" />
 +                              <constructor access="public" />
 +                      </keep>
 +                      <keep access="public" type="class" name="jalview.appletgui.AlignFrame">
 +                              <field access="public" />
 +                              <method access="public" />
 +                              <constructor access="public" />
 +                      </keep>
 +                      <!--      -libraryjars "${obfuscateDeps}"
        -injars      in.jar
        -outjars     jalviewApplet.jar
        -keep public class jalview.bin.JalviewLite
         { public * ; } -->
 -    </proguard>
 -    <delete file="in.jar" />
 -  </target>
 -
 -  <target name="castorbinding" depends="init" description="Generate Java bindings to supported Jalview XML models.">
 -    <taskdef name="castor-srcgen" classname="org.castor.anttask.CastorCodeGenTask" classpathref="build.classpath" />
 -    <delete>
 -      <fileset dir="${sourceDir}/jalview/schemabinding/version2">
 -        <include name="*.java" />
 -        <include name="descriptors/*.java" />
 -      </fileset>
 -    </delete>
 -    <castor-srcgen file="${schemaDir}/vamsas.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 -    <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 -    <castor-srcgen file="${schemaDir}/JalviewWsParamSet.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 -    <castor-srcgen file="${schemaDir}/jalview.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 -    <!-- 
 +              </proguard>
 +              <delete file="in.jar" />
 +      </target>
 +
 +      <target name="castorbinding" depends="init" description="Generate Java bindings to supported Jalview XML models.">
 +              <taskdef name="castor-srcgen" classname="org.castor.anttask.CastorCodeGenTask" classpathref="build.classpath" />
 +              <delete>
 +                      <fileset dir="${sourceDir}/jalview/schemabinding/version2">
 +                              <include name="*.java" />
 +                              <include name="descriptors/*.java" />
 +                      </fileset>
 +              </delete>
 +              <castor-srcgen file="${schemaDir}/vamsas.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 +              <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 +              <castor-srcgen file="${schemaDir}/JalviewWsParamSet.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 +              <castor-srcgen file="${schemaDir}/jalview.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
 +              <!-- 
                now build the jalview.binding package with the old schema set
                -->
 -    <delete>
 -      <fileset dir="${sourceDir}/jalview/binding/">
 -        <include name="**" />
 -      </fileset>
 -    </delete>
 -    <castor-srcgen file="${schemaDir}/vamsasJvV1.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
 -    <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
 -    <castor-srcgen file="${schemaDir}/jalviewJvV1.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
 -  </target>
 -  <target name="sourcedist" description="create jalview source distribution" depends="init">
 -    <delete file="${source.dist.name}" />
 -    <tar destfile="${source.dist.name}" compression="gzip">
 -      <tarfileset dir="./" prefix="jalview" preserveLeadingSlashes="true">
 -        <include name="LICENSE" />
 -        <include name="README" />
 -        <include name="build.xml" />
 -        <include name="jalview-jalopy.xml" />
 -        <include name="JalviewApplet.jpx" />
 -        <include name="JalviewX.jpx" />
 -        <include name="nbbuild.xml" />
 -        <include name="nbproject/genfiles.properties" />
 -        <include name="nbproject/project.properties" />
 -        <include name="nbproject/project.xml" />
 -        <include name="${sourceDir}/*.java" />
 -        <include name="${sourceDir}/**/*.java" />
 -        <include name="${sourceDir}/**/*.cdr" />
 -        <include name="${libDir}/**/*" />
 -        <include name="${resourceDir}/**/*" />
 -        <include name="${helpDir}/**/*" />
 -        <include name="appletlib/${jmolJar}" />
 -        <exclude name="**/*locales" />
 -        <exclude name="*locales/**" />
 -        <exclude name="utils/InstallAnywhere/**Build.iap_xml" />
 -        <exclude name="utils/InstallAnywhere/**Build*/**" />
 -        <exclude name="utils/InstallAnywhere/**Build*/**" />
 -        <exclude name="utils/InstallAnywhere/**locale*" />
 -        <exclude name="utils/InstallAnywhere/**locale*/**" />
 -        <include name="${schemaDir}/**/*" />
 -        <include name="utils/**/*" />
 -        <include name="${docDir}/**/*" />
 -        <include name="examples/**/*" />
 -      </tarfileset>
 -    </tar>
 -  </target>
 -  <target name="pubapplet" description="installs the jalviewLite applet and dependent jars into an applet examples directory built under ${outputDir}" depends="makeApplet">
 -    <copy todir="${packageDir}/examples">
 -      <fileset dir="examples">
 -        <include name="**/*" />
 -        <include name="javascript/*" />
 -        <include name="jmol/*" />
 -      </fileset>
 -      <fileset dir=".">
 +              <delete>
 +                      <fileset dir="${sourceDir}/jalview/binding/">
 +                              <include name="**" />
 +                      </fileset>
 +              </delete>
 +              <castor-srcgen file="${schemaDir}/vamsasJvV1.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
 +              <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
 +              <castor-srcgen file="${schemaDir}/jalviewJvV1.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
 +      </target>
 +      <target name="sourcedist" description="create jalview source distribution" depends="init">
 +              <delete file="${source.dist.name}" />
 +              <tar destfile="${source.dist.name}" compression="gzip">
 +                      <tarfileset dir="./" prefix="jalview" preserveLeadingSlashes="true">
 +                              <include name="LICENSE" />
 +                              <include name="README" />
 +                              <include name="build.xml" />
 +                              <include name="jalview-jalopy.xml" />
 +                              <include name="JalviewApplet.jpx" />
 +                              <include name="JalviewX.jpx" />
 +                              <include name="nbbuild.xml"/>
 +                              <include name="nbproject/genfiles.properties"/>
 +        <include name="nbproject/project.properties"/>
 +        <include name="nbproject/project.xml"/>
 +                              <include name="${sourceDir}/*.java" />
 +                              <include name="${sourceDir}/**/*.java" />
 +                              <include name="${sourceDir}/**/*.cdr" />
 +                              <include name="${libDir}/**/*" />
 +                              <include name="${resourceDir}/**/*" />
 +                              <include name="${helpDir}/**/*" />
 +                              <include name="appletlib/${jmolJar}" />
 +                              <exclude name="**/*locales" />
 +                              <exclude name="*locales/**" />
 +                              <exclude name="utils/InstallAnywhere/**Build.iap_xml" />
 +                              <exclude name="utils/InstallAnywhere/**Build*/**" />
 +                              <exclude name="utils/InstallAnywhere/**Build*/**" />
 +                              <exclude name="utils/InstallAnywhere/**locale*" />
 +                              <exclude name="utils/InstallAnywhere/**locale*/**" />
 +                              <include name="${schemaDir}/**/*" />
 +                              <include name="utils/**/*" />
 +                              <include name="${docDir}/**/*" />
 +                              <include name="examples/**/*" />
 +                      </tarfileset>
 +              </tar>
 +      </target>
 +      <target name="pubapplet" description="installs the jalviewLite applet and dependent jars into an applet examples directory built under ${outputDir}" depends="makeApplet">
 +        <copy todir="${packageDir}/examples">
 +        <fileset dir="examples">
 +              <include name="**/*"/>
 +              <include name="javascript/*"/>
 +      <include name="jmol/*"/>
 +        </fileset>
 +              <fileset dir=".">
-               <include name="jalviewApplet.jar"/>
+         <include name="${jalviewLiteJar}" />
 +                      </fileset>
 +              <fileset dir="appletlib">
 +                    <include name="**/*"/>
 +                      </fileset>
 +        </copy>
 +          <jar update="true" index="true" jarfile="${packageDir}/examples/${jalviewLiteJar}"/>
 +          <jar update="true" index="true" jarfile="${packageDir}/examples/${jmolJar}">
 +              <manifest>
 +              <attribute name="Application-Name" value="Jmol (bundled with JalviewLite)"/>
 +              <!--          <attribute name="Permissions" value="sandbox" /> -->
 +              <!--<attribute name="Trusted-Lib" value="true" /> -->
 +              <attribute name="Codebase" value="${applet.codebase}"/>
 +              <attribute name="Caller-Allowable-Codebase" value="${applet.caller-codebase}"/>
 +                </manifest>
 +              </jar>
 +    <signjar sigalg="SHA1WithRSA" storepass="${jalview.keystore.pass}" keypass="${jalview.key.pass}" keystore="${jalview.keystore}" alias="${jalview.key}" lazy="false" verbose="false">
 +      <fileset dir="${packageDir}/examples">
 +        <include name="*.jar" />
        </fileset>
 -      <fileset dir="appletlib">
 -        <include name="**/*" />
 -      </fileset>
 -    </copy>
 -
 +    </signjar>
+     <presetdef name="ap_applet.jar">
+       <!-- build a signed applet with 'all-permissions' - 
+                         Needs 'param name="permissions' value="all-permissions"' in applet tag
+                         JalviewLite+JmolApplet linked sequence/structure fails
+                         Mixed code warnings are raised
+                         -->
+       <jar update="true" index="true">
+         <manifest>
+           <attribute name="Application-Name" value="JalviewLite" />
+           <attribute name="Permissions" value="all-permissions" />
+           <attribute name="Codebase" value="${applet.codebase}" />
+           <attribute name="Caller-Allowable-Codebase" value="${applet.caller-codebase}" />
+           <attribute name="Application-Library-Allowable-Codebase" value="${applet.codebase}" />
+         </manifest>
+       </jar>
+     </presetdef>
+     <presetdef name="applet.jar">
+       <!-- build signed applet with sandbox permissions -
+                         Needs 'param name="permissions' value="sandbox"' in applet tag
+                        Preserves Pre-Java 1.7_u45 behavior once 'permissions' parameter added to applet tag 
+                       -->
+       <jar update="true" index="true">
+         <manifest>
+           <attribute name="Application-Name" value="JalviewLite" />
+           <attribute name="Permissions" value="sandbox" />
+           <attribute name="Codebase" value="${applet.codebase}" />
+           <attribute name="Caller-Allowable-Codebase" value="${applet.caller-codebase}" />
+           <attribute name="Application-Library-Allowable-Codebase" value="${applet.codebase}" />
+         </manifest>
+       </jar>
+     </presetdef>
+     <presetdef name="tl_applet.jar">
+       <!-- build signed applet with trusted library/trusted permissions -
+                               Needs 'param name="permissions' value="all-permissions"' in applet tag
+                              j1.7_45:
+                              No mixed code warnings raised 
+                              Jmol/JalviewLite sequence/structure example doesn't link structures
+                              Raises dialog asking user to allow page to control applet via LiveConnect javascript
+                              
+                             -->
+       <jar update="true" index="true">
+         <manifest>
+           <attribute name="Application-Name" value="JalviewLite" />
+           <attribute name="Permissions" value="all-permissions" />
+           <attribute name="Codebase" value="${applet.codebase}" />
+           <attribute name="Trusted-Only" value="true" />
+           <attribute name="Trusted-Library" value="true" />
+         </manifest>
+       </jar>
+     </presetdef>
+     <presetdef name="to_applet.jar">
+       <!-- not fully test variant (yet) -->
+       <jar update="true" index="true">
+         <manifest>
+           <attribute name="Application-Name" value="JalviewLite" />
+           <attribute name="Permissions" value="all-permissions" />
+           <attribute name="Codebase" value="${applet.codebase}" />
+           <attribute name="Trusted-Only" value="true" />
+         </manifest>
+       </jar>
+     </presetdef>
+     <!-- create differently privileged artefacts -->
+     <copy file="${packageDir}/examples/${jalviewLiteJar}" tofile="${packageDir}/examples/u_${jalviewLiteJar}" />
+     <copy file="${packageDir}/examples/${jmolJar}" tofile="${packageDir}/examples/u_${jmolJar}"/>
+     <copy file="${packageDir}/examples/${jalviewLiteJar}" tofile="${packageDir}/examples/ap_${jalviewLiteJar}" />
+     <copy file="${packageDir}/examples/${jmolJar}" tofile="${packageDir}/examples/ap_${jmolJar}"/>
+     <ap_applet.jar jarfile="${packageDir}/examples/ap_${jalviewLiteJar}" />
+     <ap_applet.jar jarfile="${packageDir}/examples/ap_${jmolJar}" />
+     <copy file="${packageDir}/examples/${jalviewLiteJar}" tofile="${packageDir}/examples/tl_${jalviewLiteJar}" />
+     <copy file="${packageDir}/examples/${jmolJar}" tofile="${packageDir}/examples/tl_${jmolJar}" />
+     <tl_applet.jar jarfile="${packageDir}/examples/tl_${jalviewLiteJar}" />
+     <tl_applet.jar jarfile="${packageDir}/examples/tl_${jmolJar}" />
+     <copy file="${packageDir}/examples/${jalviewLiteJar}" tofile="${packageDir}/examples/to_${jalviewLiteJar}" />
+     <copy file="${packageDir}/examples/${jmolJar}" tofile="${packageDir}/examples/to_${jmolJar}" />
+     <to_applet.jar jarfile="${packageDir}/examples/to_${jalviewLiteJar}" />
+     <to_applet.jar jarfile="${packageDir}/examples/to_${jmolJar}" />
+     <!-- finally, create manifest for original jars -->
+     <applet.jar jarfile="${packageDir}/examples/${jalviewLiteJar}" />
+     <applet.jar jarfile="${packageDir}/examples/${jmolJar}" />
+     <!-- todo - write examples/downloads for alternate versions of the applet -->
+     <signjar storepass="${jalview.keystore.pass}" keypass="${jalview.key.pass}" keystore="${jalview.keystore}" alias="${jalview.key}" lazy="false" verbose="false">
+       <fileset dir="${packageDir}/examples">
+         <include name="${jalviewLiteJar}" />
+         <include name="${jmolJar}" />
+         <include name="to_${jalviewLiteJar}" />
+         <include name="to_${jmolJar}" />
+         <include name="tl_${jalviewLiteJar}" />
+         <include name="tl_${jmolJar}" />
+         <include name="ap_${jalviewLiteJar}" />
+         <include name="ap_${jmolJar}" />
+       </fileset>
+     </signjar>
 -  </target>
 -  <target name="sourcedoc" description="Create jalview source documentation pages" depends="init">
 -    <javadoc destdir="${javadocDir}">
 -      <packageset dir="${sourceDir}" includes="jalview/*,MCView/*">
 -      </packageset>
 -    </javadoc>
 -  </target>
 -
 +      </target>
 +      <target name="sourcedoc" description="Create jalview source documentation pages" depends="init">
 +       <javadoc destdir="${javadocDir}">
 +              <packageset dir="${sourceDir}" includes="jalview/*,MCView/*">
 +              </packageset>
 +              </javadoc>
 +      </target>
 +      
  </project>
 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
  <!--
 -    * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
 -    * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
 -    * 
 -    * This file is part of Jalview.
 -    * 
 -    * Jalview is free software: you can redistribute it and/or
 -    * modify it under the terms of the GNU General Public License 
 -    * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
 -    *  
 -    * Jalview is distributed in the hope that it will be useful, but 
 -    * WITHOUT ANY WARRANTY; without even the implied warranty 
 -    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
 -    * PURPOSE.  See the GNU General Public License for more details.
 -    * 
 -    * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
 -  -->
 + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
 + * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
 + * 
 + * This file is part of Jalview.
 + * 
 + * Jalview is free software: you can redistribute it and/or
 + * modify it under the terms of the GNU General Public License 
 + * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
 + *  
 + * Jalview is distributed in the hope that it will be useful, but 
 + * WITHOUT ANY WARRANTY; without even the implied warranty 
 + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
 + * PURPOSE.  See the GNU General Public License for more details.
 + * 
 + * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
 +-->
- <html xmlns="http://www.w3.org/1999/xhtml">
  <head>
- <title>Linked Jalview Applets Demo</title>
+   <TITLE>Linked JalviewLites</TITLE>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
 -
 -  <link href="css/reset.css" rel="stylesheet" type="text/css" />
 -  <link href="css/style.css" rel="stylesheet" type="text/css" />
    
 + <link href="css/reset.css" rel="stylesheet" type="text/css" />
 + <link href="css/style.css" rel="stylesheet" type="text/css" />
- <script>
- <!--//--><![CDATA[//><!--
- var _gaq = _gaq || [];_gaq.push(["_setAccount", "UA-9060947-1"]);_gaq.push(["_trackPageview"]);(function() {var ga = document.createElement("script");ga.type = "text/javascript";ga.async = true;ga.src = ("https:" == document.location.protocol ? "https://ssl" : "http://www") + ".google-analytics.com/ga.js";var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(ga, s);})();
- //--><!]]>
- </script>
- <script src="http://www.java.com/js/deployJava.js"></script>
- <script src="javascript/jalview.js" language="javascript"></script>
- <script>  //deployJava.debug="true";
-   
-   function lJvApp() {
-     var jvapp = document.getElementById("jvapp");
-     var jvfollower = document.getElementById("jvfollower");
-     setConsole(document.getElementById("stdout"));
-     //jvapp.setSeparator(""+jvapp.getSeparator());
-     linkJvJmol(jvapp);
-   };
-   function lJvFollow() {
-     var jvapp = document.getElementById("jvapp");
-     var jvfollower = document.getElementById("jvfollower");
-     //jvfollower.setSeparator(""+jvfollower.getSeparator());
-     linkJvJmol(jvfollower);
-   };
- </script>
 + 
    <!--[if IE 6]>
 -      <link rel="stylesheet" type="text/css" href="css/ie6.css" />
 -      <![endif]-->
 + <link rel="stylesheet" type="text/css" href="css/ie6.css" />
 +<![endif]-->
  
 -  <!--[if IE 7]>
 -      <link rel="stylesheet" type="text/css" href="css/ie7.css" />
 -      <![endif]-->
 +<!--[if IE 7]>
 + <link rel="stylesheet" type="text/css" href="css/ie7.css" />
 +<![endif]-->
  
 -  <!-- dd menu -->
 -  <script type="text/javascript">
 -    <!--
 -      var timeout         = 500;
 -      var closetimer  = 0;
 -      var ddmenuitem      = 0;
 +<!-- dd menu -->
 +<script type="text/javascript">
 +<!--
 +var timeout         = 500;
 +var closetimer  = 0;
 +var ddmenuitem      = 0;
  
 -      // open hidden layer
 -      function mopen(id)
 -      { 
 -      // cancel close timer
 -      mcancelclosetime();
 +// open hidden layer
 +function mopen(id)
 +{ 
 + // cancel close timer
 + mcancelclosetime();
  
 -      // close old layer
 -      if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
 + // close old layer
 + if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
  
 -      // get new layer and show it
 -      ddmenuitem = document.getElementById(id);
 -      ddmenuitem.style.visibility = 'visible';
 + // get new layer and show it
 + ddmenuitem = document.getElementById(id);
 + ddmenuitem.style.visibility = 'visible';
  
 -      }
 -      // close showed layer
 -      function mclose()
 -      {
 -      if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
 -      }
 +}
 +// close showed layer
 +function mclose()
 +{
 + if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
 +}
  
 -      // go close timer
 -      function mclosetime()
 -      {
 -      closetimer = window.setTimeout(mclose, timeout);
 -      }
 +// go close timer
 +function mclosetime()
 +{
 + closetimer = window.setTimeout(mclose, timeout);
 +}
  
 -      // cancel close timer
 -      function mcancelclosetime()
 -      {
 -      if(closetimer)
 -      {
 -      window.clearTimeout(closetimer);
 -      closetimer = null;
 -      }
 -      }
 +// cancel close timer
 +function mcancelclosetime()
 +{
 + if(closetimer)
 + {
 +  window.clearTimeout(closetimer);
 +  closetimer = null;
 + }
 +}
  
 -      // close layer when click-out
 -      document.onclick = mclose; 
 -      // -->
 -  </script>
 +// close layer when click-out
 +document.onclick = mclose; 
 +// -->
 +</script>
+   <script>
+     <!--//--><![CDATA[//><!--
+ var _gaq = _gaq || [];_gaq.push(["_setAccount", "UA-9060947-1"]);_gaq.push(["_trackPageview"]);(function() {var ga = document.createElement("script");ga.type = "text/javascript";ga.async = true;ga.src = ("https:" == document.location.protocol ? "https://ssl" : "http://www") + ".google-analytics.com/ga.js";var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(ga, s);})();
+ //--><!]]>
+   </script>
  
  </head>
  
  <div id="pageWrap">
  
  <div id="sideNav">
 -  <ul>
 -      <li ><a href="applets.html">JalviewLite Examples</a></li>
 +<ul>
 +<li><a href="applets.html">JalviewLite Examples</a></li>
+       <li ><a href="jalviewLiteJs.html">Javascript API</a></li>
 -      <li ><a href="appletParameters.html">Applet Parameters</a></li>
 +<li><a href="appletParameters.html">Applet Parameters</a></li>
- <li><a href="jalviewLiteJs.html">Javascript API</a></li>
- <li><a href="formComplete.html">in-page API demo</a></li>
- <li class="jvlite-nav-small"><a href="linkedApplets_ng.html">Two JalviewLites demo</a></li>
- <li><a href="embeddedWJmol.html">Jalview and Jmol demo</a></li>
+       <li ><a href="embedded.html">Embedded Alignment</a></li>
+       <li ><a href="embeddedWJmol.html">Jalview and Jmol</a></li>
+       <li ><a href="formComplete.html">Access from Javascript</a></li>
+       <li ><a href="javascriptLaunch.html">Javascript Launch</a></li>
+       <li class="jvlite-nav-small"><a href="linkedapplets_ng.html">Linked JalviewLites</a></li>
 -  </ul>
 +</ul>
  </div>
  
 -<div id="content" class="content">
 +<div id="content" class="content"> 
-     <strong>JalviewLite Linked Applets Demo<br></strong>
-     <p>The two applets below use <a href="JalviewLiteJs.html">JalviewLite's javascript API</a> to exchange events about the currently selected region and mouse position in the alignment.
+ <!-- boiler plate link to alternate demopage -->
+ <div style="width: 100%">
+ <div style="width:35%; align:left; float:right;">
+ <div style="margin:8px; padding:8px; border: 2px solid black; align: center; float:center;">
+  Examples aren't working ?<br/>Try <a href="u_linkedapplets_ng.html">the unsigned applet demos</a>
+ </div>
+ <div style="margin:8px; padding:10px; align: left;">
+ <p>Quick Links to jars for example:<br/><a href="jalviewApplet.jar">jalviewApplet.jar</a> and <a href="JmolApplet-12.2.4.jar">JmolApplet.jar</a>
+ </p></div>
+ </div>
+ </div>
+ <!-- content template start -->
+ <script src="http://www.java.com/js/deployJava.js"></script>
+ <script src="javascript/jalview.js" language="javascript"></script>
+ <script>  //deployJava.debug="true";
+   
+   function lJvApp() {
+     var jvapp = document.getElementById("jvapp");
+     var jvfollower = document.getElementById("jvfollower");
+     setConsole(document.getElementById("stdout"));
+     //jvapp.setSeparator(""+jvapp.getSeparator());
+     linkJvJmol(jvapp);
+   };
+   function lJvFollow() {
+     var jvapp = document.getElementById("jvapp");
+     var jvfollower = document.getElementById("jvfollower");
+     //jvfollower.setSeparator(""+jvfollower.getSeparator());
+     linkJvJmol(jvfollower);
+   };
+ </script>
+     <h2>JalviewLite Linked Applets Demo</h2>
+     <p>The two applets below use <a href="jalviewLiteJs.html">JalviewLite's javascript API</a> to exchange events about the currently selected region and mouse position in the alignment.
      </p>
        <script> 
    var attributes = {