|
N-Cycles Newsletter
- Second Quarter 2002
The
following is an almost day by day account of some of
the sessions which I attended while at JavaOne. This
year's focus was on the developer and the buzz around
the vendor pavilion was definitely on developer tools.
Some personal favorite vendors included InetSoft, who
had a really interesting web reporting application,
ActiveCard who showed SmartCard technology along with
biometric authentication. I also really liked both
the Apple and Cobalt booths and was able to spend some
time playing with the hardware. I encourage anyone who
is thinking about using an advanced technology discussed
below in their next project to give me a call.
Chris
Bradley
Principal Consultant
Monday,
March 25th, 2002
Web
Services (WSDP)
Okay, this is a download must. This package for web
service development includes the JAXP (Java API for
XML Processing), JAX-RPC (Java API for XML Remote Procedure
Calls), JAXR (Java API for XML Registry), Tomcat, the
latest JSP specification, the latest Java Servlet implementation,
the WSDL (Web Services Definition Language), JSPSTL
(Java Server Pages Standard Tag Library), and Java Faces,
along with Ant and a sample UDDI registry server. While
this new paradigm is now based on HTTP/HTTPS protocols
and SOAP/XML, it is basically the same services as were
previously offered by CORBA and RMI.
JXTA (Juxtapose)
An interesting topic that I hadn't intended on attending,
but due to the fact that the topic I wanted to look
in on (Java Platform Performance) was full, I decided
to check out JXTA, which is based on peer to peer computing.
Unlike your basic Napster type software, this implementation
sits below the application layer and above the physical
and transport layers. It gives a whole new implementation
for distributed network computing. Simply put it can
be used to set up peer groups of computers which are
identified by JXTA id's, not network position (IP Address).
Each peer advertises it's resources and can provide
connectivity to other peers via the JXTA layer. While
I don't have a good idea of a use for this technology,
it does seem worth keeping an eye on, if for no other
reason that it's a pretty cool technology.
Tuesday,
March 26th , 2002
WSDP (Web Services Developer Pack)
A rehash of the developer pack for web services (EA2),
this talk looked through the web services pack again
with only slightly more detail than with the initial
overview. So that is what they call technical! Anyhow
they did explain a few more features of the kit, along
with giving the versions of the JSP, Servlet, and Tomcat
engines.
Java Filters
This session went over the use of Java Filters and looked
at how in the MVC that filters could replace the servlet.
Filters are basically servlets in themselves, which
reside inside the servlet container and based on the
information I saw today, have basically the same functionality
as servlets. The true beauty of the filter is that you
can chain filters above the application but below the
HTTP layer to perform user defined functionality on
the request/response prior to sending/receiving to/from
the application/client. Some obvious uses are with login
and security. Imagine using a filter to determine a
clients access prior to handing the request off to the
servlet. You could also easily implement an advanced
logging structure to make note of all incoming requests
and outgoing responses to file based on a filter. The
session showed how in the JSP MVC model, a single entry
point filter could easily be used as a central dispatcher
for all communications to the application. The other
interesting aspect of this session was the mention of
wrapper classes for the request and response. There
are 4 basic wrapper classes, the [Http]ServletRequestWrapper
and the [Http]ServletResponseWrapper. In order to fully
utilize the functionality of filters you simply wrap
the incoming request/response in one of the above wrappers
and implement the required functions. One important
aspect to wrapping the response, always ensure to reset
the content length prior to re-writing the data to the
actual response output stream, also always overload
both the writer and the OutputStream on the response
wrapper.
JAX-RPC (Java API for XML Remote Procedure Calls)
How cool is this. For those of you familiar with CORBA,
this is the poo, take a whiff. Just like your RMI and
CORBA, we have WSDL (Web Services Desription Language)
the IDL of web services. This description language can
be used with the WDSL helper applications to generate
the appropriate Java stubs for remote invocation. Everything
you could previously do in terms of IDL to Java IFC
and Java IFC to IDL, you can now apply to web services.
Note to self -> I spoke with a .NET developer who
noted to me that they are still having some problems
with compatibility issues with the WSDL between Microsoft
and Java (Imagine That!). With the help of the ANT building
tool, the WSDP has everything you need to build and
deploy web services.
Wednesday,
March 27th, 2002
Providing a portable representation of Objects in
XML
With all the hubbub of the JAXRPC and WSDP, this was
a side item which seemed almost unnecessary. It did
however provide some insight into how the WSDP provided
its mechanisms for converting Java Objects into XML
representations. Some good information for though were
the representation of Objects within Objects and multiple
references to same types.
Using Apache SOAP for web services
Ah redundancy kicks in. This discussion was so similar
to the introduction of the WSDP that it was scary. However
it did go over the tools that were provided by Apache
for handling the same sort of application requirements
as the WSDP. All in all a rehash of web services from
an Apache view (which by the way is the mainstay of
the Java view, seeing as how it is all derived from
Apache in the first place.)
Friday,
March 29th, 2002
Securing Web Services
This session covered issues with securing web services
for the enterprise. While the usual methodology of securing
web services was covered (SSL, basic authentication)
a more in depth look at securing the message over securing
the pipe was discussed. In addition, the session went
into some newer strategies for user/client authentication
in a more centralized and less application specific
manner. Similar to N-Cycles new approach to having a
central security schema to provide security information
to many applications, so to are methodologies like SAML
(Security Authentication Markup Language) dedicated
to a centralized, simple approach to centralizing security.
Interactive Streaming Media with JMF
Okay, this class doesn't really fall into any of our
categories of work, but it was interesting nonetheless.
Perhaps more important than the technology itself was
the idea that multiple modes of interactivity can and
in many cases should be pursued rather than the good
old fashioned way of one thing at a time. In multimedia
applications this makes great sense and with the JMF
frameworks, much of the headaches in dealing with the
underlying workings of RTP, RTSP and associated protocols
are handled for you. Another interesting note from this
session was the mention of an embeddable browser interface
for Java from Netcluesoft. This embeddable browser gives
the programmer callbacks from within the context of
the browser so that additional functionality within
an application which the browser is embedded can be
included.
|