Sunday, March 22, 2009

Going Back and Going Forward

I've given up on getting an answer on the forum to my problem with not being able to deploy portlets to the Web Space Server instance running on the Solaris VM. I went back to working with a portlet I had created several months ago that used an Open Layers map and had a call to a Web Feature Service (WFS) that displayed some National Inventory of Dams (NID) data. There is a lot more that I need to learn about working with WFS clients.

After finally digging up the portlet that was the most current and displaying it on GlassFish, the first problem I encountered was that the point features were not displaying on the map. Investigation revealed that my team had removed the feature data from the virtual server I had been accessing for the NID data. Since that link was somewhat hardcoded in the proxy servlet code my first task would be to rethink the way I created the URL to make it easier to modify for different data sources.

Several email exchanges with the team gave me a URL for a WFS data set similar to the NID that I could fairly easily replace in the portlet code. This data is a feature set representing World Port Index (WPI) location points. During the course of making the code changes I encountered a problem that I had managed to avoid dealing with earlier when I was doing portlets with Open Layers maps. I knew that I would eventually have to start using the portlet namespace taglib because most of the Open Layers examples used the same variable names. And that doesn't work well when you have more than one of the Open Layers portlets displayed on the page. The data was showing up in the wrong divs.

I started the task of adding all the portlet namespace tags but I will now be setting that task aside for at least the next week. I'm attending a 7-day Training Camp class that is designed to prepare me for passing Sun's Certified Java Programmer 6 class. My Java knowledge is definitely not what it needs to be to pass that exam. NetBeans is a great tool for doing the behind-the-scenes Java code that's needed for portlets, but it means that I haven't had much experience or practice with the basics of Java.

I'm going to need to concentrate every brain cell this week on the basics of the Java language. I've started looking at a book with examples of the test questions and I'm dismayed at how deliberately tricky the questions are. I never knew it was possible to make such an intense multiple choice exam--so many "choose all that apply" or "fails to compile" or "exception at runtime" or "prints this" or "prints that." It doesn't test just factual knowledge, you have to understand and think about and trace through the code before you can begin to pick an answer.

The worst that could happen when the end of next week comes and I attempt the test is that I don't pass. But that won't be the end. There's still a year (I think) in which I will be able to continue to study on my own and retake the test again. It's going to be a lot of work but I look forward to having a concrete goal ahead of me, for once, instead of the vagaries of deciding what I should try to make work next with portlets.

Tuesday, March 10, 2009

SharePoint versus Web Space Server

I've had some time now to kick the tires on Sun's GlassFish Web Space Server 10.0 that was released last month. One of the things that strikes me is how much it seems to want to imitate the features of Microsoft Office SharePoint Server. But maybe that's because of the time I had been spending working with MOSS. Web Space Server came out of Project WebSynergy. When I played around with WebSynergy last fall I was concentrating on portlets and WSRP and if it had MOSS-like features, I wasn't paying much attention to that part of it. It was difficult enough just to get it to work.

I appreciate that Web Space Server has better documentation. I think it has finally fully incorporated Liferay and can take advantage of the community knowledge from that product. There is a lot of documentation about the social networking, content management and workflow features, which is interesting from the standpoint of a comparision to SharePoint. But the focus of my project is supposed to be building portlets that will work on any portal. Once again, as I try to actually build and deploy portlets with GIS usability I continue to encounter problems.

We have 2 instances of Web Space Server 10.0 that are being evaluated. I installed webspace-10-fcs-gfv2-windows.zip on Windows Vista on my laptop. For an evaluation copy visible to the group we installed webspace-gfv2-sunos-x86.zip on Sun Solaris 10 on a virtual machine. On the Windows Vista Web Space Server I was able to deploy the WAR file containing the 4 GIS portlets that I had developed earlier in the year with NetBeans 6.5. But I can't seem to get the WAR file to deploy on the Sun Solaris instance. Still waiting for a response from the users@webspace.dev.java.net mailgroup.

There must be some part of the Solaris installation that we've done incorrectly--I'm thinking maybe something to do with file/folder permissions. That's the instance where I have an outstanding question from a week ago when we first installed it and the User Sample Login portlet that's supposed to be on the Welcome screen was not working. It wasn't working when I first installed the Windows Vista instance but I got a response right away from the mailgroup on that one. It was just a matter of rebooting the server. But that didn't work on the Sun Solaris instance. There were error messages, too, when the Windows Vista one didn't work but there have been no error messages when the Solaris version fails to deploy the portlets. It's like the deployment process is just not finishing.

If we can get no response from the forum about why we can't deploy to the Solaris version I'm not sure what the next step will be--maybe talk again to the sys admin who installed it and see if we need to reinstall. Meanwhile, what I now need to do is set up NetBeans to use the Web Space Server on my laptop and beef up a couple of portlets I built awhile ago that use Open Layers. Portlets sure do look a lot better on Web Space Server than they do on Portlet Container.