TheServerSide Interoperability Blog correspondent George Lawton caught up with TheServerSide Interoperability Blog Blogger-in-Chief Ted Neward at JavaOne. Ted’s session was entitled Bridging the Gap: Using Java Technology and .NET Together in Harmony. We’ve posted some highlights from this session of turbo-charged kumbaya.
By George Lawton
At JavaOne last month, Ted Neward took a look at how .NET and Java can ‘play friendly.’ As in the past, Neward pointed to the possibilities in using .NET as a front entrance into Java capabilities. “Office is one of the most customizable platforms we have seen,” he said. “There are 27 ways to customize something within Office, and we can make Office a front end into the Java platform in some interesting ways.”
He provided an example of the venerable Pet Store sample application, built on the Spring framework, but using an Excel spreadsheet as an interface to access the online store application. In doing so, he showed how developer skills and systems capabilities on diverse platforms can be leveraged.
Said Neward walking through a scenario: “We might have item IDs and maybe we would like to unify what we do for people more accustomed to doing accounting and business things, and those people typically use Excel. People who think in numbers typically use this stuff.”
“We want to allow them to enter product IDs in here (Excel) and make sure they line up with the things they are interested in using,” he said by way of setting the stage.
He then discussed the uses of Excel Smart Tags, which can serve, for example, to take users to a Web page. Referring to a text editor window, Neward quipped, “This is Microsoft’s new Agile development environment known as Visual Notepad.”
The Smart Tag List is a part of the Office extensibility model. It can recognize predefined text in a Word or Excel document, and invoke a pull-down menu that can lead users, in this case, to a Web page.
“Using the Smart Tags, no programming is necessary.” Neward explained, “This is light-weight integration between these two platforms. I am not making use of any exotic technology,” he said in Newardian style.
He pointed JavaOne session attendees to a created term list that was the product from within the Spring JPetStore sample app: “They are recognizable elements that the JPetStore will recognize, and the terms have a corresponding action list, which is just a URL. This URL makes use of the actual text of [an item in Excel].” This will also work from within Word, he said.
It is thus possible to verify that, in Neward’s word, “a fluffy kitty listed in the spreadsheet is the item we wanted on the Web site.”
Through the use of a Smart Tag update page that is a simple XML file, he noted, it is possible to deal with name changes; to, in fact, point people to a JSP page.
Said Ted: “Office will compare this with the checkpoint value in the original smart tag. If this value is different, it will de-reference the other tag. The Office System will take this and replace the XML file sitting inside of the program files’ common file.”
“I have hard coded the terms list, but this can be a script block or servlet and that term list could be auto-generated from what is in the database,” he said. “This is not rocket science.”
Instead, Ted said, “This is a simple exercise in HTTP download and XML. What we have now is a potential useful integration with which you can view that platform with Office.”
This, developers can take Microsoft Outlook, “where many Office users live and use that to hook into a J2EE back end.
“If you have an ERP system on the J2EE platform, you can drop a COM plug into Outlook and use that to access out-of -process applications. You can talk to any ERP or CRM system and as far as users are concerned, everything is happening inside of Outlook.”
Neward’s view is that seemingly competing technologies can find useful roles, although this may require more than a few developers to ‘think outside the box.’
“The goal here,” said Neward, “is not to force people to “switch” but instead to leverage each technology’s advantages as they appear and as they are necessary.”