/ Newsletter 20041201

#002 2004-12-01
#001 2004-08-18

Welcome to the second JDistro newsletter!
#002    ----    1st of December 2004   ----    http://www.jdistro.com/


1. JDistro interviewed!

2. Contribute!

4. What's happening?

5. Tips and Tricks

6. Re:News

7. Disclaimer

1. JDistro interviewed on the web!

    O'Reilly  has  interviewed  the  JDistro team  for  their  website
ONJava.com.  The interview, attended for Java developpers, can be read
here: http://www.onjava.com/pub/a/onjava/2004/11/24/jdistro.html

2. Contribute!

   Do you  want to review  this newsletter before publishing?   Do you
want to translate it in other languages? We would welcome your help.

3. What's happening?

   In the  JDistro code front,  the release 0.32 has  some significant
changes,  but we'll  focus  on  one of  the  most important:  Bytecode
replacement now use ASM [1]. What does that means?

   You may probably know that the standard Java classes do not support
running  multiple  applications in  the  same  JVM.   For example,  an
application  calls  System.exit() to  quit,  resulting in  effectively
closing the JVM and all other applications that could run with it.

   In order to  prevent it, JDistro dynamically changes  all the calls
to  java.lang.System to  calls  to com.jdistro.WSys  by modifying  the
bytecode of the loaded application.

   The  change was  made by  scanning and  replacing the  text  in the
bytecode  directly,  this is  fast  but  leads  to some  compatibility
problems. For example, jEdit needed a patch to run in JDistro.

   We know  use ASM  that is a  more high level  bytecode manipulation
library. We can now make very precise modifications, solving this kind
of problems.  jEdit  is now fully compliant and  the classloader issue
is history.  Moreover,  you can trust Guillaume to  find other use for
this powerfull library.

4. Tips and Tricks

** Installing a new Entity

   As JDistro  can run java  webstart, applets, java  applications and
midlets,  it uses  the  more  general concept  of  Entity, instead  of
applications in  other desktops.   Installing new entities  in JDistro
will create the corresponding icons. Then you can run it again in just
one click !

   To do this, open  the JDistro menu (the pear at the  left or top of
the  panel), then  choose "Install  an Entity".  A dialog  box appears
where you have two choices:

Either you select  an application in the online  catalog, by selecting
the "catalog:" checkbox and choosing it in the list next to it.

   Or you can fill the URL  textfield. This field can contains the url
of the  html page containing the  applet you want to  run (for example
[2] for  a nice menu  applet) or the  url to a  .jnlp file ([3]  for a
language learning tool).

   You can  install any Java  application residing in your  hard drive
too.  Simply browse your  application installation directory using the
folder icon at the right of the textfield, and JDistro will browse all
subdirectories and automatically generate  the classpath and icons for

   If  your application was  installed by  Install Anywhere,  you must
just select the .lax file residing in it's installation directory, and
JDistro will read it to generate the entity.

   Then a message will be displayed,  the icon will be created and put
on the desktop, in  the panel or in the menu (you  can later hide some
of them by editing the entity). Double-click on the icon to start your

6. Re:News

   Feel like  you have  something to say  to the JDistro  community of
users/developpers?   You  can   send  us  a  message  or   a  news  at
feedback-newsletter@jdistro.com  and the best  ones will  be published
here !

7. Disclaimer

   You  received this  newsletter  because you  have  enrolled to  the
jdistro-devel or jdistro-user mailing-lists.

[1] http://asm.objectweb.org/
[2] http://www.appletcollection.com/amenu.html
[3] http://www.jlearnit.com/jlearnit.jnlp

© 2004 Gérard Collin et autres