Search for SEO on Google and you will have your choice of 848,000,000 results. There are few things that are more nebulous and misunderstood than the three letters SEO. Searching for an answer to “What is SEO?” is like looking for a grain of sand in the Sahara, so I apologize for the extremity of […]

This blog will cover some aspects of a login portlet implementation that will utilize the Google OpenID interface for user authentication. You might say that Liferay already provides that kind of implementation using its OpenID feature. However, implementing the authentication yourself gives you the opportunity to provide a custom login page and add some functionality […]

SIMPLIFYING PORTLETS As a consultant asked to maintain and expand portal applications, one of the problems I run across is “portlet bloat.” That is, a single portlet solves all the problems of an application on its own as if it’s a full-blown web application. It may be an oversimplification to call a portlet a ‘mini […]

Consider the following code: If I had a dollar for every time I’ve seen code like this, I’d be writing this blog from the beach. It turns out that, thanks to the geniuses at SpringSource, some of this code can be eliminated and replaced by a generic string to entity converter with the Spring Type […]

I’ve found that trackbacks and pingbacks are two items that can always use more explanation. Even though there are thousands of posts pertaining to their use, I wanted to provide a “bump” to the discussion and add my two cents. If you are new to blogging, trackbacks are kind of confusing. They always have been and until they are gone, […]

One of the many wonderful things about SpringMVC is its almost magical ability to inject required objects into controller methods. Need an object? Simply add one of the supported arguments to the controller method and it will be there when invoked by the framework. A common idiom involves including an argument of the type Authentication […]

The horse and buggy is still a viable mode of transportation. Newer needs can be accommodated by adding horses and modifying the buggy. Of course just because something can be done doesn’t mean it should. When Java was establishing itself as a staple of modern enterprise applications development teams began creating frameworks for standard needs. […]

I recently started a new iOS application and decided to add the Jira Mobile Connect SDK to hook the application to our Jira OnDemand instance. I found that the SDK was well documented (see Jira Connect for iOS) and hoped that it would be a smooth ride, but some issues and annoyances arose. Enabling Jira […]