Wicket : provide a body to your tags !

Hi We had a strange issue here : we created a component opened for extension. For some reason it was working with a Label but not a MultilineLabel. Crazy isn’t it ? It turned out we declare this “opened” component like this : The user of it should just override a callback method like this [...]

pitfall on implementing generic methods

disclaimer: don´t get me wrong. 90% of the time i like generics. most of the time it only starts getting weird, when you end up using something like  Java |  copy |? IModel< List<EntityModel<Address<Person>>>> getAddressModels(); but hey, nothing is perfect. recently stumbled over an easy to avoid mistake you can make introducing generics to your APIs. this tale is [...]

Wanted : linux book

In France, we say never two without three. And despite all the speech about “Alsaceness’, I feel like having to abide to the popular saying : I’ve been trying to find a “good” book on linux without much success. Well, for sure, this time the task is hard… My requirements are quite shallow : getting [...]

Wanted : (good) book on css !

While I’m on wanted books…And even if I’m not a css fan, this little cascading style sheets are just too powerful and used to be ignored. Unfortunately, the book I’ve read on it wasn’t up to its expectations (more on it later I guess)… Any pick anyone ? ++

Wanted : book on Scala !

I’m currently running out of IT read : what will I do during my daily train commute ? More seriously, Scala is on my radar since quite some time, and obviously uwe starts to get serious about it as well… Any suggestion for a good book about it ? Ideally, the kind of book I [...]

Interesting serialization trick

Wicket is a well known serialization addict, and as such it’s quite often a topic when dealing with wicket pages and, especially, going back through the page map. In doing so, we had recently the following surprise : the DefaultMutableTreeNode, a javax.swing.tree class, is used to to the current incarnation of the tree component in [...]

Running Scala specs tests in Maven with JUnit 4 – mccv

via Running Scala specs tests in Maven with JUnit 4 – mccv.

Shape the future…

of sun´s certification program by helping with their survey.

Playing with Scala

