Eclipse Webtools actual tomcat launcher have one drawback for me -- it deploys application to temporary directory and doesn't honour project set libraries.
While there exist possible solution in Eclipse bugzilla it wasn't quite working with WTP in Eclipse 3.3M4 installation, so while trying new Tapestry 5 features I installed Merve Tomcat Launcher which is almost identical to Jetty Launcher (JL doesn't work with my Eclipse 3.3M4 either). It seems this plugin is free of the mentioned drawbacks, so I encourage everyone fighting with WTP to try it for yourself.


powered by performancing firefox

I have published new version of libCopy to my update site today.
It contains changes sent to me by Chris Lacy  (Thanks Chris!) and it should also behave more nicely in Microsoft Windows environment.
Additionally I put sources in subversion repository and created a simple web page for it at http://adam.kruszewski.name/projects/libcopy.
Now I'm going to dig into M2 internals...

powered by performancing firefox

Here is a short list of plugins which I use with Mozilla Firefox:

  • Session Manager - allows you to save your session, switch between sessions etc. very handy tool.
  • URL Link - adds context menu item to text selection to open selected url.
  • BugMeNot - adds context menu to textfields to automatically login using data gathered by bugmenot.com sevice.
  • Colorful tabs - does what it says (but doesn't work with few pixmap based themes)
  • Cookie safe - gives you control over your cookies (and unobtrusivelly warns you when you got new one).
  • del.icio.us Bookmarks - makes using del.icio.us so much easier.
  • Download manager tweak - gives you more power over look of builtin download manager (ie. you can put it in sidebar)
  • Faviconize tab - you can remove given tab name and leave only its icon (useful with plugin below).
  • PermaTabs - you can make tabs 'permanent' preventing their closing or navigating within to other sites.
  • FEBE - allows you to backup and restore your firefox profile (I use version 5.0 beta right now).
  • Firefox Showcase - gives you nice 'compose' view of all your tabs.
  • FireFTP - very capable ftp client right in your web browser.
  • Gmail Manager - a small but capable gmail notifier for firefox statusbar.
  • Google Preview - inserts site preview image alongsite google results.
  • Grease Monkey - with use of scripts from userscripts.org gives you power over how some sites behave/looks. (ex. you can have today dilbert comic on the google front page ;-))
  • Link Alert - shows a small icon near mouse cursor to indicate the type of target link. (ie. new window, pdf file, etc)
  • Ook? Video Ook! - allows you to download videos from youtube, google.video and so on.
  • PDF Download - each time you'll try to navigate to pdf file it'll ask if you want to open it or save it.
  • Performancing - just a blog editor embedded into firefox. (I'm using it right now)
  • Remove It Permanently - allows you to visually remove parts of web pages. (eg. ads)
  • Save Complete - it enchances save page capability to save also styles/images references from css styles, so your saved page should look just like when being on-line.
  • Tiny.pl - url shortening in page context menu (using tiny.pl service)
  • TrashMail.net - adds context menu to text fields to paste trashmail.net generated disposable email addresses.
  • Update Notifier - extended update notifier near firefox thobber.
developer centric:
  • Molybdenum - allows to edit and play selenium tests.
  • Aardvark - useful to select and inspect dom elements in html page.
  • View dependencies - shows all page dependencies and their details in page information dialog.
  • Web Developer - it doesn't need to be introduced /images/emoticons/wink.gif
  • FireBug - javascript debugger with stepping through code and more.
And what plugins for web browser you use?



powered by performancing firefox

Just view first few minutes of Soble's interview with Jonathan Schwartz. Pretty cool!


powered by performancing firefox

M2Eclipse plugin is the second maven integration plugin for eclipse I tried and it seems it works quite well -- even maven console is working extremly well within eclipse. The only drawback I found this time is lack of working integration with latest (from callisto update site) webtools platform, but it is more a maven2 drawback than the plugin it self. As googling resulted only with some tips pointing to ".settings/.component" file which seems is no longer read by wtp (or it just didn't work for me) so I have hacked a little eclipse plugin to do the dirty work for me, and by "dirty work" I mean linking maven resolved dependencies directly into "src/main/webapp/WEB-INF/lib", which results in double classpath entries in project but at last WTP publish the application with all the libraries. Now I can use maven within Eclipse for every project type I could dream of /images/emoticons/happy.gif
If you want to obtain the plugin just point the update manager to http://adam.kruszewski.name/eclipse/, it contributes a property page for every project so you can tune it for your needs (the sources are also available but they are not elegant nor pretty -- you ware warned!)

02-may-2006 - plugin update:

  • Compiled with source level of 5.0 (sorry for the first version compiled with 6.0)
  • Now you don't need to specify any local maven repository path; if you use E2eclipse plugin everything will be determined automagically

If pocket console doesn't open on your Windows Mobile 5.0 device, you need to change the registry key "HKEY_LOCAL_MACHINE\Drivers\Console\OutputTo" value to "0". I have found this one on "microsoft.public.pocketpc.developer" group.

From thursday I'm lying in bed feeling very sick so I have time to play with latest snapshots of maven2, its plugins and eclipse plugin for it. So far I can tell that I'm impressed, just invoking mvn clean install deploy:deploy and viola! Everything is simple and almost works. I ran upon some difficulties at the beginning:

  • MavenIde for Eclipse didn't show precise error messages from default maven compiler, eg. like it doesn't like generics when not set to 1.5 source compatibility (but aspectj compiler plugin does).
  • it also somewhat fails to integrate nicely with latest WTP releases -- maven dependencies aren't copied to .deployment/app/WEB-/INF/lib/ directory upon build.
  • Aspectj and cobertura plugins are accessible from mojo sandbox subversion repository but as source code and I didn't find a way for maven to auto download them (other than deploying them to my own private repository).
I didn't find a workaround only for second point (probably I didn't try enough, because it probably should work) and after resolving the two others I can say that maven2 rocks!

For all jython users (if you didn't already know it) -- there is a nice interactive console avaliable (with autocompletion and command history). You can get it from http://dev.artenum.com/projects/jyconsole.
It would be nice to have similar functionality included in pyDev Eclipse plugin :-)

Two screenshots of some minor improbable glitches of software (you know -- those things that happen only one in lifetime and are really hard to replicate in developement environment :->) that I have used for past few days.
First: Windows Explorer Search bar:


Second one was when I tried to access my Ta-Da list today: I got a Ta-Da list which I belive belongs to someone else, and to be more fun -- it was written in russian (I don't know russian actually) /images/emoticons/happy.gif

For few last days I had to work on Microsoft Windows operating system, so I start digging and looking for tools that I'm familiar for. One of the first things to find and install was of course Python and some IDE to easy writting scripts in it. As I'm used to work with Eric3 I was trying to find some binary install but it was not so easy to find them (QT library which Eric3 uses was "non-free" for some time for Windows platform), so for futher reference or someone also looking for it - here you can get: pyQT3 and Eric3 binaries for Windows.

Today I have stumbled upon a blog post titled "… And what about SealedObject and GuardedObject?" and as a quick exercise I have implemented spoken feature in AspectJ. I didn't write an annotation processor because it was quicker (for me) to go with AspectJ and besides APT builder for Eclipse 3.1.2 is not working for me at the moment. So I'm leaving implementation of a real AnnotationProcessor to orginal author of the idea.
You can try it for yourself by downloading archived project [12kb], and importing it to your workspace. To build it you'll need Eclipse 3.1 and AJDT plugin.

Probably You have heard this a while before but just for reference: Here you can download Sun Studio Creator 2 if you are a Sun Developers Network member (registration is free AFAIR).
Personally I just wonder if they fixed the unability to compile with "-source 1.5" which was a major PITA in EA1/EA2 releases? (still downloading on my 256/128kbps adsl connection).

If you need FreeRadius with EAP/TLS support in Debian Stable (sarge), then look at this page where you can get a proper patch to enable it: http://www.wapu.org/projects.php?id=freeradius-eaptls. I have made those changes myself but using mentioned patch should be quicker than editing debian/rules, debian/control and installing libssl-dev manually.
All of this of course was founded by ``uncompatibility in some FOSS licences'', as always (see this post on debian-user).

Ahm, and perform this on the console:

   echo "freeradius hold" |dpkg --set-selections

to not get surprised after next apt-get update && apt-get upgrade ;-)

When looking for a game for New Year's Day (see last post ;-))
I stumbled on continuation of RoboCode -- RoboCodeNG.
The first thought I got when I first saw robot team API was: "Wow! How much neater could computer science laboratories be if we could implement byzantene agreement solutions in RoboCode instead of PVM!" ;-)

