Remove webstart deps, update xstream dep to resolve execution issue on jdk16 due to JMPS, fix panel-specific pref persistence issue
diff --git a/build.xml b/build.xml
deleted file mode 100644
index 3460071..0000000
--- a/build.xml
+++ /dev/null
@@ -1,547 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-<project name="chainsaw" default="chainsaw.jar" basedir="." >
-
- <!-- Deprecation warning? --> 
-  <property name="deprecation" value="on"/>
-  
-<!-- Javac with debug on/off. Log4j without debug on is hard to debug, so leave this setting on. -->
-  <property name="debug" value="on"/>
-
-  <property name="version" value="2.10"/>
-  
-    <!-- The directory where source files are stored. -->
-  <property name="java.source.dir" value="src/main/java/"/>
-  
-  <!-- The stem where most log4j source code is located. -->
-  <property name="stem" value="org/apache/log4j"/>
-
-
-  <!-- The build.properties file defines the parth to local jar files -->
-  <property file="build.properties"/>
-
-
-  <!-- Destination for generated jar files -->
-  <property name="javac.dest" value="${basedir}/build"/>
-
- <!-- the jar file for Chainsaw that will be generated -->
-  <property name="log4j-chainsaw.jar" value="log4j-chainsaw-${version}.jar"/>
- 
-   <!-- Destination for generated jar files -->
-  <property name="jar.dest" value="${basedir}"/>
-  
-  
-  <!-- When building a Java Web Start distribution of Chainsaw, some Receivers with external dependencies need to be packaged into a seperate Jar -->
-  <property name="webstart-dependant-receivers.jar" value="webstart-dependant-receivers.jar-${version}.jar"/>
-
-   <property name="svnrepo.url" value="https://svn.apache.org/repos/asf"/>
-   <property name="svnsite.url" value="${svnrepo.url}/logging/site/trunk/docs/chainsaw"/>
-   <available property="svn-available" file="target/site-deploy/.svn"/>
-
-	
-  <!-- Construct compile classpath -->
-  <path id="compile.classpath">
-    <pathelement location="${javac.dest}"/>
-	<fileset dir="${deps.dir}">
-  	  <include name="*.jar"/>
-  	</fileset>
-  	<pathelement location="${jms.jar}"/>
-  </path>
-
-  <path id="runtime.classpath">
-	<fileset dir="${deps.dir}">
-  	  <include name="*.jar"/>
-  	</fileset>
-  	<pathelement location="${log4j-chainsaw.jar}"/>
-  </path>
-
-  <!-- This target is invoked through the build.chainsaw target in the parent build file
-       which depends on build.core ensuring that log4j core gets built before. -->	
-  <target name="build.chainsaw" depends="vfs">
-    <mkdir dir="${javac.dest}" />  	
-    <javac deprecation="${deprecation}"
-           srcdir="${java.source.dir}"
-    	   debug="${debug}"
-           destdir="${javac.dest}">
-      <patternset>
-        <include name="**/*.java"/>
-        <exclude name="org/apache/log4j/chainsaw/vfs/**/*.java" unless="vfs-present"/>
-      </patternset>
-      <classpath refid="compile.classpath"/>   
-    </javac>
-  </target>
-
-  <target name="log4jCheck">
-    <available classname="org.apache.log4j.Logger" property="log4jJarsPresent">
-      <classpath refid="compile.classpath"/>
-    </available>    
-  	
-    <fail unless="log4jJarsPresent">  	
-       One or more of the following files are missing:
-    	${log4j.jar}, log4j-xml.jar log4j-optional.jar    	
-    </fail>
-  </target>
-	
-	
-  <target name="vfsCheck">
-    <available classname="org.apache.commons.vfs.FileObject" property="vfs-present">
-      <classpath refid="compile.classpath"/>
-    </available>
-    
-    <echo>VFS Present: ${vfs-present}</echo>
-  </target>
-  
-  <target name="vfs" depends="vfsCheck" unless="vfs-present">
-    <echo>
-      Could not find vfs classes (http://jakarta.apache.org/commons/sandbox/vfs/). 
-      Did you forget to add the commons-vfs jar to the directory specified by deps.dir 
-      in build.properties?  
-
-      Chainsaw will be built but will not include support 
-      for VFSLogFilePatternReceiver
-    </echo>
-  </target>	
-	 
-  <target name="JmDNSCheck">
-    <available classname="javax.jmdns.JmDNS" property="jmdns-present">
-      <classpath refid="compile.classpath"/>
-    </available>
-    
-    <echo>JmDNS Present: ${jmdns-present}</echo>
-  </target>
-	
-  <target name="BuildZeroConfJar" depends="JmDNSCheck, build.chainsaw" if="jmdns-present">
-    <javac deprecation="${deprecation}"
-           srcdir="${java.source.dir}"
-    	   debug="${debug}"
-           destdir="${javac.dest}">
-      <patternset>
-        <include name="**/zeroconf/*.java"/>
-      </patternset>
-      <classpath refid="compile.classpath"/>   
-    </javac>	
-  	
-    <jar jarfile="${jar.dest}/log4j-chainsaw-zeroconf.jar" basedir="${javac.dest}"
-         includes="${stem}/**/zeroconf/*.class" excludes="**/*Test*.class">
-      <manifest>
-        <attribute name="Manifest-version" value="1.0"/>
-        <section name="org/apache/log4j/">
-          <attribute name="Implementation-Title" value="log4j ZeroConf optional extras"/>
-          <attribute name="Implementation-Version" value="${version}"/>
-          <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
-        </section>
-      </manifest>
-    </jar>
-  </target>
-  
-  <target name="getdeps">
-      <mkdir dir="deps-dl"/>
-  	  <get src="http://www.apache.org/dist/jakarta/commons/logging/binaries/commons-logging-1.0.4.zip" dest="deps-dl/commons-logging-1.0.4.zip" verbose="true" usetimestamp="true"/>
-  	  
-	<unzip src="deps-dl/commons-logging-1.0.4.zip" dest="deps-dl/unpack">
-	    <patternset>
-	        <include name="commons-logging-1.0.4/commons-logging*.jar"/>
-	    </patternset>
-	</unzip>
-	
-	
-	<move todir="${deps.dir}" >
-	  <fileset dir="deps-dl">
-	    <include name="**/*.jar"/>
-	  </fileset>
-	  <mapper type="flatten"/>
-	</move>
-	
-  	  
-  </target>
-  	
-  <!-- ================================================================= -->
-  <!-- Runs Chainsaw                                                     -->
-  <!-- ================================================================= -->
-
-  <target name="chainsaw" depends="chainsaw.jar, log4jCheck" 
-          description="Build and run Chainsaw v2 from jar file (generates Chainsaw jar if necessary)" >
-
-    <!-- Need to fork to avoid problems -->
-    <java classname="org.apache.log4j.chainsaw.LogUI" fork="yes">
-      <sysproperty key="log4j.debug" value="${log4j.debug}"/> 
-      <classpath refid="runtime.classpath"/>   
-    </java>
-  </target>
-
-	
-	<!-- this target can't be run in Gump mode, because the external project won't be available -->
-	<target name="javaDocLog4jReceivers" unless="gump">
-		
-		<!-- JavaDoc up some Receiver and other stuff we want to be able to ship with Chainsaw-->
-	    <javadoc sourcepath="${java.source.dir}"
-	             destdir="${javac.dest}"
-	             version="true"
-	             author="true"
-	             use="true"
-	             doctitle="log4j version ${version}&lt;br&gt;API Specification"
-	             windowtitle="Log4j Version ${version}"
-	             header="&lt;b&gt;Log4j ${version}&lt;/b&gt;"
-	     bottom="Copyright 2000-2003 Apache Software Foundation."
-	     >
-	      <fileset dir="src/" defaultexcludes="yes">
-	        <include name="**/*Receiver.java" />
-	      </fileset>
-	        <fileset dir="${log4j.src}/src/" defaultexcludes="yes">
-	          <include name="**/*Receiver.java" />
-	        </fileset>      
-	    	<classpath refid="compile.classpath"/>
-	    </javadoc> 
-	</target>
-
-	<!-- ================================================================= -->
-  <!-- Create log4j-chainsaw.jar, excluding everything else              -->
-  <!-- ================================================================= -->
-  <target name="chainsaw.jar" depends="build.chainsaw, BuildZeroConfJar, javaDocLog4jReceivers">
-    <delete>
-      <fileset dir="${jar.dest}">
-        <include name="${log4j-chainsaw.jar}"/>
-      </fileset>
-    </delete>
-
-  	<copy todir="${javac.dest}">
-  	  <fileset dir="src/main/java" includes="**/chainsaw/**/*"/>
-  	</copy>
-      
-      
-    <jar jarfile="${jar.dest}/${log4j-chainsaw.jar}" basedir="${javac.dest}"
-         includes="${stem}/chainsaw/*.class,
-             ${stem}/**/*.html,
-             **/*.css,
-             **/resources/*,
-             ${stem}/**/*BeanInfo.class,
-             ${stem}/chainsaw/**/*.class, 
-             ${stem}/chainsaw/layout/*, 
-             ${stem}/chainsaw/icons/*.gif, 
-             ${stem}/chainsaw/*.jpg, 
-             ${stem}/chainsaw/**/*.xml, 
-             ${stem}/chainsaw/**/*.html, 
-             ${stem}/chainsaw/**/*.properties, 
-             ${stem}/chainsaw/receivers/known.receivers, 
-             ${stem}/chainsaw/icons/*.jpg, 
-             ${stem}/chainsaw/icons/LICENCE"
-             excludes="**/UnitTest**">
-        <!-- ZeroConf stuff goes in it's own Jar -->
-     <exclude name="**/zeroconf/**/*" />
-
-    	<!-- VFS stuff goes in it's own Jar -->
-     <exclude name="**/vfs/**/*" />
-      <!-- we need to exclude the JMS + DB Receiver BeanInfo for webstart purposes -->
-      <exclude name="**/JMS*BeanInfo.class" if="webstart" />
-      <exclude name="**/DB*BeanInfo.class" if="webstart" />
-      <manifest>
-        <attribute name="Manifest-version" value="1.0"/>
-        <section name="org/apache/log4j/">
-          <attribute name="Implementation-Title" value="log4j"/>
-          <attribute name="Implementation-Version" value="${version}"/>
-          <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
-        </section>
-        <attribute name="Main-Class" value="org.apache.log4j.chainsaw.LogUI"/>
-        <attribute name="Class-Path" value="${log4j.jar}"/>
-      </manifest>
-    </jar>
-  	
-    <jar jarfile="${jar.dest}/log4j-chainsaw-vfs.jar" basedir="${javac.dest}"
-         includes="${stem}/chainsaw/vfs/*.class" >
-        <manifest>
-          <attribute name="Manifest-version" value="1.0"/>
-          <section name="org/apache/log4j/">
-            <attribute name="Implementation-Title" value="log4j VFS"/>
-            <attribute name="Implementation-Version" value="${version}"/>
-            <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
-          </section>
-        </manifest>
-	</jar>
-  	
-  </target>
-
-  <!-- ================================================================= -->
-  <!-- These targets are for when we need to create a Java Web start     -->
-  <!-- distribution of Chainsaw                                          -->
-  <!-- ================================================================= -->
-
-  <target name="webstart-dependant-receivers.jar" depends="build.chainsaw">
-    <delete>
-      <fileset dir="${jar.dest}">
-        <include name="${webstart-dependant-receivers.jar}"/>
-      </fileset>
-    </delete>
-    
-    <jar jarfile="${jar.dest}/${webstart-dependant-receivers.jar}" basedir="${javac.dest}"
-         includes="${stem}/**/JMSReceiver*.class, ${stem}/**/DBReceiver*.class">
-      <manifest>
-        <attribute name="Manifest-version" value="1.0"/>
-        <section name="org/apache/log4j/">
-          <attribute name="Implementation-Title" value="log4j"/>
-          <attribute name="Implementation-Version" value="${version}"/>
-          <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
-        </section>
-      </manifest>
-    </jar>
-  </target>
-  
-	<target name="shellscript-taskdef">
-	    <javac deprecation="${deprecation}"
-	           srcdir="anttasks-src"
-	    	   debug="${debug}"
-	           destdir="${javac.dest}">
-	      <patternset>
-	        <include name="**/*.java"/>
-	      </patternset>
-	      <classpath refid="compile.classpath"/>   
-	    </javac>	
-		<copy todir="${javac.dest}">
-			<fileset dir="anttasks-src">
-					<include name="*.jnlp"/>
-			</fileset>
-		</copy>
-		<taskdef name="createshellscripts" classpathref="compile.classpath" classname="org.apache.chainsaw.ant.CreateShellScripts" />
-	</target>
-	
-  <target name="webstart" depends="shellscript-taskdef">
-  	
-  	<tstamp />
-  	<property name="chainsaw-bundle.zip" value="chainsaw-bundle-${DSTAMP}.zip" />
-  	<property name="chainsaw.dmg" value="chainsaw-${DSTAMP}.dmg" />
-  	<property name="webstart-bundle.zip" value="webstart-bundle-${DSTAMP}.zip" />
-  	
-    <property name="webstart" value="true"/>
-    <antcall target="chainsaw.jar"/>
-    <antcall target="webstart-dependant-receivers.jar"/>
-    
-  	<delete dir="webstart-dist"></delete>
-  	
-  	<!-- TODO Now copy all the jars into a new webstart-dist directory -->
-     <copy todir="webstart-dist">
-  		<fileset file="packaging/chainsaw.*"/>
-     	<fileset dir="lib" />
-     	<fileset dir=".">
-     		<include name="log4j-chain*.jar"/>
-     		<include name="log4j-zeroconf*.jar"/>
-     		<!--<include name="webstart*.jar"/> -->
-     	</fileset>
-  	</copy>
- 	
-  	
-	<createshellscripts outputLocation="webstart-dist" scriptType="shell">
-		<fileset dir="webstart-dist" includes="*.jar">
-			<exclude name="commons*.jar"/>
-			<exclude name="*vfs*.jar"/>
-			<exclude name="*-jms-*.jar"/>
-			<exclude name="*-db-*.jar"/>
-		</fileset>
-	</createshellscripts>
-
-  	<!-- Webstart distribution can't have VFS because of stupid classloading rules, so we exclude it-->
-  	<createshellscripts outputLocation="webstart-dist" scriptType="webstart">
-		<fileset dir="webstart-dist" includes="*.jar">
-			<exclude name="commons*.jar"/>
-			<exclude name="*vfs*.jar"/>
-			<exclude name="*-jms-*.jar"/>
-			<exclude name="*-db-*.jar"/>
-		</fileset>
-	</createshellscripts>	
-    
-  	<input
-     message="Please enter key password:"
-     addproperty="keypass"
-     />
-    <signjar verbose="false" keystore="${keystore}" alias="${alias}" storepass="${storepass}" keypass="${keypass}" >
-      <fileset dir="webstart-dist">
-        <include name="*.jar"/>
-      </fileset>
-    </signjar>
-    
-    <zip destfile="${chainsaw-bundle.zip}" >
-      <zipfileset dir="webstart-dist"> 
-        <include name="*.jar"/>
-        <include name="*.bat"/>
-        <include name="*.sh"/>
-		<exclude name="commons*.jar"/>
-		<exclude name="*vfs*.jar"/>
-		<exclude name="*-jms-*.jar"/>
-		<exclude name="*-db-*.jar"/>
-      </zipfileset>
-    </zip>
-  </target>
-	
-	<!-- This target can only be run on an OS X computer and requires 
-		see http://www.loomcom.com/jarbundler/
-	-->
-	<target name="iSaw" depends="webstart">
-
-		<delete dir="iSaw-Dist" failonerror="false"/>
-		<delete dir="Chainsaw.app" failonerror="false"/>
-		<delete dir="Chainsaw-app" failonerror="false"/>
-		
-		<mkdir dir="iSaw-dist" />
-		<mkdir dir="Chainsaw-app" />
-		<copy file="${webstart-dependant-receivers.jar}" todir="iSaw-dist"/>
-		<copy file="${log4j-chainsaw.jar}" todir="iSaw-dist"/>
-		<copy todir="iSaw-dist">
-			<fileset dir="webstart-dist">
-				<include name="*.jar" />
-				<exclude name="commons*.jar"/>
-				<exclude name="*vfs*.jar"/>
-			</fileset>
-		</copy>
-		
-	<taskdef name="jarbundler"
-                  classpath="antlibs/jarbundler-1.4.jar" 
-            classname="com.loomcom.ant.tasks.jarbundler.JarBundler" />
-            
-        <jarbundler dir="."
-                    name="Chainsaw"
-                    mainclass="org.apache.log4j.chainsaw.LogUI"
-                    icon="packaging/logo.icns"
-                    version="2.1.0"
-                    infostring="Chainsaw"
-                    aboutmenuname="Chainsaw"
-                    bundleid="org.apache.log4j.chainsaw.ChainsawBundle"
-                    developmentregion="English"
-                    signature="chainsaw"
-                    jvmversion="1.4+"
-                    vmoptions="-Xms32m -Xmx256m"
-                    smalltabs="true"
-                    antialiasedgraphics="true"
-                    antialiasedtext="true"
-                    liveresize="true"
-                    growboxintrudes="false"
-                    screenmenu="true" >
-          <jarfileset dir="iSaw-dist">
-            <include name="**/*.jar" />
-          </jarfileset>
-        	
-        </jarbundler>
-		<move file="Chainsaw.app" todir="Chainsaw-app" />
-		
-		<echo message="Creating DMG image"/>
-		<exec executable="hdiutil">
-			<arg line="create -srcfolder Chainsaw-app ${chainsaw.dmg}"/>
-		</exec>
-	</target>
-  
-  <!-- NOTE: you'll need JSch in your Ant ext libs area for this to work -->
-  <target name="distribution" depends="webstart, iSaw" description="Builds the complete distribution (Webstart, zip + OSX)">
-  	<delete dir="distribution" failonerror="false"/>
-  	<mkdir dir="distribution"/>
-  	<copy todir="distribution">
-  		<fileset dir=".">
-  			<include name="**/${chainsaw-bundle.zip}"/>
-  			
-  			<include name="${chainsaw.dmg}" />
-  		</fileset>
-  	</copy>
-    <zip destfile="distribution/${webstart-bundle.zip}" >
-       <zipfileset dir="webstart-dist" includes="*.jnlp"/>
-    	   <zipfileset dir="webstart-dist" prefix="lib" includes="*.jar"/>
-     </zip>
-   	
-  	<!-- TODO copy, unpack the os X image template, update the files, close the image, move into distribution directory -->
-
-  	<input addproperty="dist.password" message="Please type in your remote password: (Warning:What you type will appear in plain text on console.)"></input>
-    
-  	<echo message="${dist.user}, ${dist.password}, ${dist.dest}, ${dist.keyfile}" />
-  	
-  	<!-- NOTE: you HAVE to use key based authentication, otherwise it just won't work -->
-  	<scp todir="${dist.user}@people.apache.org:${dist.dest}" passphrase="${dist.password}" keyfile="${dist.keyfile}" verbose="true">
-      <fileset dir="distribution">
-        <include name="**/*.*"/>
-      </fileset>
-    </scp>
-  </target>
-  
-	
-	<!-- ================================================================= -->
-  <!-- Remove all generated (compiled) class files.                      -->
-  <!-- ================================================================= -->
-  <target name="clean" description="Delete all compiled files.">
-    <mkdir dir="${javac.dest}" />  	
-	<delete dir="${javac.dest}"/>  	
-  	<delete>
-     <fileset dir="${jar.dest}" includes="log4j-chainsaw*.jar"/>
-    </delete>	
-  </target>
-
-	<target name="checkout-site" unless="svn-available">
-		<exec executable="svn">
-			<arg value="co"/>
-			<arg value="${svnsite.url}"/>
-			<arg value="target/site-deploy"/>
-		</exec>
-	</target>
-
-	<target name="update-site" if="svn-available">
-		<exec executable="svn" dir="target/site-deploy" failonerror="true">
-			<arg value="update"/>
-		</exec>
-	</target>
-
-	<target name="post-site" depends="checkout-site, update-site"/>
-
-
-        <target name="mime=html">
-            <exec executable="svn">
-		<arg value="propset"/>
-                <arg value="svn:mime-type"/>
-                <arg value="text/html"/>
-                <arg value="${src.html}"/>
-            </exec>
-        </target>
-
-        <target name="mime=css">
-            <exec executable="svn">
-		<arg value="propset"/>
-                <arg value="svn:mime-type"/>
-                <arg value="text/css"/>
-                <arg value="${src.css}"/>
-            </exec>
-        </target>
-	
-
-	<target name="site-deploy">
-		<!-- Add any new files (and generate innocuous warnings for the existing content)  -->
-                <delete file="target/site-deploy/svn-commit.tmp~"/>
-		<exec executable="bash" dir="target/site-deploy" failonerror="true">
-			<arg line='-c "svn add --force *"'/>
-		</exec>
-                <taskdef name="foreach" classname="net.sf.antcontrib.logic.ForEach" />
-                <foreach target="mime=html" param="src.html">
-                        <path>
-                                <fileset dir="target/site-deploy" includes="**/*.html"/>
-                        </path>
-                </foreach>
-                <foreach target="mime=css" param="src.css">
-                        <path>
-                                <fileset dir="target/site-deploy" includes="**/*.css"/>
-                        </path>
-                </foreach>
-		<!--  requires that SVN_EDITOR, VISUAL or EDITOR being set to edit commit description -->
-		<exec executable="svn" dir="target/site-deploy" failonerror="true">
-		    <arg value="commit"/>
-		</exec>
-	</target>
-
-
-</project>
-
diff --git a/pom.xml b/pom.xml
index 537cd5f..c7b5fbf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -330,32 +330,6 @@
         </executions>
       </plugin>
       <plugin>
-        <groupId>org.codehaus.mojo</groupId>
-        <artifactId>webstart-maven-plugin</artifactId>
-        <configuration>
-          <jnlp>
-            <outputFile>webstart.jnlp</outputFile>
-            <mainClass>${chainsaw.mainclass}</mainClass>
-          </jnlp>
-          <sign>
-            <keystore>${chainsaw.webstart.keystore}</keystore>
-            <keypass>${chainsaw.webstart.keypass}</keypass>
-            <storepass>${chainsaw.webstart.storepass}</storepass>
-            <storetype/>
-            <alias>${chainsaw.webstart.alias}</alias>
-            <validity/>
-            <dnameCn/>
-            <dnameOu/>
-            <dnameO/>
-            <dnameL/>
-            <dnameSt/>
-            <dnameC/>
-            <verify>false</verify>
-          </sign>
-          <verbose>false</verbose>
-        </configuration>
-      </plugin>
-      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-site-plugin</artifactId>
         <version>3.7.1</version>
@@ -407,7 +381,7 @@
     <dependency>
       <groupId>com.thoughtworks.xstream</groupId>
       <artifactId>xstream</artifactId>
-      <version>1.4.11.1</version>
+      <version>1.4.17</version>
     </dependency>
     <dependency>
       <groupId>commons-vfs</groupId>
diff --git a/src/jnlp/template.vm b/src/jnlp/template.vm
deleted file mode 100644
index e802d86..0000000
--- a/src/jnlp/template.vm
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-<?xml version="1.0" encoding="utf-8"?> 
-<!-- JNLP File for Jakarta Log4j Chainsaw v2 Application --> 
-<jnlp 
-  spec="1.0+" 
-codebase="http://logging.apache.org/log4j/docs/webstart/chainsaw/"
-  href="chainsawWebStart.jnlp"> 
-  <information> 
-    <title>Log4j Chainsaw v2</title> 
-    <vendor>Apache</vendor> 
-    <homepage href="http://logging.apache.org/log4j"/> 
-    <description>A Log4j log viewing application</description> 
-    <description kind="short">A Log4j log viewing application</description> 
-    <icon href="http://logging.apache.org/log4j/docs/images/logo.jpg"/> 
-    <icon kind="splash" href="http://logging.apache.org/log4j/docs/images/logo.jpg"/> 
-    <offline-allowed/> 
-  </information> 
-  <security> 
-      <all-permissions/> 
-  </security> 
-  <resources> 
-    <j2se version="1.4+" max-heap-size="256m"/> 
-    <j2se version="1.3+" max-heap-size="256m"/> 
-	${dependencies}
-	<property name="org.apache.commons.logging.Log" value="org.apache.commons.logging.impl.Log4JLogger"/>
-  </resources> 
-  <application-desc main-class="$mainClass"/>
-</jnlp> 
diff --git a/src/main/java/org/apache/log4j/chainsaw/LogPanel.java b/src/main/java/org/apache/log4j/chainsaw/LogPanel.java
index 8bbd2d4..467e97c 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LogPanel.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LogPanel.java
@@ -847,7 +847,7 @@
             public void mouseClicked(MouseEvent e) {
                 LoggingEventWrapper loggingEventWrapper = searchModel.getRow(searchTable.getSelectedRow());
                 if (loggingEventWrapper != null) {
-                    int id = new Integer(loggingEventWrapper.getLoggingEvent().getProperty("log4jid"));
+                    int id = Integer.parseInt(loggingEventWrapper.getLoggingEvent().getProperty("log4jid"));
                     //preserve the table's viewble column
                     setSelectedEvent(id);
                 }
@@ -2049,14 +2049,13 @@
             XStream stream = buildXStreamForLogPanelPreference();
             ObjectInputStream in = null;
             try {
+                logger.info("configuration for panel exists: " + xmlFile + " - " + identifier + ", loading");
                 FileReader r = new FileReader(xmlFile);
                 in = stream.createObjectInputStream(r);
                 LogPanelPreferenceModel storedPrefs = (LogPanelPreferenceModel) in.readObject();
                 lowerPanelDividerLocation = in.readInt();
                 int treeDividerLocation = in.readInt();
                 String conversionPattern = in.readObject().toString();
-                Point p = (Point) in.readObject();
-                Dimension d = (Dimension) in.readObject();
                 //this version number is checked to identify whether there is a Vector comming next
                 int versionNumber = 0;
                 try {
@@ -2119,18 +2118,13 @@
                     lowerPanel.setDividerLocation(lowerPanelDividerLocation);
                     nameTreeAndMainPanelSplit.setDividerLocation(treeDividerLocation);
                     detailLayout.setConversionPattern(conversionPattern);
-                    if (p.x != 0 && p.y != 0) {
-                        undockedFrame.setLocation(p.x, p.y);
-                        undockedFrame.setSize(d);
-                    } else {
-                        undockedFrame.setLocation(0, 0);
-                        undockedFrame.setSize(new Dimension(1024, 768));
-                    }
+                    undockedFrame.setLocation(0, 0);
+                    undockedFrame.setSize(new Dimension(1024, 768));
                 } else {
                     loadDefaultColumnSettings(event);
                 }
             } catch (Exception e) {
-                e.printStackTrace();
+                logger.info("unable to load configuration for panel: " + xmlFile + " - " + identifier + " - using default settings", e);
                 loadDefaultColumnSettings(event);
                 // TODO need to log this..
             } finally {
@@ -2206,8 +2200,6 @@
             }
             s.writeInt(nameTreeAndMainPanelSplit.getDividerLocation());
             s.writeObject(detailLayout.getConversionPattern());
-            s.writeObject(undockedFrame.getLocation());
-            s.writeObject(undockedFrame.getSize());
             //this is a version number written to the file to identify that there is a Vector serialized after this
             s.writeInt(LOG_PANEL_SERIALIZATION_VERSION_NUMBER);
             //don't write filterexpressionvector, write the combobox's model's backing vector