Java Web Services: Getting Started

Tuesday, March 9, 2010
Posted in category JBoss, JEE, Java

Introduction

When it came time for me to tackle my first web service implementation I ran into a lot of problems. Here I will write a series of articles to address the questions and problems I encountered in hopes of helping you get started in developing web services faster than I did. The following example will show you how to create a web service using JAX-WS and packaged as a servlet. Read the rest of this entry »

Java tip: How to read files quickly | Nadeau Software

Wednesday, November 25, 2009
Posted in category Java

Here’s a good article comparing the performance of various File I/O implementations.  I was particularly interested in the performance difference between the BufferedInputStream and the FileChannel.

Java tip: How to read files quickly | Nadeau Software

Use final

Tuesday, October 27, 2009
Posted in category Java

The final keyword is one that I find is under utilized. Use final in your projects as a means of defensive programming. If you are unfamiliar with this keyword here is a great article on its usage.

Renaud Waldura’s The Final Word On the final Keyword .

EGL Community Edition 1.0

Wednesday, September 9, 2009
Posted in category Tools

IBM releases EGL Community Edition 1.0 on September 8, 2009. EGL is a high level language designed to simplify Rich Internet Application (RIA) and Web 2.0 development. EGL is an extensible language that generates standard JavaScript and AJAX code and is not a replacement for these technologies unlike Flex and Silverlight.

EGL Community Edition 1.0 is an Eclipse based tool that is free for download. To learn more read the Quick Overview.

Book Recommendation: The Art of Agile Development

Saturday, June 27, 2009
Posted in category Agile

I just finished reading The Art of Agile Development
by James Shore and Shane Warden. I picked up the book because I wanted to find out more about agile development. I hear a lot of terms thrown around the office about scrum processes and agile development. However, as I paid more attention to the activity within the work place I started to question the validity of our processes as being “agile”.

Read the rest of this entry »

Five Essential Skills For Software Developers

Saturday, May 9, 2009
Posted in category Career

There are a lot of software developers out there and the competition is high in the current job market. The economy is in a state of flux and the unemployment rate continues to rise. It’s important to develop a set of skills that distinguish you from the rest of the pack and I believe maintaining a well rounded set of skills is the best way to do that. Here are five essential skills to keep you on top of the game. Read the rest of this entry »

The EJB Specification, Concurrency, and Batch Processing

Sunday, March 1, 2009
Posted in category JBoss, JEE, Java

The EJB specification does not leave much room for implementing concurrent processing within the EJB container. This poses a problem to developers who need to implement solutions for processing long running batch processes as part of the business logic of an application. The EJB specification states the following:

The enterprise bean must not attempt to manage threads. The enterprise bean must not attempt to start, stop, suspend, or resume a thread, or to change a thread’s priority or name. The enterprise bean must not attempt to manage thread groups.

These functions are reserved for the EJB container. Allowing the enterprise bean to manage threads would decrease the container’s ability to properly manage the runtime environment.

Read the rest of this entry »

Enforce Data Integrity With Check Constraints

Sunday, November 23, 2008
Posted in category Database, Java

I came across some code the other day that simply horrified me. I was looking at a table that had a field name which implied it stored a boolean value (e.g. IS_LAUGHABLE). The field type is defined as a char(1), allows NULL values and defined no default value. Looking at the data in the column I found a combination of the following values: T, F, Y, and N. Read the rest of this entry »

Java vs. .NET: Job Market and Salary Survey

Saturday, November 22, 2008
Posted in category Career, Java

I was recently contacted about a technology job search engine named OdinJobs.com. I took a look a the site and found that they have some great tools for job market analysis and salary surveys. Here I compared salaries and job market trends between J2EE and .NET Architect/Lead and Developer roles in the San Francisco Bay Area.
Read the rest of this entry »

Web Services on JBoss

Wednesday, October 29, 2008
Posted in category JBoss, Java

I’ve been working on a project which requires developing some web service endpoints. This is the first time I’ve had to develop Java web services and I came across a couple of issues which slowed me down. I am using JBoss 4.0.5.GA which comes packaged with JBossWS 1.0.3.SP1. I started out by going through the examples provided in Chapter 12 of the J2EE Users Guide which helped me get a template for my project. As I attempted to expand my project with multiple service endpoints I received errors during deployment using JBossWS 1.0.3.SP1.  I decided to upgrade to JBossWS 1.2.1.GA which is packaged in the 4.2.3.GA certified distribution of JBoss Application Server. The upgrade solved some of my initial issues but introduced a couple more, some of which are not documented in the official JBossWS users guide. Read the rest of this entry »