877.663.0877
FREE DOWNLOAD

Java/JEE

A general-purpose programming language designed to have as few implementation dependencies as possible.

Java/JEE

Here is a sampling of projects we've successfully completed. If you need expertise with a specific, even obscure, technology, please let us know.

Java Consulting

Technical Environment

Oracle, GlassFish, Spring Framework, Hibernate, Seam, JSF (Java Server Faces), IceFaces

Description

Our client was underway migrating
its client/server application to the Web. The team determined that it would benefit greatly by having a consultant available approximately 5-8 hours per week for on-site meetings, code reviews, and the like as well as off site question and answer sessions.

The first task was to streamline the development environment and tighten configuration management. Maven was introduced for managing Java dependencies and builds. Complementing Maven are Artifactory, a Maven artifacts repository, and Luntbuild, a continuous integration build system.

While JEE with Spring and Hibernate were established as architectural cornerstones, no commitment had been made regarding a UI framework. Rich Web 2.0 features were among UI framework selection criteria as were architectural soundness and developer productivity. JSF was readily accepted as the foundational UI technology and the Seam Framework was selected for
its inherent Spring/Hibernate integration and its ability to overcome JSF shortcomings.

Accomplishments include:

  • repeatable builds
  • standardized JEE project archetype
  • successful, rapid adoption of JSF and the Seam Framework
  • increased application deployment flexibility via Spring configuration techniques

Next up is an initiative to eliminate the requirement to maintain a separate database schema for each customer (due to differing data requirements). So far an end-to-end proof-of-concept project that
demonstrates management of dynamic fields has been successfully completed. Practical issues relevant to this approach, such as performance and reporting,
will require a solution before adoption and are among ongoing tasks.

Buzzwords

Java Server Faces (JSF), Spring, Hibernate, AJAX, Seam, Icefaces, Oracle

Java Enterprise Edition Using WebSphere

Technical Environment

JEE, WebSphere, Oracle, EJB 2.0

Description

Our client had a product that had been released in 2002, but had a short life span because of marketing and implementation issues. The client inherited the code and was suddenly faced with a very real need for the software to be working and deployed within a short period of time. To further complicate matters, they did not have in house capability with JEE, WebSphere and EJB 2.0.

We worked with the client to resuscitate the old software, connect it to Oracle, deploy it on a development server, and mentor the in-house team on the basics of the software. The software was well written EJB 2.0 combined with JSP pages and some Servlet code. We were challenged to work within a 2002 version of WebSphere studio in order to best accommodate the customer’s immediate needs. After the first few days we were able to bring the application fully on-line. From that point we worked to give the appropriate in-house personnel access to the Web application using their current Internet Explorer browsers. We fixed a small browser compatibility issue and then started testing the application in earnest. We discovered a need to link the project over into Perl script for the major reporting component. With some help from some of the in-house Perl folks, we quickly solved this and the Perl reports really made the application shine. We did a code review and then it was off to meet with the big bosses. With our combined team of an in-house business analyst, an in-house software designer, and the Stout JEE developer, we met with the management team for this project. The meeting went well and they have begun to move forward with a full deployment of the application.

Buzzwords

JEE, WebSphere, Oracle, EJB 2.0, Project Rescue

Java Server Faces Consulting

Technical Environment

Java EE 5/6, Linux, Windows, JBoss, Glassfish, Oracle, MySQL

Description

Our client began migrating its client/server applications to the Web. Because their core competency had been in thick client 2-tier applications, the team determined they were in need of outside assistance to deliver the ideal strategic and tactical IT solution to meet their budget and client business needs. They agreed that bringing in an expert in state of the art Web technologies would significantly ease the transition of the software—and at the same time facilitate current team members’ adaptation.

The solution involved designing and developing a dynamic data driven Web application which enabled a rich client environment by leveraging JSF (Java Server Faces) and Seam. In addition to application development, an improved continuous integration environment was put in place including updated revision control systems, unit and integration testing architecture, automated continuous build tools, and monitoring.

At the end of the contract our consultant was converted to a direct-hire position.

Buzzwords

Java Server Faces (JSF), Spring, Hibernate, AJAX, Seam, Icefaces, Oracle

Printed Circuit Board (PCB) CAD Application

Technical Environment

Java, Java2D/Java3D graphics, SQL, Swing

Description

This project involved developing a printed circuit board (PCB) CAD application that was deployed on both Windows desktops and Linux-based circuit inspection systems. Full product-lifecycle development was provided starting from a small set of high-level requirements, developing a flexible and robust software architecture, implementing, testing and documenting the solution, and deploying the product to end users. The CAD application:

  • Parses several PCB CAD formats
  • Precisely renders multiple 2-D PCB layers
  • Allows user to interactively edit and manipulate PCB models
  • Specifies inspection criteria for numerous properties
  • And produces CAM output formats

The application is capable of automatically identifying regions of interest such as solder paste deposit regions, fiducials, and PCB dimensions. The inspection criteria specified by the user are then used by laser inspection systems to validate PCB assembly.

Buzzwords

Java, Java2D Graphics, Java3D Graphics, multi-threading, SQL, Swing, JUnit, CAD, Printed Circuit Board

Real Time Control System

Technical Environment

Linux, Windows, Java, C++

Description

A highly distributed system which will expand to support numerous features, thereby creating a single platform for future product releases.

The User Interface application is built in Java to enable the UI to run on Windows or Linux. Uses Swing with many custom controls to achieve a unique and highly polished look. To separate concerns and enable code reuse, much of the business logic is implemented by a middle layer written in C++. The Java UI communicates with the middle layer using JSON over HTTP sockets.

Buzzwords

Cross-platform, Java, JSON, C++, Custom Controls

Service Department Management System

Technical Environment

SQL Server 2008, Java 1.6, JBoss 5, EJB3, Linux

Description

Our client originally developed a Service Department Management System in the late 1990s. The system had been mothballed until early 2010.

Initial goals of the project included migration of the original database from Oracle to SQL Server and migration of the app server from WebSphere to JBoss. The app server migration also included migration of EJB2 to EJB3.

The technology migrations, coupled with the introduction of Maven for dependency management and build automation, provided the necessary foundation for rapidly extending and evolving the application to support the expectations and demands of modern Web applications.

Architectural refactoring plans include the following:

  • Introduce Hibernate/JPA to improve code quality and simplify development and maintenance.
  • Migrate business rules in the view and database to the EJB service layer to enhance scalability.
  • Introduce a Web Services framework, such as CXF or Axis, to generate client stubs for access to back end systems.
  • Incorporate a JSF based UI framework such as Seam or Spring WebFlow to enable Web 2.0 features, streamline UI code and sharply reduce the amount of handcrafted JavaScript.

Buzzwords

Java, JBoss, SQL Server, Web Services, SOA, Hibernate, JPA, EJB, Eclipse, Seam, CXF, Spring, Maven

Not finding what you're looking for here? Send us a message and tell us how we can help: