ADS BY GOOGLE

The worldwide Java community deserves an A+ in wealth creation, says Sun's executive vice president of software, Jonathan Schwartz.
The e-commerce Web site that I work on has seen several incarnations of its search feature. We started with plain vanilla SQL using 'like' clauses, but this didn't perform well and left a lot to be desired in language features such as stemming (e.g., 'paint' = 'painter' = 'painting') a...
In Part 1 (JDJ, Vol. 7, issue 6) we looked at the Java class as a type. Although it's easy to think of the class name of our Java class as its type, the interfaces it implements and the superclasses it extends can also be viewed as its types.
Inheritance and polymorphism are two of the most fundamental concepts in the object-oriented design world. They are used extensively in all Java applications, except J2EE apps using EJBs. Oh sure, developers implement various bean, remote, and home interfaces but often that's it. No si...
The following mantra was first stated about two decades ago in Jon Bentley's 'Programming Pearls' column ­ defer optimization and get your code working first. This wisdom has been amplified by numerous writers on object-oriented design, coding, thinking, and more. The reigning philosop...
As everyone working in the IT business is aware, the technology we use to develop our applications is constantly changing. Keeping abreast of the latest trends and practices could be a full-time job for developers, leaving no time for productive work.
What gets most people excited about Web services is that it provides a vision of a future where disparate applications are hooked together in innovative yet undiscovered ways to solve the next generation of IT problems.
Sir Clive Sinclair had a dream: everyone should own a computer. In the early '80s, this was quite an ambitious, almost foolhardy thing to say, given that the cost of computing machinery was well beyond the grasp of individuals. Despite the hurdles, Sinclair Research Ltd. produced o...
Apache Cocoon is one of the most interesting, innovative, and powerful platforms for dynamic content generation, though not as well known as the others. A subproject of the Apache XML project, Cocoon is one of the lesser-known offerings from the folks at the all-open-source Apache Soft...
Instant messaging has become very popular in recent years, earning it a deserved spot with the 'killer apps' - browsing and e-mail. Most of the Internet's killer apps have spawned a host of accessories to be used in conjunction with the app. Instant messaging is just starting this proc...
Whether you're a developer writing code, a manager guiding a project, or a customer giving requirements, you're familiar with the steps needed to successfully create a business application. Often referred to as the application-development life cycle, these steps typically involve gathe...
With J2SE Version 1.4, Java finally has a scalable I/O API. Not that the old API was an absolute failure (Java's tremendous success in the application server market refutes this), but some of the old API's properties led to drastic restrictions. The worst one was the blocking I/O.
By necessity, the operating system loads each VM into its own separate process slot. Consequently, each VM is forced to duplicate the other's initialization efforts and resource allocations. Specifically, each VM is required to load the JDK core classes into their respective heap space...
An enterprise platform has to provide ways to integrate with existing systems and applications. The fact is, most companies have applications and they don’t exist in isolation. New applications developed on the J2EE platform need to be integrated with other applications. Although...
Whether you’re an IT manager or a J2EE architect, if you’re interested in EIS connectivity you’ll be excited about the promises of JCA. What is JCA? What are its most appealing features? What are its shortcomings? Who are the vendors that support it? Are there any oth...
The technology to automatically generate a parser from this syntax specification has existed for around 20 years and is now mature enough to use in a product setting. A parser generator is a software program that accepts a syntax specification as input and generates a parser for that s...
Of course, TAPI still has a niche and is indeed embedded into many PC modems, but its track record against its original goals is, shall we say, modest. Some would say that it never saw the Internet coming. Of course, technology development is almost Darwinian in the way it casts off al...
The most basic way to capture these elements of interest is through application logs. Most Java-based production systems have them in some form, and most of them probably implement a custom API or use one of a handful of third-party packages that may or may not be cross-compatible. Out...
Mac OS X sports a new look, not just on the outside with its great look and feel but also on the inside. OS X is proudly built on top of a BSD Unix-based core foundation. An exciting aspect of the new operating system is that the latest version of the Java 2 platform (J2SE v1.3) is pre...
In an age of spin and counterspin, where no one calls a spade a spade if there's a chance of calling it an HDK instead (“hole development kit”), JDJ Industry Newsletter decided to canvass Internet technology experts of every stripe and ask them to anticipate the future R...
These paradigm changes have greatly increased my power to express program logic, such that my programs have gotten smaller, simpler, and much easier to understand, while supporting ever-increasing user capabilities. When I started programming, I worked with simple command-line interfac...
As part of building the infrastructures for a large J2EE project, we've spent the last few months designing and implementing a JDO-based O/R persistency framework. This framework provides our business logic programmers with the following features: an interface-based abstract view of th...
Design patterns exploded onto the scene when the seminal work, Design Patterns: Elements of Reusable Object-Oriented Software, was published in 1994. Since that time, numerous books on patterns have been written, conferences devoted solely to the patterns movement have emerged, and ent...
Java's new assertion mechanism, a welcome addition to the language now available in version 1.4, allows programmers to increase the robustness of their code by sprinkling it liberally with assert statements. The new assertion feature is easy to use, but any language feature, no matter ...
Single sign-on is becoming an important issue for corporations and Java developers. Corporations require applications to be secure. Users demand applications to be easy to use. Usually, the more secure an application is, the more difficult it is to use. For example, users are inundated...
The JavaBean Component Architecture provides a means to reuse software and, when combined with tool support, can dramatically increase developer productivity. This model has been realized primarily in graphical display applications with AWT and Java Swing components. Recent advance...
The Java development and runtime environment, with its 'write once, run anywhere' paradigm, brings enormous advantages to the embedded industry. Java code is highly reliable, easily ported, and includes features such as Internet readiness, security, and the ability to download code...
As Java technology has matured over the last few years so have we. We've learned that building complex enterprise applications that respond to change requires more than standardized APIs and virtual machines. Fortunately, we're now starting to see the widespread adoption of best pr...
In recent months, there have been significant writings and discussions surrounding J2EE frameworks and the key benefits one provides. I will not spend time reiterating those here. The bottom line is most professionals in this space agree on one thing: application-level reuse is a good ...
E-business sites are increasingly utilizing dynamic Web pages since they enable a much wider range of interaction than static HTML pages can provide. Dynamic page generation, also known as dynamic scripting, allows a Web site to generate pages at runtime, based on various parameters.
JDJ:For the benefit of our readers, could you briefly describe your role in BEA? Dietzen: I'm the chief technology officer for the BEA e-commerce server division. As CTO I look after the technical strategy for BEA's application server products, including the WebLogic Server, WebLogic ...
Dealing with dates and times is probably the most confusing aspect of Java for newbies. There are three reasons for this:
Have you ever needed to write a simple graphical user interface (GUI) but didn't have the right kind of layout manager? Do you hate to use a layout manager that takes you longer to understand than to make your GUI? If this is the case, you're probably not a big fan of the GridBagLayout...
What is a facade? In software engineering it's a design pattern. One possible definition of a facade is: 'A higher-level interface that provides a unified way of accessing a subsystem and as a result makes the subsystem easier to use.'
This article presents a design approach for multitier applications implemented with Enterprise JavaBeans. These entity EJBs inherit bulk set-and-get methods from a single parent class that takes advantage of the java.lang.reflect package. This approach reduces the number of network rou...
Remember the old axiom, Be careful what you ask for, you just might get it? That's what happened with the Abstract Windowing Toolkit (AWT), GUI controls, and threading. Developers were tired of always worrying about multithreaded access to GUI elements, so it sounded like a good idea t...
Telephone access to the Web is the latest craze sweeping the dot-com landscape. Voice portals with names like BeVocal, Quack.com, Tellme, and AudioPoint are promising all callers easy access to news, traffic reports, stock quotes, and driving directions. Some of these services may flas...
JavaSoft defined the Enterprise JavaBeans specification to give Java developers a foundation for building distributed business components. EJBs are Java components that implement business logic and follow a contract designated in the EJB specification. Enterprise JavaBeans live inside ...
During the past five years, application servers have emerged as a vital piece of the Web infrastructure. By providing a set of services common to all Web applications (e.g., state management, database connectivity) as well as a productive set of APIs or scripting languages, application...
Have you ever wondered why you should use interfaces instead of abstract classes, or vice versa? More specifically, when dealing with generalization, have you struggled with using one or the other? I'll shed some light on what can be a very confusing issue.


ADS BY GOOGLE