Upgrading from Sonic ESB 7.0.2 to 7.6.1

Posted by nweddle on 06-Feb-2010 16:16

We will be upgrading soon and I would like ot know if anyone out there has already done this. WIll all of my ESB Artifacts(Custom Java Services, ESB Processes, FileDrop, etc) continue to function in the new release? Any lessons learned would be greatly appreciated.

Thanks!

Nathan

All Replies

Posted by Bill Wood on 07-Feb-2010 07:24

First, I'd recommend going to 7.6.2 as this is the current 7.6.x service pack, and there is no reason to not get all the patch roll-ups.

Generally everything should work.  You should check the release notes, especially for Sonic 7.5.x as the 7.0.x->7.5.x had some corner cases of note.

(see javascript:; )

Among the common issues are:

  • Sonic went from Saxon 6 to Saxon 8 as the XSLT and XPath engine.  Saxon 8 was more 'standard' and if you used many user-defined functions (Java extensions), those need to be redefined (for example, xsl:script is dropped, and you need to use saxon:script)
    • This also affects CBR and XML Transformation services where you use JavaScript functions (in partifcular, Saxon 8 turns only org.w3c.Nodes, and not Saxon NodeInfo objects)
  • A common issue for people is going to Java 5 (or 6... which was certified on ESB 7.6.2).  If you want to use Java 5 capabilities you might have to watch your java code for JDK 1.4.2 limitations.
    • Sonic MQ/ESB upgraded the Axis stack used, and the newer Axis stack fixed 'defects' in web service interoperability.  As such, older services that 'happened to work' even though they were invalid (from a purist WSDL/SOAP standpoint) have been known to have issues.
    • Web Service Addressing Headers are added by default by Sonic ESB when you call out to external services.  As per the Web Service spec, these are all 'optional' and the server should ignore it, but some older services/servers object to these.  (You will want to use the Web Service Invocation advanced parameter ("Suppress WS-Addressing Headers") to get around this if it is an issue.
  • Actional Management Server integration changed over this period -- You probably were not using int in 7.0.2, but if you used it at all, you may need to upgrade your Actional and also some of the Network views will change (albeit for the better).
  • File Services (so File Pickup and Dropoff) were changed in sonic 7.6.  I would carefully look at those changes.  One change in particular was a package renaming -- the release notes talk about this, but if you are acutally upgrading all contaienrs to 7.6.2 (and not having a mixed environment), then this will not be an issue.
  • Web Services -- if you are calling out to some very old legacy services, you might see issues with formatting/headers of the request and response.  There are two things that come to mind:
    • Sonic upgraded the version of Axis which fixed many defects in Web Service interoperability.  However, the Apache Axis changes also tightened up the interpretation of many Web service standards.  Some older servers somethings don't like these changes in the format of the SOAP.  I've seen a few cases where an old service just 'happened' to work with the older Axis, and the newer one treaked something (perfectly legal wrt WSDL/SOAP), but it caused an issue.
    • Web Service Addressing (WS-A):  Sonic does include all the Web Service Addressing headers.  These are optional and a modern web server will treat them as such, but some older bespoke services or older web servers seem to object to these headers.  If so, in the ESBP web service step, you may need the Advance Property to Suppress WS-Addressing Headers.
  • There are newer Progress DataDirect Drivers in 7.6.x.  These support a wider range of databases -- I don't recall any issues with compatibility here.

Well, those are the only ones I can think of, off hand.  Others will have many other comments.

Posted by nweddle on 10-Feb-2010 15:56

Thanks for the response William. Sounds like I should be ok. I was a little concerend that I would have to re-write alot of my custom services.

I think we have 7.6.1, but I will make sure we get 7.6.2.

I'll post my experiences to this thread once the upgrade is complete.

Thanks!

Nathan

Posted by Bill Wood on 27-Feb-2010 08:37

nweddle wrote:

...

I think we have 7.6.1, but I will make sure we get 7.6.2.

...

For Sonic, and generally for Progress products, the service pack (7.6sp1 and 7.6.sp2) are the latest patch roll-up on top of 7.6.   Getting the latest is Service Pack is what you want, because if you have (the extremely rare instance of a ) defect and want it patched, then you'll get all the changes from the latest service pack anyway.

Personally, I would definitely do any Workbench instance on 7.6.2, even if you are deploying on 7.6.1.  (QA integration environment should match the runtime.)

This thread is closed