Main

February 16, 2009

Using Apache Commons FileUpload

I'm currently working on a project that required me to upload some files from a JSP driven web application. A quick Google search brought me to Apache Commons FileUpload. It's a very useful library, that if used correctly makes you're life a lot easier.

Once adding the dependency to my Maven 2 pom.xml and looking at the user guide, I expected it to work straight away, but unfortunately it didn't and I was not really sure why. My piece of code seemed to halt when trying to execute the following method:

  List items = upload.parseRequest(request);

My friend Google was unable to provide me with the correct answer (that's why I'm writing it down now), but after a while I figured out what the problem was. The problem was: me not reading the documentation. On that same user guide page it states:

FileUpload depends on Commons IO, so make sure you have the version mentioned on the dependencies page in your classpath before continuing.

So in the end it was just another dependency. Not sure why it did not throw an error though, but after adding it to my pom.xml it worked like a charm.

December 13, 2008

Watch out! Hippo ECM is coming!

Beta The past 3 months have been crazy. You might already have read it somewhere on the world wide web, but if you haven't, we're very close too a first official release of our new ECM product.

It was September when Arjé did his announcement of Hippo ECM and CMS 7 and it has come a long way since. More features have been added and the product has grown a lot since then. Hippo CMS 7 is still in a beta phase, but that won't be for long.

The next couple of weeks I'll try to share my experience, some thoughts and plugins, which I'm in the process of creating. For now I'll go for a short introduction on what's new and how you can compare it to version six.

Continue reading "Watch out! Hippo ECM is coming!" »

September 17, 2008

Redesign

I'm currently giving the blog a redesign. Bear with me, while I change the design over the next few days.

September 2, 2008

Yet another browser

It's been all over the blogosphere! As far as I can see, you could not have missed that Google has announced it's own open source browser called Google Chrome.

In the past there have been a lot of rumors about a Google browser, but now they made it official. They even created a nice comic about it, to explain all features and concept of the new browser.

Google Chrome looks really promising, but I'm afraid that for us developers it's going to be just another browser to test our web applications against. With the current diversity within the browser market it's already a pain to keep up with all the available browsers. Therefor I think it's a good thing that they did not decide to create their own browser engine, but instead are using the webkit engine, which is also used in Apple's Safari.

Too bad they are releasing the beta on Windows first, because I would have loved to give it a go on Ubuntu!

August 9, 2008

The Hippo Site Toolkit (HST)

Blogging has not been one of my priorities these past couple of months as you might have noticed. I've been so busy at the Hippo office and at customers, that I was unable to find some decent time to start a new blog post.

I realize I should have written this post 6 months ago, since the project I'm going to write about has been around even longer than that, but as far as I can remember, nobody has ever written a post about it. I think that's a shame and you guys should be made aware of this piece of software.

A new set of development component were created to develop web application with JSP or JSF in combination with Hippo CMS. We called it the Hippo Site Toolkit and it has been available for quite some time.

The HST will allow us to provide default component that aid developers in their work while building web applications with JSP or for instance Apache MyFaces.

There are some example projects available from the Hippo SVN, so be sure to check it out if you're thinking about using JSP or JSF.

June 27, 2008

links for 2008-06-27

June 18, 2008

Firefox 3

Download Day - English

Today is firefox 3 download day! I have been using the beta installed on my Ubuntu laptop for a while now and I really like it! It's fast and the big plus is the new improved address bar. All I can say is, help set the record and download Firefox 3 today!

January 4, 2008

Hippo Site Sample with Cocoon 2.2

It has been there for a while now, but I was not able to find some decent time to write a blog entry about it. A while ago I made a Cocoon 2.2 block out of the Hippo Site Sample. This can become very interesting for developers starting with Hippo in 2008, since Cocoon 2.2 will be coming out very soon.

You can get the site sample block out of the Hippo svn repository.

I've tested it with the following settings:

  • Maven 2.0.8
  • Sun JDK 1.5
  • Cocoon 2.2 trunk
  • Ubuntu Linux 7.10

Please note that this is very experimental and I still recommend using Cocoon 2.1 for projects that will go in production in the next 6 months.

I've put a page up on the Hippo Wiki that describes all steps.

Have fun!

December 6, 2007

WicketMeetup

Last Friday I had the pleasure to visit one of the first big Apache Wicket meetups in the Netherlands. At the Felix Meritus, the same place as where the Cocoon GT 2006 took place, I was able to listen to a couple of the brightest Apache Wicket minds.

