How to debug IBM i Program called from Mule

In the previous post we wrapped an IBM i business logic program into an easy to consume API with Mulesoft Anypoint platform and IBM i Connector. Took just under 15 minutes to build and works like a charm at the first try. Right… in real life there are quite a few things that could go wrong with remote program call. Most commonly the issues are caused by the incorrect parameter definitions, where parameter mode, data type or length or sequence mismatch cause the program to bomb.  The connector logs the exception and the trace, however in some cases it’s really useful to take a look at what’s going on during program execution. In this article, contributed by Vivek Gupta, we show how to debug IBM i program called from Mule API. Vivek is one of very few people in the whole world (and most of them are on our team!) who develops both Mulesoft and IBM i components for the same project.

Continue reading

How to Build an IBM i (AS400) API in 15 Minutes

One of the biggest IT challenges is the growing IT delivery gap and the ever increasing pace of business changes. This is especially true for established companies saddled with a mix of older applications. In order to efficiently connect these systems to other business components at scale, the application business logic and data must be be packaged as easy-to-consume reusable assets.

Due to the monolithic nature, most legacy applications span multiple business domains. As a result, the number of required integrations is typically high. When we consider the complexity of integrating with legacy systems, the shortage of specialized skills, and tight budgets, it’s easy to see why unlocking ERP data and logic is a constant concern for IT leaders.

Technically, this problem boils down to the question: how fast can you build an API that calls the backend business logic, and how much of that work depends on the legacy team? In this how-to guide, I’ll show you how to use the latest version of MuleSoft’s Anypoint Connector for IBM i (AS400) to accelerate wrapping business logic program into a REST API without any IBM i tools or development required. Once the IBM i (AS400) API is developed, it can be plugged into Anypoint Platform for added security, governance, and operational insight.

Continue reading

How to Run Mule on IBM i

For companies running their ERPs and Line of business applications on IBM i or mainframe, ability to rapidly connect the applications to ever increasing number of cloud and third party services is critical for business success. IBM i (AS400, iSeries) is a modern, powerful and secure platform optimized for running complex and diverse workloads. The recent versions of the system have several integration options available out of the box, including Integrated Web Services, Apache HTTP server, XMLSERVICES, as well as a host of available Node.js, PHP, and Java based options. And we all know that having a choice always always beats the alternative, right? In this article I present one more option and show how to run Mule on IBM i.

Continue reading

Join Infoview and Mulesoft webinar on Legacy modernization and APIs

mememe-cafeFrom Mainframe to Microservices: Leveraging APIs to Accelerate Legacy Modernization

It’s a well-known fact that business requirements and underlying software systems change at different speeds. Over time, most legacy systems become misaligned. Business and IT have to compensate with workarounds, often at a price of IT agility and increased process overhead. Legacy Modernization is a low-risk approach that enables a continuous realignment of the applications with business outcomes, while preserving the investments into intellectual property accumulated over the years. The key recipes are reuse, self-service, governance and security.

I would like to invite you to watch the recording of our latest webinar:  From Mainframe to Microservices where we showcase how APIs can power modernization initiatives in your organization. Mike O’Meara, Dmitriy Kuznetsov, together with Matt Serna at Mulesoft, discussed how an API-led strategy and Anypoint platform help accelerate Legacy Modernization initiatives. Dmitriy demonstrated typical integration use cases for the IBM i platform using Anypoint, AS/400 connector and Web Transaction Framework.

The webinar was held on Tuesday February 7, 2017 at 8 AM PST / 11 AM EST.

Consume APIs from IBM i with Mule

Modern enterprise architectures shift from all-encompassing ERPs to a network of smaller components that address specific business capabilities and communicate via common integration channels such as APIs. In some cases migrating to new system or best of breed may work. For most companies, however, the complete replacement is a risky and expensive proposition. Most successful modernization initiatives use a hybrid approach. Core line of business ERP systems are revitalized while some non-differentiating components that run industry standard processes may be replaced with purpose built applications or services.

