Archive for March, 2011

Handling Date Parameters in Grails

Mar 28 2011

Grails generally makes it very easy to bind request parameters to domain objects or command objects with properties of varying types. For most request parameters, a simple call to a controller’s bindData() method is all you need to handle property binding and type conversion. Unfortunately, the default Date binder is very rigid and only handles […]

Highlight text using Lucene

Mar 06 2011

The following code illustrates how to use the Lucene highlighter to highlight text in any String. import; import; import; import; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.queryParser.QueryParser; import; import; import; import org.apache.lucene.util.Version; public class LuceneHighlighter { public static String highlight(String pText, String pQuery) throws Exception { Analyzer analyzer = […]

Scale an Image in Java

Mar 06 2011

Java has a rich Image manipulation layer. The following code shows how you can scale an input BufferedImage. import java.awt.AlphaComposite; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.image.BufferedImage; import; import; import; import javax.imageio.ImageIO; public class ImageUtil { public static BufferedImage scale(BufferedImage pImage, int pWidth, int pHeight) { int type = pImage.getType() == 0 ? […]