Looking at the amount of people that came to the NL Wicket meetup it reflects the activity of the Wicket Community. Even though the meetup was arranged on a very short notice, about 94 people attended. That's a great number if you ask me. I guess most of them were dutch, but also a couple of developers from outside of the Netherlands attended the meetup.

For an impression of the event you can take a look here .

November 26, 2007

links for 2007-11-26

November 15, 2007

Safari 3.0.4 on windows

Today 'Apple Software Update' showed me that Safari 3.0.4 for Windows had finally been released. I have been waiting for this as it should fix the problem I was having with writing blog posts in Safari. It seems that the bug has been fixed now. Hurray!

Since it's release on Windows, it will make the Safari browser another option to choose from while working on Windows. In relation to Hippo CMS I can say that some work has already been done to get Hippo CMS running on Safari, but it's not fully functional.
I will let everybody know of course when that happens.

October 22, 2007

Cocoon GT 2007 Day 2+3

Wow the past weeks have flown by. I made a start with this post on the plane back from Rome to Amsterdam, but I could not find the time to finish it. So here goes:

The last two days happened so fast, I was unable to continue my daily blog writing. Day two of the Hackathon was a day of trying out and playing around more with Cococon 2.2. I continued my quest together with Jasha, while he was working on his presentation in the mean-time, with the webdav block. During the day I also attended a couple of talks on 'What to deprecate in 2.2', 'The future of Cocoon Forms and Dojo' and 'Cocoon Marketing'. These talks were held in small groups of about 12 people and were very interesting. Jeremy initially started the talk about Cocoon Forms, which attracted quite some audience. He proposed to migrate Cocoon Forms to the 1.0 release of Dojo, once it's final release is there.
At the end of the day we all went out for some nice real italian pizza and after that a good strawl around town. We got to see the Trevi fountain and the Pantheon. They are both amazing to see.

On the conference day there were a lot of good talks. Some of them I had heard before and others were completely new. Jasha did his talk about the cocoon project wizard, which received some good response from the audience. At the end of the day it was time to clean up and head home. It were 3 amazing days with lots of italian culture, good Cocoon talks andnew friends. I hope to see everybody at the next GT again. Till next year!

September 27, 2007

links for 2007-09-27

September 19, 2007

Cocoon GT 2007 update

It seems the Cocoon GetTogether 2007 program is available at the Cocoon GT website. I knew Jasha was going to submit a proposal and it seems it has been accepted. "Create your website in 5 minutes with the Cocoon Project Wizard". I've seen Jasha doing his magic a couple of times and this is something really worth seeing. It gives you a head start when starting out an Apache Cocoon project. I would say: Show us what you got Jasha!

It was a complete surprise to see another familiar name in the program list. One of my other colleagues, Martijn Vos, apparently had submitted a proposal and it seems his talk has also been accepted! I've not been able to meet up with Martijn yet, since I've been more out, then inside the Hippo office, but I'm very curious about "Use more Java!".

But those are not the only talks. There are more interesting talks like: "Break my site: Practical Stress Testing and Tuning of Cocoon Applications" by Jeremy Quinn and "Hands on Cocoon" by Francesco Chicchiriccò and so many more. Just go and check out the full program at the Cocoon GT website!

September 17, 2007

Cocoon GT 2007

Well the Cocoon GetTogether 2007 is coming up. It's only a bit more then two weeks from now. Have you registered? I know I just did! Be sure to register on time, because the space is limited. I think Rome will be a great place for a GT. I've never been to Rome myself, so I think it's going to be a great experience and I'm definitely going to bring my camera.

I can't wait to meet up with all my fellow Cocooners, have some laughs, drink some beers, eat some great food and see what's hot in the world of Cocoon. For the hackathon there are some plans to do some Cocoon 2.2 integration with Apache Wicket. I've noticed there are a lot of people spending time on Wicket, so it's a framework to take into account.

Of course there will be a Hippo team present. You can probably spot us by the blue t-shirt with the big red Hippo's on the back. Have you used the CMS before or you're perhaps thinking about it, just walk bye and come and have a chat!

See you in Rome!

September 5, 2007

Waiting for Safari 3.0.4 on Windows

It seems that they fixed the Windows Safari bug I was having with writing my blogs in MovableType. I think Safari 3 is a great browser and would like to use it more often, but this bug was holding me back. According to the Webkit bug database (Safari core) it seems that I was not the only one having this problem. Now we just wait for Safari 3.0.4 and hope that this fix will make it into the release.

August 31, 2007

Extreme makeover

I kind of had it with the skin of this weblog. I've been looking for a good skin for ages, but it seems hard to get (at least for movabletype). I'm going to redesign the hole thing. I'm trying to discover what makes MovableType run and how easily you can change your entire webpage.

