How to Create a Java EE 6 Application with JSF 2, EJB 3.1, JPA, and NetBeans IDE 6.8

There are many articles and tutorials out there that discuss how to use the individual technologies in Java EE 6, e.g., JSF 2, EJB 3.1, JPA, etc, to develop an application, but I haven’t seen one that puts together the said technologies and showcases them in one tutorial with an end-to-end demonstration. As such, I thought I would create one here for the benefit of those who are new to JEE6 and NetBeans IDE 6.8 and those who are seriously looking at NetBeans IDE 6.8 as a tool for developing their enterprise applications.

This article published on Netbeans Zone aims to provide detailed steps to develop a web-based application based on technologies in the JEE6 specs, i.e., JavaServer Faces 2.0 (JSF), Enterprise Java Beans 3.1 (Session Bean and Message-Driven Bean) and Java Persistence API (JPA) with the help of NetBeans IDE 6.8 as the development & deployment tool. The example in this tutorial creates a web application called “CustomerApp” that performs only the Retrieve and Update functions of CRUD on the customer records provided by the NetBeans Sample database served by the Glassfish built-in database server, JavaDB (Derby). In addition to the above-mentioned technologies from JEE6, PrimeFaces for JSF2 will also be used as the Ajax-based Framework for the Web UI portion which is lacking in the stack. So, this tutorial also discusses how PrimeFaces can be integrated into NetBeans IDE and to enable Ajax capabilities for Web projects.

The objective of the tutorial is to demonstrate the ease of using the various JEE6 technologies and putting them together to create an enterprise-ready web-based application. Although the application is developed for demo purposes, its architecture represents the best practices in developing an enterprise application, whereby modularity, scalability, and reusability are taken into consideration.

Read the rest of the article and tutorial >>

Native Seam Support Wanted for NetBeans & Glassfish

Jboss Seam logoJboss SEAM is by far the best programming framework for Java EE development as it solves most of the problems which arose for achieving a true MVC 2 implementation. All of the other frameworks like Struts and Spring MVC when used with presentation layer specifications like JSP and JSF 1.x while almost succeeding in the arena, when it came to agile development, they created at least as many other problems – if not more - as the ones they solved. Enter Jboss Seam which uses JSF 2 for the presentation layer which is truely a Java EE specification and for the rest of the MVC paradigm which consists of the business logic and the data persistence layer achieved respectively by EJB and JPA.

Joesph Faisal Nusairat had this to say in his book Beginning Jboss Seam from Novice to Professional. 

For years developers realized that the JavaServer Pages (JSP)/servlets paradigm was not enough to create enterprise-level web pages. That model provided the capability for a web tier that could pass objects from the client to the server, but essentially that was it. For most developers, this simple paradigm was not enough; more-complex operations were needed, and developers found themselves writing infrastructure code to deal with the shortcomings of the Servlet specification. Eventually, all the ideas learned from creating custom infrastructure code resulted in the web frameworks we know today, such as Apache’s Struts and Tapestry, OpenSymphony’s WebWork, and so forth. The Java community also got together and through the Java Community Process (JCP) created the JSF specification to tackle some of the issues raised and deal with the shortcomings of the Servlet specification.

Even though we now have web and business tiers with improved functionality, we have still been forced to create the plumbing code needed to connect them together. With Seam, however, these two areas can now focus more exclusively on what they do best—presentation and business logic.

Continue reading “Native Seam Support Wanted for NetBeans & Glassfish”

Techniques For Integrating Hibernate Into Legacy Java Code – Part 1

If you’re like me, you spend a lot of time dealing with legacy code that, for whatever reason, does not take advantage of modern methodologies and libraries. I’ve taken over Java projects that contain hundreds of thousands of lines of code and not a single third-party jar other than a JDBC driver! One of the most common examples of this is the implementation of the data access layer. These days, the de facto methodology involves Hibernate and DAOs, usually managed by Spring.

This article will detail the steps I recently took to covert a large application from custom-written data access to Hibernate and Spring using the refactoring facilities in Eclipse. The key with this refactorization is to get the existing business logic code (Struts Actions, JSPs, Delegate classes, Business Service classes, etc. ) to access the datastore using Hibernate, managed by Spring, without manually changing any of that code directly. Part 1 will include creating the Hibernate data object classes, DAOs, and refactoring the existing code to work with these newly created types. Part 2 will conclude the project with integration of the Hibernate DAOs and wiring everything up with Spring.

Continue reading “Techniques For Integrating Hibernate Into Legacy Java Code – Part 1”

Java Programming Basics

If you are interested in learning a computer language, then I recommend JAVA. This language is one of the most commonly used languages in the world and can be fitted to almost any application. In this tutorial I will show the installation all the way to your very first program. So get ready to learn JAVA! Installation Guide: 1) Download “Jcreator Software” 2) Install “Jcreator Software” 3) Download “SE Development Kit” 4) Install “SE Development Kit” 5) Open “Jcreator Software” 6) Your Done! Jcreator Software: SE Development Kit:

Java Tutorial 0 : Introduction to Programming

This is one of a first series of software development tutorials for those who want to learn Java programming from scratch.

What is programming? Why program in Java? What can I expect to get out of these tutorials. What am I NOT going to get from these tutorials?

What are the best sites online to learn about JAVA AWT/SWING event-handling components?

You want to know which sites are the best out there for learning JAVA AWT/SWING event-handling components, etc?

Here’s a list of the answers given on Yahoo! Answers:

Java EE – Hello world EJB3 in Netbeans

This is an introduction to Java EE Enterprise Java Bean (EJB 3) technology. It’s just an hello world example and this is part1. This series of posts will cover: How to create a simple ejb, How to write an standalone client application for that bean, How to deploy it on a real server etc. And there will be a screencast of every tutorial.

Deploy Top-Performing Java or SQL Code with J Optimizer and DB Optimizer

Yikes! Your application just failed three performance requirements in QA. Is it your database? Is it your application? What is it? Before you begin the usual hair on fire drills tuning the parameters, rebuilding the indexes, removing them, and throwing more hardware at the problem attend this webinar: Deploy Top-Performing Java or SQL Code with J Optimizer and DB Optimizer Free Webinar Wednesday, April 8, 2009 11:00 AM PDT / 2:00 PM EDT Register Now! At this Webinar you will learn how to: • Find and fix performance problems in your Java code earlier in the development process. • Quickly pinpoint, down to the line of code, memory and CPU bottlenecks in your Java application. • Profile the performance behavior of your Java EE application and identify performance bottlenecks across Java EE protocols and components. • Uncover inefficiencies in your SQL queries to prevent poor-performing SQL from reaching the production environment. Learn how you can more easily and quickly prevent, find, and fix problems that impact Java application and database performance throughout the development cycle and even post-deployment.