I send a message to Clinton Begin 10 days ago if it would be allowed to use JPetstore as an example Portlet Application for Jetspeed-2. Because I didn't receive any response yet, and I thereafter got the impression you might also be moving the JPetstore sources into the incubator, I present my request again through this channel.
I'll repeat much of my previous message below, although a bit rephrased in the expectancy of an ASF for JPetstore.
Here it goes:
I'm one of the developers of the Apache Jetspeed-2 portal. For the portal, we already have created a few small demo portlet applications, but it would be nice to also supply a more "showcase" kind of application. I think your JPetstore would be a fine example.
I don't know how much you about Jetspeed-2 (http://portals.apache.org/jetspeed-2) but one type of components we deliver with it are bridges for web-framework like Struts, MyFaces, PHP, Perl, Velocity etc.
I'm the developer of the Struts Bridge which allows Struts web applications to be run as JSR-168 compliant portlets. If a Struts application is properly setup (using true MVC model, correct use of the struts taglibs etc.) this is quite easy to do.
So, I started out to make the JPetstore Portlet compliant. For this, I needed to correct several aspects in the jsp files (like not directly submitting <img...> tags but using <html:img... tags instead) and a few small changes to the struts-config file. Also, I had to modify the Product table and mapping to separate the image name from the description (and remove the markup) because the stored markup doesn't work from within a Portlet.
After a few hours, I now have the JPetstore 100% working as a portlet (note: there were a few quicks related to the usage of com.ibatis.struts.ActionContext.setSimpleMessage and .addSimpleError methods, but I've transparently covered that now too).
Now that I have proven this was easy to do and is working, I would like to ask you if you would allow my version of the JPetstore to be included as sample portlet in Jetspeed-2? Not only is it a nice example, it also is a perfect showcase how a good setup Struts application can be transformed into a portlet application without too many changes.
Note: I kept the cleaned up version of JPetstore *before* I transformed it into a portlet separate. That is still a "native" web application, just more "strutsified". If you are interested, I can supply that version. If you agree to this request, it might be even nicer if you would accept those changes to JPetstore too, so that anyone interested can clearly compare the changes I made to transform it into a Portlet Application (almost none in that case).
Back to embedding the portlet version into Jetspeed-2. If you agree, I would like to check my version in in the cvs repository of Jetspeed-2. But, because that is an Apache repository, it will require a Apache license for it, and hence this request. If you agree, will it be allowed for me to do so right away, or need I wait until you have checked in the JPetstore under incubator (if you are going to do so) and base my version on that?
One last question about iBATIS itself. Jetspeed-2 is completely build using maven. Dependencies are retrieved through public remote maven repositories. Because I couldn't find iBATIS libraries anywhere (e.g. www.ibiblio.org/maven) I put them myself in my local repository. Do you have plans to make the iBATIS libraries available through ibiblio?
Regards,
Ate Douma
