Archive for June, 2007

Web Services Feature Pack eGA

It’s a happy, sunny afternoon in the few meters around me (I’m ignoring the rain flooding the rest of the country) because today output of the project I’ve been focussed on for the last 12 months was published. (or in IBM terminology it achieved ‘electronicGeneralAvailability’).

The Web Services Feature Pack for WebSphere 6.1 includes new support for a bunch of web services standards, enabling new levels of reliability, security, asynchronicity and consumability for WebSphere users (and those trying to interoperate with them).

It’s been a really interesting project, including lots of distributed working, open source activities, interoperability testing, and some long days, but at the end of it I’m happy that we’ve managed to combine new web services standards and existing WebSphere ‘value-add’ technologies to produce something pretty compelling. I hope our customers agree :-)

JSR 311 is making progress…

… and I’m happy. I shared some concerns when it was announced that the JCP was unlikely to come up with an appropriate spec. Sun have just released a (very) early access version of the RI, and having taken a look at the Javadoc, it meets my main criteria: small, simple, and not tied to the servlet spec. I have a couple of questions about verbosity (defaulting really) which I’ll dig in to over the next <however long it takes to find the spare time>, but thus far it’s looking good - both the design and the participation model. Well done Marc, it looks like you’ll prove the cynic in me wrong.

Update - Some quick thoughts:
MultivaluedMap - Seems like something I’ll use outside of ‘rest programming’.

@DefaultValue - Seems to only work when the value it’s defaulting==null. Therefore doesn’t work with URIParams which seem to default to “”. Odd.

WS-SubversiveAddressing

William Vambenepe published his XMLFrag header proposal earlier this week and it immediately caught my eye. This was in part because of the idea of a ‘WS-SubversiveAddressing’ specification (WS-Addressing has been a lot of my day job at IBM for coming up on 2 years), and in part because apparently that title came from a colleague and I’ve been trying to work out who it was.

I’ve been back and forth on the proposal and I think there’s something with potential in there. After some thought it began to make some sense when I started to think of the XMLFrag header as a ContentType header for WS-Transfer (the W3C TAG apparently had a problem with WS-Transfer because it lacks feature compared to HTTP, but I digress). It lets the client describe to the server the representation it would like returned. That, for WS-Transfer at least, makes sense to me. Whether it’s a good idea for any other SOAP Web Service is less clear, but on the balance I suspect it might be useful.

Where I agree less it with the usefulness of embedding the header in an EPR. The use of it as an equivalent of ContentType means that it’s describing an attribute of the client, not the endpoint, which means it’s really not information which should be in the EPR. On top of that, it’s not entirely clear to me how whoever creates the EPR knows what subset of information the client wants. In general, if you’re a client using an EPR as a [destination] you got it from somewhere else, and how would that elsewhere know what you, as a client wants? Finally, an EPR represents and endpoint which probably has multiple operation associated with it, and the XMLFrag probably doesn’t make sense for more that one of those operations so makes an EPR of limited use.

So I don’t think the EPR related part is of much use, and has some conceptual problems, however I am a realist. The WS-Addressing spec allows anyone to use ReferenceParameters to generate SOAP Headers and people will use that flexibility to put anything in there, advisable or not. This flexibility was a source of much disagreement in the WS-A Working Group before I joined, and I think we still need time to tell if it was the right call.

So, the XMLFrag header looks to me to be potentially useful, and the EPR related bits not so much.

Subversive? Not to me.

Next Page »


About

I’m David Illsley, I work in Web Services development at IBM Hursley, which involves work on the Apache WS Project, where I am a committer and PMC member. When not working with technology, I spend a lot of time on the backstage aspects of theatre, and a sadly decreasing amount of time reading.

a

Disclaimer

The postings on this site solely reflect the personal views of the author and do not necessarily represent the views, positions, strategies or opinions of IBM or IBM management.