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 fast.
Traditional Java
programming was going to
take waaaay too long to
convert the internal
custom programs that had
been written in an old
4GL.
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 early in the
development life cycle.
In this article, we'll
look at a few examples of
specific uncommon1 or
unusual defects that can
happen in code and see
how different Java static
analysis tools detect
them.
2008 is going to be an
important year for Rich
Internet Applications.
Most organizations are
delivering or planning to
deliver Rich Internet
Applications; however, at
the same time, most IT
managers are facing a
dilemma: which Rich
Internet Application
technology and platform
to use? The number of
different frameworks and
libraries is too vast to
even consider evaluating
a fraction of them.
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 from it.
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
components needed for the
development of enterprise
mobile applications. Open
mobile IS is an open
source project (GNU LGPL
license) that aims to
provide all the necessary
tools, API and documents
enabling effective nomad
applications development.
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 persistence for
applications that are
deployed and optimized
using GigaSpaces' highly
scalable, self-managing
distributed solution.
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 rise of
the global network has
lowered barriers to
access so that educators
and students alike should
contribute to and share
better educational tools.
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 end.
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
consumer and embedded
devices, including smart
communicators, high-end
PDAs, and set-top boxes.
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
Salesforce.com in
providing turnkey first
and last mile integration
when configuring
PingFederate to deliver
Web SSO using SAML 1.x,
SAML 2.0 and
WS-Federation.
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 for
additional input and
output print streams and
formats.
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
offline boutiques. They
have successfully
accomplished this mission
through an innovative
community based fashion
website built around the
Elastic Path ecommerce
software platform.
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 Application
Clusters (RAC).
Presenting diagnostic
data from all
perspectives of a
multi-level RAC
environment node,
cluster, interconnect and
shared disks the new
product enables database
administrators to
proactively pinpoint and
resolve potential cluster
database performance
problems before they
impact end users.
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.
When embedded in an
application, the
MetaMatrix Query data
service operates as a
single JDBC driver that
facilitates access to
data from multiple,
distributed relational
databases, federating
data from these sources
and optimizing
distributed queries. By
using MetaMatrix Query,
Java developers can
reduce development and
maintenance time and
improve the performance
of their applications.
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 your
bank's Web site. These
portals usually display
different types of
information like News,
Weather, Stock Market
quotes, etc. Each of
these info pieces appears
on the screen
instantaneously even
though it's coming to the
portal from different
servers.
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 of the visit
counter is stored in the
session so multiple
visits to the page will
be counted (this includes
the page refreshes after
pressing the browser's
'Reload' button). If the
counter goes over five,
the counter gets cleared.
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 be
the perfect technology to
bring Microsoft into the
world of coexistence, and
I think this opportunity
got lost.'
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 like
an unbreakable Java
architecture.
For various reasons, an
application may install a
security manager. Usually
it does so to guard
against malicious
third-party code either
installed or dynamically
downloaded at runtime. If
the application uses RMI
APIs, it's even required
by a Java specification
that a security manager
be installed, otherwise
the classloader will not
download any classes from
remote locations.
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 sites spread over
various service lines,
geographies, and
organizational
boundaries. This presents
challenges ranging from
logistical and technical,
to creative, business,
and legal. This article
focuses on solving the
problem of ubiquitous
navigation across diverse
Webscapes.
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 change: the
underlying language may
change due to
improvements or
extensions and the
functionality provided by
the tool expands, driven
by user-requested
features and the need to
stay in front of the
competition. The specific
changes that will be made
are rarely known at the
outset, but change is
coming.
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 in mind.
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
logical improvements to
libraries, JVM
enhancements, and
performance upgrades.
Although this article
doesn't intend to take
trip down memory lane,
it's important to
understand that Java 5.0
brings a truly remarkable
and rich set of new tools
to our programming
landscape as compared to
other JDK releases.
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 because of
the powerful underlying
regular expressions
processing engine.
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
difficult to read? Do you
use a simple, hand-rolled
logging API, and fear
that it may not provide
the flexibility and power
that you need once your
applications are in
production?
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 article
explains how you can use
the new features to
prevent some silly
mistakes, as well as some
that are not so silly.
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 server is also a
breeze.
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 where he'll today be
presenting the new
features of the Java
language to the New York
Java Users Group.
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 sorting is
necessary, the
limitations of sorting on
a single field become
obvious.
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 to call Java
objects. However, the
coding is thorny; logic
that can be coded readily
in a few lines of Java
requires several times
more lines of C, thanks
to JNI's granular
programming model and
peculiar approaches to
exception handling and
garbage collection.
I took the advice of a
friend of mine and
steered clear of the
'normal' movie theaters
and went a little out of
the way to go to a DLP
movie theater. The
experience
There are 8,909 books
listed on Amazon.com with
the word 'Investing' in
the title; there are(!)
27,146 books with the
word investment in the
title. Without having lo
This book is an update of
an earlier version that
was written for SQL
Server 2000. It employs
the Murach approach of
dual pages that repeat
and enhance the concepts
Reviewers overuse the
phrase 'required
reading,' but no other
description fits the new
book 'Ajax Security'
(2007, Addison Wesley,
470p). This exhaustive
tome from B
In my many years of
programming, almost 20
years now, I have used
countless integrated
development environments
(IDEs). I have used
everything from a simple
text edi