Let’s say you are requested to make changes to a server-side service (using spray, or akka-http) so that it can connect as a client to some external HTTP-based service. The external HTTP service may accept a request containing data in valid XML format and, if successful, will return a response in valid XML format. To keep it simple, the external service doesn’t require XML in the request, but your service still needs to somehow parse the external service’s XML response, fish out some interesting information, and combine it with other information, perhaps sourced from a local file or database, and then send the combined response (formatted in JSON) back to a browser.
This talk will explain how we do this kind of processing in some of the applications at CCAD. We’ll show how we use our own XPath library to turn XML into Scala objects (unmarshalling), and then use standard Java XML library functions to turn the Scala objects back to XML again (marshalling). All this will be done in a completely functional way.
Born and raised in the Philadelphia area, and a graduate of Temple University, I have been reinventing myself as a data processing professional in this area for nearly 35 years, and have written software in nearly a dozen languages, from IBM System /370 mainframe assembler, to, most recently, Scala.
During my career, I’ve worked both in the public and private sectors, where I’ve assumed numerous roles. At times, I’ve worked as a software developer, IBM mainframe systems programmer, and Unix sysadmin. In the early 90s I traveled the world as an SE for a large software development house. By the turn of the millennium, I was writing imperative-style Java code for new “.com” companies.
Currently, I am working for Comcast, at CCAD, in Horsham, as a software developer, solving problems functionally using Scala.