I recently evaluated CAPTCHA for a client requirement. Here is a brief overview (Source: blogs, wiki, white papers found on google search) CAPTCHA stands for: “Completely Automated Public Turing test to Tell Computers and Humans Apart”. It refers to a technology familiar to anyone who’s registered on a popular website – the “what word is [...]
Friday, September 5, 2008
Mikko Ohtamaa provides a nice explanation of how to execute JSLint on a javascript file from within eclipse, using Rhino.
At my current contract, I’ve been using the popular EXTJS javascript library. In order to get up to speed faster, I’ve started a small project to assist my learning. I thought about using a number of back ends to support my project, but decided on Grails after reading about the built-in JSON converters. Getting started [...]
Wednesday, August 20, 2008
It’s a common occurrence in the Java consulting world, as ridiculous as it is, I see it all the time. I do into a new development shop to help build a large webapp. Since it’s a large webapp, someone has decided they needed to buy licenses for Web* app server. And since they’re using the [...]
Wednesday, August 6, 2008
Chris Brogan asks the tough questions about the internet Empire Google. What happens if you’re a user of Gmail and other Google services, and one day they disable your account? Monday afternoon, after lunch, Nick came back from lunch to find out that he couldn’t get into his Gmail account. Further, he couldn’t get into [...]
Grails is a composed of a stack I like, a combination of technologies I’ve enjoyed using over the last few years- Groovy, HSQLDB, Spring, Hibernate, etc. And the whole seems greater than the sum of its parts, so while I’m complaining about it today, I do so knowing that with future releases Grails could really [...]
I figured I’d lay this out there. It’s not awesome code, just quick and dirty. But it works. @Override protected void buildExcelDocument(Map model, HSSFWorkbook workbook, HttpServletRequest req, HttpServletResponse resp) throws Exception { //CREATE THE SHEET String periodDate = (String)model.get(PAYROLL_PERIOD_KEY); HSSFSheet sheet = workbook.createSheet(periodDate); sheet.setDefaultColumnWidth((short) 12); //GETCELL: getCell(SHEET, ROW, COLUMN); short currentRow = 0; //WRITE ROW [...]
Astute readers of my last Acegi article will note that Acegi has been assimilated into the Spring project, and is now called Spring Security. This next example is how I was able to get Spring Security running on my webapp. I decided early on that I did not want to mess up the other developers [...]
Note; This was my first day of adding Acegi to an existing webapp. You can find a lot of Acegi security framework examples on the web these days. Unfortunately, nearly all of the examples use Acegi use the pre 1.0 version, which is before someone removed the SecurityEnforcementFilter.. The official description of this event follows: [...]
If you haven’t heard about the layout framework, Sitemesh which is based on the decorator pattern, you’re missing something in your webapp. Here’s a quick overview of both the Frameworks and obviously Sitemesh favors over Struts Tiles in a lot of ways. The Pros: Compatibility: Works virtually with all web frameworks while Tiles has limited [...]