I've been wanting to change the CSS and HTML for a while, but the HTML is horrible and it's really killing me. That made me decide to change everything. It's one of those cases where it's best to go back to the drawing board, so that's exactly what I'm doing.

I guess you'll see the changes over the next week.

August 16, 2007

Conferences coming up

The vacation period is almost over and the conference season is starting up again. First up is the Cocoon GetTogether 2007. Gianugo recently announced the Cocoon GT 2007 which will be held in Rome this year. The dates are now final, so mark the 3th,4th and 5th of October into your schedule. This year there will be two days of Hackathon and one sessions day. Jasha and I are thinking of doing a session at the GT this year. We're not 100% sure what it's going to be about, but perhaps a session on Cocoon 2.2 from a beginners perspective. It all depends on how much time we can spend on digging a bit deeper into 2.2.

A week later at the 11th of October there will be a dutch conference called J-Fall, organized by the NLJUG (Dutch Java User Group). I've submitted a proposal last night, which is a slightly modified version of our ApacheCon EU talk. Let's just wait and see if it gets selected. Speaking at a dutch conference will be a completely new experience for us.

In the beginning of November there is also the ApacheCon US in Atlanta. Unfortunately Jasha and I were too late with sending in our proposal, but Arjé and Ate will be speaking at the US edition this year. Let's see if we can use our talk, which we'll be preparing for the GT, at the ApacheCon US next year.

July 4, 2007

Hippo CMS on Ohloh.net

Hippo CMS is getting a lot of attention in the Netherlands and around Europe these days, but of course our goal is to make it a world-wide well known product. The only way to achieve that is by promoting it a bit more then letting the product promote itself.

Recently I came across Ohloh. Ohloh is a source directory that helps you find the software product you need. With some help of tags, stacks and the Ohloh community you can find some great pieces of software.

To help developers find Hippo CMS, it has recently been added as a project to Ohloh.

Even though Ohloh is still under development it's fun to see what the Ohloh team does with your source code. It can give you a good view on how active the committers of a project really are, how many committers are involved in a software product and there is so much more interesting information that Ohloh retrieves from your source code repository. I was actually surprised by the source code statistics which stated that the amount of Javascript/Flowscript used in the CMS was about 65% and only 6% Java code has been written until now. Since the CMS is based on Apache Cocoon there is a lot more Java involved, but that's inserted with some help of Maven.

Ohloh is still updating, but I've just also added Hippo Portal and Hippo Repository.

June 13, 2007

First impression: Safari 3 beta on Windows

Yesterday Apple introduced Safari 3 beta for the Windows platform. Of course as a developer I had to check it out and see what it gave me.

The installation was a success, so I had a positive start and my first page impression was very good. I like what Safari does with the font and page rendering. The page looks just a bit smoother then for instance in FireFox and Internet Explorer.

After having worked with Safari for a day I can say that most websites work like a charm under Safari, but this morning I noticed some strange behavior from this beta version. One of the problems I noticed was that when I minimize or maximize the browser on my dual screen desktop, the browser disappears somewhere on the right side of my screen. I'm then unable to get the browser back and I have to close it from the Windows task manager and relaunch the browser.

While trying to write a blogpost this morning I also noticed some strange behavior with the clipboard and with submitting forms from Safari. Somehow only a part of my blogpost got posted and ended up in the database.

I'm not sure if Apple should have released this beta version yet, since it has some weird behavior in very basic functionalities. I've also heard that for some people the browser crashes occasionally. For now Safari will not be able to start a new browser war. Let's see what the next update will bring us!

June 1, 2007

Combining Cocoon and Solr

It's been quiet here this month. I've been extremely busy (what else is new) with finishing up old and starting up new projects. One of the exciting new things is that I've been asked to help out with a new project that embraces the power of Cocoon (hurrah!).

It's a very nice project with a lot of interesting features. The team is very skilled and they are very enthusiastic about the project. My job for now is to support them in their daily Cocoon development and help them out with solutions for parts of their system.

I'm currently looking at how we can implement faceted navigation and fast searching. The first thing that came to mind was Lucene and Solr. I've heard Bertrand talking about Solr so many time that I had to take a look at it. Solr seems to be very powerful,flexible and easy to use. Even for people new to Solr it's easy to setup and play with.

So yesterday I gave Solr a try, to see what we could use it for and it seems to be almost exactly what we need. Cocoon and Solr are in my opinion made for each other since you can do all sorts of XML operations with Cocoon and send and receive these to/from Solr.

