LEIF Turns Page for Legacy to Java/.NET SOA

One C++ tools provider says the best to way help Java/.NET devs build SOA apps that use legacy assets is to make it easier for C++ devs to work with mid-tier projects. See how Rogue Wave Software's latest LEIF C++ framework will put legacy devs on the same page with Java/.NET projects -- tahnks to new automated support for XML, WSDLs, SOAP attachments, and MIME.

Tags: Web Services, Devs, Schema, WSDL, XML, Developers, Isaacson,

While the Java/.NET providers of web services technologies have dominated the SOA conversation, there are still hurdles these mid-tier devs face when looking to tie into backend systems. Java and .NET developers don't always know the best to to get to these [legacy] systems, and C++ developers will expose them when he and how they want to.

Rogue Wave Software, a unit of Quovadx, Inc. shipped its latest upgrade to its LEIF service-based framework for C++ devs, bringing brings automated support for XML, SOAP attachments, and even native MIME for a broad range of embedded documents. "Our goal is to make it easier for Java and .NET devs to get their hands on legacy assets that they need for their service, and we do that by making it easier for the C++ devs to tie in," Cory Isaacson, president of the Rogue Wave Software told Integration developer News.

LEIF 2.5's features include:
  • Direct access to XML elements in their original format;
  • Support for MIME attachments in SOAP messages; and
  • Support for XML Schema constructs. The result is better performance between C++ and Java/.NET tiers; deep support for multiple document types; and broadened schema support. Schema compatibility can be especially tricky when building cross-silo web services, xx said. "One of the things that gets very difficult is how much schema do you support. It can have an infinite ways to use it, and it can be used in different ways," Isaacson said.

    LEIF 2.5 also supports SOAP "wrapped-style" messages and improves code generation, removing the burden on developers to write or rewrite existing code. "The product takes schema types and automatically generates a sets of classes. Devs create a WSDL in XMLSpy or whatever [tool] they want, and provide that as input," Isaacson said. "The tool then takes the schema and generates a set of classes that match that [input], and then takes the many operations and services defined in the WSDL and creates methods in a C++ structure that will deal with all that input."

    Aside from technology upgrades, LEIF 2.5 also sports Best Practices for the bringing together of Java, .NET and C++ assets when building web services. Patterns for how devs should share WSDL, schema, data, documents among other aspects are included. "That's the key. You can define your schema and web service, and how you want it to look and when you crank that out you get a set of classes and you can map those classes to whatever data you have."

    Isaacson cited an example of how LEIF is used.

    "For instance, a .NET developer could generate the WSDL or schema that he wants, and simply give that WSDL to the C++ developer, who could implement it very quickly. Our tool consumes the WSDL that other tools generate," Isaacson said.

    "So, let's say you want to access the Amazon book price service. You would write a client that says I am going to pass you the name of the book and the price, quantity. Using a tool of their choice, any .NET/Java dev could generate the WSDL, give the WSDL to the lead C++ dev, who would check this into our tool. And, that simple action would create the skeleton and then the C++ dev creates the value," he added.

    The latest LEIF 2.5 upgrade is the most recent incarnation of Rogue Wave's vision that native legacy code assets must be allowed to play a more direct role in SOA projects.

    "Transforming all assets into XML and/or web services is not the only way to SOA-enable an enterprise," Isaacson told IDN. "A lot of the assets they want are not in Java or .NET, and even more aren't in web services or XML. In fact looking at it, 99% of the world is not in XML or web services, and won't be for a long time. So, we are taking the approach that SOA [services-oriented architecture] has to be much broader than just XML and web services."

    When we asked Isaacson just how much broader, we got an interesting answer. "SOA should allow developers, no matter what language they are in, to use, share and access essential software components. And, beyond LEIF 2.5, we have some major plans in this area."