The ERP components typically communicate with each other via shared database, resulting in a complex web of bi-directional real time integrations. When migrating a part of such system, these implicit inter-process communications must now be brought to light. The success of the project often depends on the speed of implementing these use cases. Comprehensive integration platforms such as Mulesoft Anypoint help delivering integrations at scale.

In this post I will show how to implement a real time external API call from IBM i (AS400) application using Mulesoft Anypoint, AS/400 connector, and Web Transaction Framework.

Continue reading

IBM i Business Logic API with Mule


Unlocking IBM i business logic and data is a priority for many companies. There is a number of IBM i (AS400, iSeries) tools and technologies that can be used to expose existing back-end programs as APIs. In this post we will use Mulesoft Anypoint integration platform and Infoview Web Transaction Framework to create a RESTful API that calls RPG program. This is a continuation of IBM i (AS400, iSeries) integration with Mulesoft Anypoint series. Previous articles can be found here: 

IBM i integration use cases
Building IBM i Data API with Mule

In the previous post we created Mule API that retrieves IBM i business data directly from DB2 for i database. The approach works great for simple data structures and normalized models. In most legacy applications, however, the stored data must first be processed through a complex business logic, which is typically a part of the existing back-end system, for example RPG program. API implementation must execute the business logic programs and handle the request / response data mapping. 

Continue reading

Building IBM i Data API with Mulesoft Anypoint


The common IBM i (AS400, iSeries) use case is to share the application data with other systems. In this article I will show how easy it is to build IBM i Data API with Mulesoft Anypoint. We will define our RAML API first then add the code to pull data directly from DB2 database using standard Database connector and IBM i database driver. Depending on complexity and design of IBM i application, the persistent data must be transformed through complex business rules first before it can be used by consuming applications. In this case, API implementation must execute IBM i programs that implement such business logic – we will do it in the follow up post.

It may appear at first that creating API adds more work and operational overhead compared to point to point integrations. Based on our experience, however, building out API layers is one of the most efficient ways to promote the reuse and secure, govern and monitor the access to application data and logic. Relatively small upfront investment results in greatly improved delivery speed, especially as the number of interfaces grows.

Continue reading

IBM i Integration Use Cases



Google “Digital Transformation” and you’ll get a lot of diagrams, white papers and dire predictions for companies not fully embracing it. The common theme is business must innovate at ever increasing speed. The limitations of the traditional IT delivery model make it difficult to evolve the systems at this pace. The recipe is to let business teams rapidly deliver their own projects, by reusing core business data and logic packaged as APIs. Modern low code development tools further democratize the delivery of new UI and process layers. The result is a network of applications that address specific business capabilities, evolve rapidly and independent of other components, and communicate through common integration fabric.

It’s a great model for startups that can get up and running in no time with modern cloud-based applications such as Salesforce, Netsuite, Workday, ServiceNow (extra shot of readily available capital never hurts either). Most modern SaaS applications have been built from the ground up around core APIs, and can be easily plugged into an integration platform. By contrast, established companies are saddled with a number of applications that have been developed over time with limited or no pre-built APIs or other out of the box integration methods.

In this post I discuss typical IBM i integration use cases and summarize the technology options for plugging into application network. As we all know, for any given IT problem there is always at least a half dozen tools and methods, and often many more.  Below I list the tools our team used or evaluated. Don’t see your tool or technique of choice listed here? I appreciate if you send it to me!

Continue reading

Traits of Modern IBM i Application

I’ve read somewhere a long time ago that the secret to success is to always start visualizing it in a great many details before thinking about how to achieve it. Otherwise we risk losing sight of the end goal, and waste time and resources fighting windmills. Sure, we’ll still get somewhere, and with some practice can even convince others that this is exactly the result we’ve planned for all along. How does it apply to IBM i modernization initiatives? Before diving into discussions about modernize vs migrate, RPG or SQL, screen scrapers vs RPG Open Access vs JavaScript, DDS or DDL etc, let’s pause for a moment and think about what would the modern IBM i application look like if it were built now, with all the knowledge accumulated over the years of maintaining and enhancing it. This would be our golden standard, very helpful when deciding on the best architecture or technology choices.

Continue reading