While playing around with Solr, I wanted to give it a try from a Cocoon application to see how they would interact. Since you can get results back from Solr by doing an http request it's very easy to integrate this in your Cocoon sitemap. Digging a bit deeper, I stumbled upon a Solr SearchGenerator for Cocoon. Of course that sounded very interesting and I tried it at once. The SearchGenerator is actually very simple and is just a wrapper around an http PostMethod that sends a query to Solr and generates the XML response into the pipeline. Now I had all I needed.

I've even written a small faceted webapp based on the sample content provided in the default Solr checkout. It was fun to write and did not even take me that long. I'll write some more documentation about this and put it online, so other people could also try this out.

So far I really like Solr. Can't wait to spend more time on using it!

Some good links on Solr:

May 7, 2007

Looking back at the ApacheCon EU 2007

ApacheCon EU Logo Last week I had to finish up some work just before being able to leave for the ApacheCon EU 2007. I wanted to go there on Wednesday, to see Stefano's No-Nonsense Introduction to "semantic web" Technologies and some Lucene talks, but I got held up until late in the afternoon.

After my arrival at the Moevenpick Hotel I teamed up with Jasha to do some preparations for our presentation on Friday. We moved some slides and made some additions to the demo. I was pleased with the ApacheCon being held at the Moevenpick. The hotel was nice and food was good and plenty of drinks during the day time!

On Thursday there were a couple of interesting session which I wanted to attend. I started out with Apache Performance Tuning Part 1, which seemed interesting in the beginning, but in the end I noticed that my knowledge of Apache isn't as outdated as expected. Later that afternoon I visited "Up to Speed with Java Content Repository API and Jackrabbit" by Alexandru Popescu. I found it to be very interesting, since we're looking into Jackrabbit at the moment at Hippo.

Jasha and meAt the end of Thursday the lightning lottery talks took place and as usual this was a big laugh! I always find them very amusing and the speakers have a good sense of humor. Of course the Google sponsored beers helped a lot.

There were two more serious though of which one of them came by Stefano Mazzocchi. It was something he had to tell the 'Cocoon community' as a whole. Stefano invented Butterfly after leaving the message that Cocoon had become too bloated. I agree that Cocoon 2.1 is bloated, but there is a very simple explanation for that: it's lack of dependency management. That's where Cocoon 2.2 does a much better job in combination with Maven 2. I guess I will have to take an even deeper look at Stefano's latest invention, to see what he actually came up with, but it sounds interesting.

Me at the ApacheConFriday was the big day where Jasha and I had to do our presentation. After some more preparations in the morning and afternoon, we went outside to get some rest and enjoy the lovely weather. I have to say that the weather during the ApacheCon was great. We talked the entire presentation through and were ready to go! First we headed for Bertrand who did an excellent talk on XSLT and XPath.

After a short break and some some delicious ice-cream it was up to us. People started coming into the room one by one and I think we had around 35 people attending our talk. For a Friday afternoon at 16.30 pm I think we did pretty well. I noticed a lot of people left early on Friday to catch their early flight or train back home. After the talk Jasha and I both had the same feeling: It went pretty well for a first time presentation together! We both found some places in the presentation where we could improve our next talk, so we'll take that along for the next one.

After attending Andrews talk on Cocoon 2.2 and Web 2.0 we went out to enjoy the weather and some nice cold, well earned beers! I think this year was another successful ApacheCon EU. Next to all the presentations the social happening is one of the great aspects of the ApacheCon. You get to meet all the people you actually only know by name. Make sure you'll be there next year. I heard it's going to be in Amsterdam again in 2008!

For all the people that attended our talk: Thank you and I hope to see you next year!

Some extras:

March 7, 2007

A pleasant surprise

Coming back from a vacation always means you'll have to catch up on all your e-mail. Thank god for spam-filters, otherwise I would have gone nuts on all the e-mails. While reading up on my mail, I was pleasantly surprised by this e-mail on the Cocoon developers list. Thanks Andrew! I was totally not expecting this and even Arjé was astonished how speechless I was about it for the rest of the day.

Last year I worked closely with Andrew on several large Cocoon projects. Now that I'm thinking about it I've already been using Apache Cocoon for almost 4 years now and still enjoy working with it every day. Time flies I must say.

I'm also very happy to see that Felix is getting the same trust from the Cocoon community as I'm getting. I know Felix through Cocoon and Hippo CMS and we met last year for a couple of minutes in one of the restaurants at the Cocoon GT. Felix has been putting a lot of effort into Cocoon 2.2 lately, so I think he really deserves it! Keep up the good work Felix!

February 13, 2007

