Welcome!


Java applications have become steadily harder to understand and maintain in recent years. Object-oriented programming has proven an effective way to develop enterprise applications, but several recent trends are causing a sharp increase in code complexity. One is the increasingly commo...
This is the story of a Mac application developer (okay - it's about two of them) who set out on a quest to find an application development tool based on Java so his boss would let him develop on the Mac platform, which he loved. There was only one catch - he had to find a tool that was...
Any large Java source base can have insidious and subtle bugs. Every experienced Java programmer knows that finding and fixing these bugs can be difficult and costly. Fortunately, there are a large number of free open source Java tools available that can be used to find and fix defects...
JReport and Composite Software announced the companies have partnered to offer a new joint solution: JReport OnDemand Integration. The companies will co-market and co-sell the new reporting solution with out-of-the-box information integration capabilities.
One of the things that kept me and my team busy over the past couple of years was starting to support J2EE 1.4 in OptimalJ - a goal that we accomplished with the release of OptimalJ 4.2. Now that this job is complete, it's interesting to look back and ponder the experience and learn fr...
OpenMobile IS has won the Gold Award in the 'Company Management' category of the Free Software Awards 2006. OpenMobileIS is a Java Framework conceived to integrate mobile application developement business. Open Mobile IS Java framework aims to provide all the functionalities and compon...
GigaSpaces Technologies has integrated McObject's Perst open source, object-oriented all-Java embedded database for real-time data management in its massively scaleable distributed application technology. GigaSpaces embeds Perst in version 5.1 of its software, where Perst provides pers...
Sun Microsystems, challenged leaders to rethink traditional education models. On the Massachusetts Institute of Technology's (MIT) campus at a forum titled 'Open For Education,' introduced by Sun's Chairman of the Board of Directors Scott McNealy, the participants discussed how the ris...
Ajax(Asynchronous JavaScript and XML) means many things to many people. However, one thing is certain: To users it implies a higher level of functionality and an improved experience. To the developer, another certainty follows: More work. The only question is how much work and to what ...
Mentality of programmers depends on a programming language or tool they use. Should they even try to learn what's under the hood in a particular framework?
Sun Microsystems, Inc., maker of NetBeans Mobility Pack, announced the availability of the NetBeans Mobility Pack 5.0 for Connected Device Configuration. The Mobility Pack for CDC was designed to bring the many advantages of the Java platform to a broad range of network-connected cons...
SlickEdit Inc. announced the release of SlickEdit v11 for Windows, Linux, UNIX, and Mac OS X platforms. SlickEdit v11 introduces new core editing features that allow power programmers to be more productive by reducing busy-work and repetitive tasks.
Ping Identity announced the expansion of its PingFederate Integration Kit family to include both Windows Kerberos and Oracle/Oblix COREid. These new Integration Kits join Ping's existing family of adapters for Windows Login, Java and .NET applications, CA eTrust SiteMinder and Salesfor...
Xenos Group announced today the release of Xenos d2e Vision version 2.2 for transforming documents into electronic formats. Designed for rapid and seamless integration with other e-Business applications, this version includes enhancements in its handling of images, color and support fo...
Elastic Path Software announced today the successful launch of CoutureCandy, online retailer of designer apparel. CoutureCandy was developed to fill a growing demand for the freshest designer apparel online, without sacrificing the allure, character and personal service distinctive of ...
Elastic Path Software announced today the general availability of Elastic Path 4.1, an update of its Java-based ecommerce software, enabling marketers to engage in advanced search engine optimization (SEO) campaigns.
Quest Software announced today version 1.0 of Quest Spotlight on Oracle RAC, the newest extension of Quest Software's patented Spotlight product family. Spotlight on Oracle RAC is the first product available to provide a graphical view on the internal performance of Oracle Real Applic...
MetaMatrix announced today a new product, MetaMatrix Query, built for Java application developers. MetaMatrix Query is an embeddable Java distributed query component that streamlines development and maintenance of Java applications that use data from two or more relational databases. W...
In the second of a new series, Yakov Fain takes a look at the basics of object orientation and method overloading in Java.
Yakov Fain's popular online tutorial series continues. This lesson he discusses the basics of threads, including how to create them, how to get them to step aside, and how to stop them.
Yakov Fain, in Lesson 9 of his immensely popular online 'Java Basics' series for JDJ Industry Newsletter, talks about using threads for creating more advanced programs than those already discussed in Lesson 8. He analyzes the role they play in major Internet portals like Yahoo, CNN, or...
We'll build a servlet that will demo some new Java 5.0 features and do some basic tasks like creating a session to track user visits to multiple Web pages. This code can easily be extended to store a user ID in the session that will travel with her as the site is navigated. The value o...
The single thing that Adam Kolawa in 2004 (prophetically) said he'd like to change about Java's history is its separation from Microsoft. 'I think it is a shame that the technologies from both sides cannot be used together,' he says, in an exclusive interview with JDJ. 'Java seemed to ...
Developers using Java on clients or in small projects may not believe that there is a fundamental problem with Java's robustness. People working with huge applications and application servers written in Java know about the problem but may doubt that it's possible to build something lik...
In the five years that I have worked in Web solutions practices, a typical business problem has changed from 'we need a new Web site' to 'we need to regain control over our existing sites.' It's not uncommon for large corporations to have hundreds or even thousands of different Web sit...
Language tools such as compilers, interpreters, and code generators are a critical part of the software development landscape. Any software project will include several procured tools and very likely several in-house tools. Experience shows that the only guarantee with such tools is ch...
Application architects have heard about the increased importance of security, but in many cases they really don't know how to approach this issue. In this article, I'll share my experience and define a few basic steps and checkpoints for building application architecture with security ...
I'm really jazzed about Java 5.0! We've been treated over the years to incremental improvements in JVM performance. JDK 1.2 brought us the collections framework as well as Swing, the thread context class loader, and improvements in RMI. JDK 1.3 and 1.4 continued in the same vain with l...
Pattern matching using 'regular expressions' can help automate a number of text-processing operations like search and replace, input validation, text conversion, and filters. What otherwise requires significant amounts of code can be done in just a few lines with regular expressions be...
Are your Java programs littered with a multitude of randomly placed System.out.println statements and stack traces? When you add debugging messages to a class in a project, are the outputs of your messages interleaved among dozens of messages from other developers, making your messages...
This article describes how to host an ActiveX/.NET control in a Java application that is targeted for the Microsoft Windows Platform. I'll assume you know the fundamentals of Java, C++, JNI (Java Native Interface), Win32, COM (Component Object Model), and ATL (Active Template Library).
'Ease of Development' is one of the main focuses in J2SE 5. Accordingly, J2SE 5 introduces several new features designed to simplify the developer's life. If you use these new constructs, your code will become more compact and expressive, hence easier to understand and debug. This arti...
Enterprises for the first time have the ability to deploy wired and wireless security access on a per user basis, with Aruba Wireless Networks' grid security controllers.
Java's implementation of Remote Method Invocation (RMI) is easy to use and powerful. Java makes setting up an RMI server an almost trivial task because the JVM handles complex tasks such as networking and object serialization. Once running, connecting client applications to the RMI ser...
You know how to write good Java code and deployment to a server is no mystery either. But have you ever had to work in large development teams, maybe geographically dispersed (off-shoring...)? Ever had to address the pain of application software updates?
Have you looked at the certificate that your neighbor has so proudly displayed in his or her office? Have you ever wondered if getting certified in Java is worth the time and effort?
These days Calvin Austin is one of the busiest people in the Java world: J2SE 5.0, that was also known as the 'Tiger' project, is being officially released today! JDJ's Yakov Fain was able to catch Austin, spec lead for Java 5.0, right before the plane from San Francisco to New York wh...
Those familiar with the java.util.Comparator interface of the Java API realize its capabilities for sorting a collection of objects based on an attribute of the objects in the collection. This works well when there is only a single field in which sorting is required. When more complex ...
Though most Java developers think of the Java Native Interface (JNI) as a framework for developing native libraries that can be called from Java, relatively few know that JNI also supports communication in the reverse direction: it provides native programs written in C with the ability...
In the late 1990s, a GUI design pattern emerged for choosing multiple objects from long lists. In GUI Design Essentials, Susan Weinschenk, Pamela Jamar, and Sarah Yeo called this the Selection Summary pattern. In 'A Dual Listbox Selection Manager' by Steve Aube, it's also known as the ...