WicketStuff Artwork new release

26 05 2009

Ever tired of using endless hours of css’ing just to find out that what you did breaks in IE.. WicketStuff Artwork is all about making your wicket site turn into art, easy. It’s a package consisting of two modules

  1. Liquid
  2. NiftyCornersCube

Both modules will let you do round corners on containers simple and easy, just add a behavior to your wicket component or your page and thats it.
Liquid will let you do all sorts of advanced stuff with your markup containers, for example add a shadowed border, see this screenshot:

Liquid Examples

Liquid Examples

NiftyCornersCube are really quick to render and requires less cpu processing so it has some advantages but are also very limited in effects. See here:

Nifty Examples

Nifty Examples

You can grab the latest snapshot release here:

http://wicketstuff.org/maven/repository/org/wicketstuff/artwork/1.4-SNAPSHOT/

And see howto checkout the examples here:

http://wicketstuff.org/confluence/display/STUFFWIKI/Wiki

Basically it’s just this svn url:

http://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-core/artwork-parent/artwork-examples

But you should check out the whole wicketstuff core in order to build dependencies.

Now please come with more ideas and JS libs to add to the Artwork package :) I want to see some comments on how to improve it :)

Regards Nino





Apache Wicket Merchandise

19 02 2009

In late 2008 I got the permission (by signing a contract) from ASF to create and run a Webshop that sells Wicket Merchandise, the shop donates 5% of profit to ASF the rest goes to the Wicket community. If you want to buy some merchandise go here http://www.cafepress.com/apachewicket .

The Apache Wicket Merchandise Shop has awarded these people:

  • 2009 – Jeremy Thomerson , for his work organizing wicketstuff core, he got golf t-shirt ( http://www.cafepress.com/apachewicket.317295373 )
  • 2009 – Daan van Etten , for creating the grapichs for the merchandise, he got the mug ( http://www.cafepress.com/apachewicket.317295372 )

The idea are to continue to use profits to award people that has done something special for the wicket community, like Wicket committers or WicketStuff committers etc.

If you have someone that you would like to nominate to receive some merchandise please write it as a comment here, please write a few lines why and if you have contact information you can mail it too me. I’ll add them to the vote list.

regards Nino





Apache Wicket javascript integration

9 09 2008

This article will give some general pointers on howto do javascript integration, it’ll give some tip on how to make it easier to for you. And also a recommended way on project structuring.

Howto do it:

Javascript bridge

If you need a javascript bridge between the javascript library and wicket a very nice way are todo it like this:

https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicket-contrib-openlayers/src/main/java/org/wicketstuff/openlayers/wicket-openlayersmap.js

Use the wicket namespace for a cleaner approach(like above), and remember to place your data in an array, so you can have multiple of the same components on the same page. Like so:


var Wicket;
if (!Wicket) {
Wicket = {};
} else {
if (typeof Wicket != "object") {
throw new Error("Wicket already exists and is not an object");
}
}
Wicket.omaps = {};
function WicketOMap(id, options) {
Wicket.omaps[id] = this;
}

Lots of dynamic stuff?

If you have lots of dynamic stuff you can use a texttemplate to interpolate your variables with it works really smooth, heres an example:


...
HashMap variables = new HashMap();
variables.put("alert", "helloworld");
TextTemplate textTemplate=new TextTemplate();
textTemplate.interpolate(variables);
String js= textTemplate.asString();

corrosponding java script, notice the template signature ${…}

alert("${alert}");

So above code will produce a javascript string ‘alert(“hello world”)’ very useful.

Using a behaviour

Behaviours are nice if you need some special that modifies the component you want to add too. It’s an easy way of getting information like markupid etc. Its good because you can access the component that you bind to, so you may put in javascript, add attributemodifiers etc for it.

Virtual tour of Mootips

Heres a virtual tour of Mootips javascript integration

go here for the minis wiki





Doing Screen casts

3 09 2008

Doing a screen cast aren’t that hard, theres a lot of software out there, but you have to pay for it. For around 90$ you can get Screenflow, mac only for less you can get snapzshots which are both for mac and windows. Just remember to clean up your desktop, or use an extra monitor to record from.

However an really really important thing to note are whats the purpose of your screencast, do you need people to actually see what you are doing on screen like and command prompt etc? How will you share the screencast, there are lots of ways like google, youtube etc.. But they all convert your screencast into a lowever resolution. And in my case I need people to actually be able to see what I am doing. So how does one solve this? Well two ways, either record your screencast in a resolution closer to what it gets converted to, or host the screencast yourself.. Vimeo actually offers a hd solution for videos, it might be an option to preserve your screen cast at optimal resolution.

This is just some notes:

http://www.ffmpegx.com/flv.html

http://www.ffmpegx.com/video.html

http://www.ambrosiasw.com/forums/lofiversion/index.php/t60248.html

http://lists.apple.com/archives/QuickTime-Users/2005/Apr/msg00274.html

http://www.reelsmart.com/2008/02/14/vara-releases-screenflow-for-leopard/

http://www.macnn.com/articles/08/02/29/first.look.screenflow/

http://www.flip4mac.com/screenflow_features.htm





ROR, Rails what do I think?

31 03 2008

Some of my collegues likes Rails, I see some of their points

  • No need to worry about frameworks
    • Rails comes boxed with a persistance framework
  • They have great support for test, by generating unit tests as default, for controller and functional tests for view and Integration test.
  • They claim fast development(which seems to be true in the beginning anyways)

So I really like the testing part, that it’s all served for you, in java we have archetypes or mojos if you use maven. But still it still does’nt have the complete feeling that Rails has with it’s test, it just feels a little more TDD friendly or at least right now.

Being a consultant that has tried a lot of languages, i’ve tired of learning new languages, or at least im very critical about it. I mean why should I switch from java, I know that there are some things bothering people. But heey the grass is always greener on the otherside. And when it comes to it, you never get the perfect solution. What you can do is minimalize how bothered you are by this by selecting whats right for you.

Which brings me to the down sides of Rails as I see it and as I know(I know very little of Rails):

  • No markup inheritance
  • No real mvc, you can actually have functional code in your rhtml
  • And when it comes to it, you really have to worry about frameworks, for testing, ajax etc

All these concerns bring me to the conclusion that, I would like to stick to this stack:

Wicket+JPA+Spring+OpenJPA

I guess I arent that critiacal about the persistance layer or the IOC but I feel that wicket really has hit the right spot!

And that I foresee that projects where you use Rails, will probably take off quick and the slow down as the project becomes more complex.

Since I like complex projects, I don’t really see me following that path..





Hibernate Trouble?

30 03 2008

So for my very own small personal project, http://www.træningslog.dk I am using Hibernate as persistence provider. But I keep bumping into problems when it comes to polymorphism, ive already stumpled over this:

http://opensource.atlassian.com/projects/hibernate/browse/ANN-720

And now it looks like i’ve fallen into another one. More on this later.

I guess the short conclusion are that i’ll switch to OpenJPA, and see how it fits instead.. However I like the criteria api from hibernate very much, and would hate to miss out on that….





Hello world!

30 03 2008

So this is the first blog here. I’ll start blogging in a bit.