Who is Dennis Sosnoski?
I'm a Java™ and XML developer working primarily with Web services and
Service Oriented Architecture (SOA) issues. Through my
company, I provide a range of training,
mentoring, and consulting services to clients around the world. I also participate
in a number of open source projects
(including JiBX XML data binding and
Apache Axis2 Web services) write
articles, and give
presentations for conferences and
organizations worldwide. You can see some of my upcoming and recent activities
highlighted below.
SOA/Axis2 Training Courses
The expanded Axis2 training course proved very
popular on my April and June trips to the United States, and I'm now scheduling
a round of Axis2 training courses in Australia for September, followed by
another set in the United States for October/November. If your organization
is planning projects based on Axis2 you'll find the training makes a huge
difference in developer productivity. My SOA training for
developers is also a very popular option, with several client companies
combining the SOA and Axis2 training sessions to provide developers with both
an understanding of SOA concepts and applied experience in implementing web
services intended for SOA usage. Naturally, I'm also able to provide in-depth
coverage of both JiBX and alternative data binding frameworks, either as part of
these classes or as independent events.
Contact me
to find out more about the course and to check scheduling for your
organization.
Want a sample? The latest article in my IBM® developerWorks® Java Web
Services series uses material taken directly from the Axis2 training class:
Axis2
Data Binding. Some sample code from the class is discussed in the article,
and available for download from the Resources section at the end. There's also
an Axis2
validation module from the class, which can be deployed and used on your own
Axis2 services.
Articles
My first InfoQ article has now been published:
"Code First" Web
Services Reconsidered. The whole idea of web services development starting
from real, live, code has taken quite a bashing over the last couple of years.
Unfortunately, most of that bashing is based on misconceptions and outdated
information (for a great example of the mis-information prevalent in this area,
see this sample from the Spring documentation: Why
Contract-First?; I won't go through a detailed analysis, but suffice it to
say that it only considers the idea of starting from code as equivalent to the
obsolete SOAP encoding technique, apparently without any idea of modern data
binding frameworks including .NET and JAXB 2.0, as well as JiBX). The InfoQ
article is an attempt to bring some balance to the discussion, using
Jibx2Wsdl
as an example of the potential benefits from a code-first approach.
Also, the third article in my IBM® developerWorks® Java Web Services
series was published in July:
Axis2
Data Binding. The second article was published in January:
Digging
into Axis2: AXIOM. Unfortunately the series continues to trickle out, with
some long publishing delays. I'll try to make sure the next article in the series
is out soon.
Projects
Last year I had the opportunity to develop an open source tool for the New
Zealand Ministry of Education, now available on Sourceforge as the
WS-Security Wrapper
project. This tool acts as an intermediary for linking simple XML-based
applications to web services using WS-Security. The particular implementation
used for the Ministry of Education project connects to services running the
non-standard WSE 2.0 .NET implementation of WS-Security, but it can easily be
modified to work with other platforms as well.
New on the JiBX and Axis2 front is the
Jibx2Wsdl
tool. Jibx2Wsdl takes the start-from-code approach to web service development to
a new level of applicability, with support for Java 5 enumerations and generic
collections, JavaDoc extraction for use in service definitions, and automatic
generation of JiBX bindings along with the matching schema and WSDL. It allows
you to expose existing code as web services using Axis2 and JiBX data binding,
while retaining the flexibility to modify your data model and adjust the JiBX
bindings so that the XML is unchanged. Alternatively, you can just generate a
WSDL and schema using Jibx2Wsdl and throw away the JiBX binding definitions,
using the generated WSDL and schema as the basis for a start-from-WSDL
approach.
Presentations
My most recent public presentation was a JiBX talk to the
Wellington Java Users Group on May 2,
2007. The slides from that presentation include a quick introduction to working
with JiBX data binding along with a more detailed look at Jibx2Wsdl (including
some details of the customization structure, not yet included in the Jibx2Wsdl
documentation). The slides and demonstration code from that event are available
on the WJUG web
site.
My next public presentations are a talk on "Web Services Interoperability"
for the Wellington WWISA group on September 2, followed by one on "Web Services
Performance" for the Melbourne Java Users Group on September 27.
The presentations I gave at the October, 2006 BeJUG
Enterprise
SOA Conference are now available for viewing:
SOA Lite
and
SOA sans SOAP.
My full day SOA Workshop that followed the conference is taking longer to get
online, but hopefully will be available soon. In the mean time, you can
see
the outline and slides in the JiBX Wiki.
About this site
The links in the column to the left lead to other pages within the "about me"
part of the site, while the links in the header row below the page title and
logo lead to other portions of the site.
|
Training
Interested in on-site training for SOA or Web services in Java? I provide
multiday training courses customized to your organization's needs. The training
can cover anything from the basics of working with XML in Java to preparing your
development team for the unique challenges of the transition to a SOA
development style. I also offer advanced classes in
specific technologies such as JiBX and JAXB 2.0 XML data binding, and Apache
Axis2 Web services. Check the training services section
of my company site, or
Email me to find out more.
Consulting
Need help with a specific project, or looking for an expert evaluation of your
future plans? I provide hourly consulting services for all kinds of projects
involving XML and Web services in Java, as well as general SOA concerns.
Performance issues are one of my special
strengths, with in-depth knowledge of the tradeoffs involved in different types
of XML processing and different specific frameworks. Check the
consulting services section of my company site, or
Email
me to find out more.
|