until now i withstood the forbidden fruit of spending time with scala. until this morning i just pushed this until Jan´s book was delivered but really, after i just had a first glance of it…. how could this be not interesting?  Java |  copy |? object E { def main(args : Array[String]) : Unit = { new Foo().foo; (new [...]

Book review : Learning JQuery

I recently read Learning JQuery, the version of 2007. I was reading it as a casual reader, just to get a better hand on JQuery. My feeling about it is the following : it seems good at providing technical details but fails at “empowering” the reader and providing the big picture. I say “it seems” [...]

Book review : Clean code

hi I recently finished Clean code, from Robert C. Martin (well, in fact it’s mainly from him and some guests, but then..). Anyway, the focus of this book is how to write clean code, meaning readable and maintainable code. For this, the authors go at length on the different aspects, dedicating whole chapters to aspects [...]

fun with enums

i stumbled upon a very nasty corner-case using enums. i wont call it a puzzler, but you may want to try to predict the output of the following:  Java |  copy |? public enum Person { PETER, PAUL, MARY;  private Food favFood;  Food getFavFood() { return this.favFood; }  static void setPreference(final Person p, final Food f) { p.favFood = [...]

wicket : setGatherExtendedBrowserInfo doesn’t play well with Ajax

As I’ve written on the wicket jira, setGatherExtendedBrowserInfo doesn’t play well with Ajax. For the explanation, here are Igor 2 cents on it : ajax doesnt work because probably the ajax request is redirected to that page…that page is what gathers all the browser info through javascript… . Maybe I am a bit picky, but [...]

no graphic artists were hurt during the process…

that was fun. not that i actually liked these bonbon-buttons, but the disclaimer on their page is hilarious. having a second look, that layout-manager concept can be actually useful.

m2eclipse on Galileo usable

despite rumours, m2eclipse seems usable on eclipse 3.5 Galileo, so that we can happily upgrade. just added MoreUnit as well as the mylyn atlassian connector, and it all seems to work seamlessly.

Looking for Galileo release notes ?

Here it is. Thanks to the server side for it.

Design hint : introduce Null Object

I’m currently reading Refactoring from Martin Fowler. Overall, it’s an interesting book from which much could be said but tonight I would like to speak only of the “introduce Null object” hint provided in it. The basic idea is pretty simple, instead of checking for null return from various call, just provide a “null object”. [...]

A nice GWT app

Nice UML app made using GWT. Quite a change from the previous I had seen ! Time to look again at GWT maybe… ++

InnoDB checks UNIQUE and FOREIGN KEY constraints row-by-row

Hi For my first post here, let me speak about this issue which bogged us down a few time ago : InnoDB checks UNIQUE and FOREIGN KEY constraints row-by-row It may sound trivial, but it means that unique and foreign key constraints aren’t transaction safe. But, when using some ORM like hibernate, it’s pretty easy [...]

another one bites the dust

this was not particularly hard to predict, but twitter looks to abandon rails for scalability problems. despite of this, there are _still_ some clueless people out there that wont stop preaching that ruby on rails is going to be ‘the next big thing’ (for years now). i really don´t get it.

50+ Guicy Tips

Parleys shares “50+ Tips to Guice up your Java”-Talk from Crazy Bob, held at JavaPolis 2007.

Guicy JSR

this is awesome news. First of all, it is nice, that Spring and Guice find some common ground. More importantly, independence of any EEish API is absolutely necessary for this to become interesting. Not that Guice needed a specification to back it up, but it is good to push it more into the mainstream.

IDetachListener saves the day

i just asked this on the Wicket user list: we have a problem here, which we think might be a common one, so i´d like to discuss. from time to time we create models (mostly LDMs) that are not actually reachable by components. (yes, you can argue that this is stupid, but it happens where [...]

Good News for Java Developers in a Tight Economy

Despite crisis, the Job market does not look that bad for Java developers: Certified IT skills that saw pay increases include HP/Certified Systems Engineer with a 14.3% increase in pay, and Sun Certified Programmer for Java Platform, which experienced an increase of 13.5% in pay. IT professionals with EMC Proven Professional certifications experienced a 12.5% [...]

Wicket 1.3.6 Release

Wicket 1.3.6 was released. The best news for me there is, that using Guice and persistent Sessions is probably going to work now (did not check yet.)

ridiculous

this looks rather weird to me. Orlando Scrum as it operated until this spring is no more. After reviewing my other commitments and a request to sign a licensing agreement with Scrum Alliance I am ending my involvmet with the group. Today I received an email from Scrum Alliance asking me to sign and agree [...]

Fun on the Guice mailing list

i had to look twice reading this sentence on the google guice mailing list: If you’re looking for a stable, future-proof build that’s suitable for use in production, I recommend the recent snapshot. pretty weird

Atlassian Stimulus Package

In case you always wanted to use JIRA Enterprise, now is your chance to do so. They sell 5 user licenses for 3 years as low as 5$, and they even spend it for charity. clever move, ‘get them, when the teams are small and the budget is tight’ we all know, there currently is [...]

10 ways to better code

10 Ways to better code is a nice presentation: educating as well as entertaining. nothing exactly revolutionary, but nice.

gitready

If you share my interest in git, you may find gitready.com a very useful resource. unfortunately, the lack of good eclipse integration still keeps me away from using it in every day work.

Web Blackbox Tests done right

Most people know HtmlUnit, which is a nice way of creating Black-Box-Tests for web applications. The problem with HtmlUnit is that its JavaScript unit (namely Rhino) is not going to do, what your favorite browser will be doing. This probably leads to unit-tests that ignore the JavaScript-focused parts of the UI. Unfortunately, JavaScript based behaviour [...]

Migrate Data from Postgres to MySQL

if you ever come to the need to migrate Data from Postgres to MySQL, you should stay away from using dumps. It is a hell lot easier to use export/import to/from CSV Data, because you do not need to synchronize column-names and it is special-char-proof. Postgres syntax for exporting: COPY tablename [ ( column [, [...]

Performance of Wicket vs Seam + JSF

even though Gavin King expectedly disagrees, i find this article a very useful benchmark. not that much of a surprise, but the actual numbers are more than impressive.

servlet registration at runtime

awesome! did you have a look at the servlet 3.0 API PD? I did not yet, but was amazed to see something like this:  Java |  copy |? public void contextInitialized(ServletContextEvent sce) { ServletContext sc = sce.getServletContext();  ServletRegistration sr = sc.addServlet("NewServlet", "test.NewServlet"); sr.setInitParameter("servletInitName", "servletInitValue"); sc.addServletMapping("NewServlet", new String[] {"/newServlet"}); } full article wonder, if servlets and filters can be removed [...]

Pagelink considered harmful

ahhh. doesn’t wicket offer a great model of programming webpages? isn’t it too easy to do things like this?  Java |  copy |? add(new ListView("mylist",someList){ @Override protected void populateItem(ListItem item){ item.add(new PageLink("deleteThisEntry",new DeletePage(item.getModel()))); }};}); but wait PageLink(Page) is deprecated:  Java |  copy |? /** * This constructor is ideal if a Page object was passed in from a previous Page. Construct a * link to [...]