Some details about this game: It is Java based, you write robot code in pure Java ( you can use Eclipse/NetBeans/IDEA/... for it ) and it is somewhat similar to corewars -- you have an arena where robots makes fights. As very nice addition you can have teams of robots cooperating with each other.

For everyone who spends New Year's Day in Home with firends I want to recommend a little game I had apt-get'ed today: Jump n' Bump. A game for 2-4 playes who controls a cute little bunnies who jump on a screen wide environment with goal to crush your friends.
I have played for 3h today with my wife and I can say only "Happy jumping!" /images/emoticons/happy.gif

I'm putting ashesh on my head for not blogging almost 2 months, life flowed between my hands too fast in this time. But at last We (Natalie and I) have almost arranged our new home (we have even a living christmas tree) and it became very warm place. Now I should have more time to play with Java and blog about some interesting things (I hope).
Last month I have crushed my PocketPC (Asus MyPal A620BT) which realized me how how much listening to podcasts was important to me (now traffic jams are just making me crazy).

For past two years I was studying on Poznan University of Technology (Poland), Institute of Computer Science (with speciality profile: Computer Networks and Distributed Systems). I have passed my final exam last monday, so I have now a Master degree. Large part of my Master Thesis was an implementation of File System with builtin semantic search capabilities.
I have written it in Java, using combination of Linux + FUSE + FUSE-J + Apache Lucene and Apache Derby database. Besides of a little bottleneck caused by exceptions usage for error reporting in FUSE-J, coding of this proof-of-concept filesystem was just a breeze. As of functionality of this filesystem, it allows to append meta-data to files (in form of multiple "attribute=value" pairs), some of those attributes ware auto guessed (from id3 tags of mp3 files or properties of PDF files). After adding those attributes to files, User could query for them just accessing a specially named "virtual" directory (eg. directory [ artist: "Mike Oldfield" ] would contain all music files with artist attribute set to "Mike Oldfield"). If file content can be turned into a text representation it is stored in attribute name "content" which is default attribute for all searches (so no need to type "[ content: blah ]", "[ blah ]" is sufficient). Whole interaction with filesystem is made by standard system calls so it is completly useable from any shell and doesn't need any specially patched file managers/applications.
I have uploaded a short flash movie from linux console session if someone is interested how it looks like from a BaSH perspective.

I hope finishing my studies will allow me to blog more often /images/emoticons/wink.gif

One of the best made presentations/talks I have ever seen: Dick Hardt - Identity 2.0. I have appreciated every millisecond of it /images/emoticons/happy.gif

Today, newer version of Luntbuild plugin for Eclipse was released. If you don't already know, Luntbuild is a build automation and management tool, with very useful and complete web interface -- you'll see no xml files ever ;-> I can recommend it to everyone.


You can find details how to apt-get it at this: package repository. As you can see from image above -- it works quite nicely :-) [not counting it's dependencies like bind9, but you can't have everything at once :/]