Web 2.0 explained

Today I came across this great video on YouTube. I guess it's one of the best viewed video's on YouTube since it has nearly 1,000,000 views. The video tries not just to explain Web 2.0 within 5 minutes, but shows your how the web has evolved from the 90's until now.

I have the feeling that for a non-IT related person the first three minutes of the video raise more questions than it answers, but the overall impression is understandable for everyone. The tempo of the video is quite fast, so you do have to keep up the pace, but it's really worth your 5 minutes.

The video was created by Michael Wesch, Assistant Professor of Cultural Anthropology at Kansas State University. There is a lot more to this video then just explaining the evolving web. Especially at the end of the video he raises a couple of good questions. I think you will find this video worth looking at.

January 29, 2007

ApacheCon EU 2007

Well it seems the word is out and our ApacheCon talk has been accepted! We were waiting for a confirmation before spreading the word, but the schedule seems to be final now.

Jasha and I were pretty amazed to hear that our proposal was selected out of all the submissions. Looking at the speakers list it's amazing to see us between all those well known Apache member and committer names. The fun part is though that if you look at the list, it seems that we're almost the only two speakers who are not in some sort affiliated with the Apache Foundation other then using one of it's great products: Apache Cocoon.

It seems that us rookies will have to compete with two big shots for audience. It's too bad that Ate Douma is speaking at the same time, since I was curious about his talk on "JSR-286: Portlet Specification 2.0 for Portal and Portlet Developers". I've been working closely with Ate lately on a new and exciting Hippo project, so the portal subject really interests me.

It seems Apache Cocoon is closing the ApacheCon Friday with Andrew coming right after us with "Web 2.0 with Cocoon 2.2". I think the order is great, because you can go from a novice to an experienced session. We hope to get your Cocoon knowledge up to date for Andrews session later that day.

If you're interested in what Apache Cocoon is all about, be sure to come and visit our session! Remember: "Basic web application development with Apache Cocoon" is where you have to be! ;-) We're more then willing to answer all your questions and hope you will enjoy our talk.

See you on the 4th of May!

Debugging with FireBug is great!

I guess I don't have to tell everybody how great FireBug is for Web Development, but I'm going to do it anyway. FireBug is so easy to use and so feature-rich that I think it's the best plugin available for FireFox. I think it's a must for every web developer these days and I can't image working without it, since I first started using it.

I've your not familiar with FireBug yet then here is a good article for you to read. In short: FireBug is an open source feature-rich web development plugin for FireFox. It has features like, debugging, profiling and javascript logging within your browser.

This month FireBug is more then a year old and has grown enormous over the past year. A couple of days ago version 1.0 came out and it's extremely stable. I use FireBug all the time while working on Hippo CMS, since it's full of Javascript and XMLHttpRequest calls and it helped me out a lot.

If you're not using FireBug yet, be sure to check it out and play with it for a while to get familiar with it.

January 13, 2007

ApacheCon Europe 2007 proposal

The ApacheCon EU 2007 is coming up and the deadline for proposals ended last night. I've seen several ApacheCon proposals come by over the past weeks and was thinking together was Jasha that we had to do something ourselves this year.
We've both worked on a lot of projects build with Apache Cocoon for a couple of years now and know most of the pains when starting with Cocoon, so we decided to submit a proposal ourselves: "Basic web application development with Apache Cocoon".

If the proposal gets approved the session will be very low level. As less code as possible, but more of an explanation about what can be done with Cocoon, how Cocoon handles itself in the web 2.0 hype these days and why Cocoon could be useful for you.
Cocoon can do so much more then most people think. You can create really powerful applications, high performance websites and multi-publishing platforms.

We'll just see what happens next!

November 26, 2006

Playing around with Apache MyFaces

I've been playing around with Apache Myfaces since a couple of days, after Wander created a front-end for Hippo Repository with MyFaces. After looking at this prototype I got the urge to try myfaces out myself and get to know something about it.

The first thing I stumbled upon was how do I get started? The getting started page is not very clear about this, except that you need some certain packages.

Next step of couse was to move on to the MyFaces Wiki. The Wiki had exactly what I was looking for. A clean and simple maven 2 getting started page. It allowd me to create a simple webapp within 5 minutes after installing maven 2.

So now it's time to experiment some more. Let's see what kind of fun stuff is possible with MyFaces!

November 15, 2006

Running a newer versions of TortoiseSVN with Eclipse v3.1 and Subclipse v1.0.3

Thanks to Dan and Bart van der Schans I figured out how to use a new version of TortoiseSVN in combination with Subclipse 1.0.3.

Hurray!