In the past few years, we’ve been bombarded with new technologies for AS/400 applications. The ubiquity of TCP/IP and the Internet have opened up the possibilities for advanced business applications. But which of these technologies do we use? Many vendors provide answers to that question—particularly, Microsoft and IBM. Microsoft, however, pushes its own operating systems, while IBM supports technologies that allow a mix of operating systems, as is explained in IBM’s “Application Framework for E-business” at www.software.ibm.com/ebusiness.
IBM’s Application Framework for E-business groups technologies into six areas: network infrastructure, application server software, Web application programming environment, systems management, development tools, and e-business application services. I’ll cover the first three of these groups because they deal with the design and development of e-commerce applications. Each area is broken down into services, the protocols that deliver those services, and the industry-standard APIs to access those protocols. Of course, IBM wants to make it easy for you to deploy e-commerce applications by supplying you with plenty of e-commerce software. But the framework’s strength is that it allows you to select software from any vendor that writes to the APIs supported by IBM’s application framework; that software can then be deployed on most platforms and operating systems.
The network infrastructure of IBM’s Application Framework for E-business includes services for network access, file and directory access, security, and printing. The standard protocols for networking are TCP/IP and the Lightweight Directory Access Protocol (LDAP). The standard API for LDAP is Java Naming and Directory Interface (JNDI). The security service protocols that IBM endorses are Secure Sockets Layer (SSL), IP Security (IPSec), Common Data Security Architecture (CDSA), and X.509v3 certificates. The IBM- suggested APIs for these security protocols are Java Secured Sockets Layer (JSSL) and Java Cryptography Extension (JCE). The print service protocols are Internet Printer Protocol (IPP) and Line Printer Requester/Line Printer Daemon (LPR/LPD). The endorsed print APIs are Java’s java.2d package and Java Network Printing API Initiative (JNPAPI).
The services of the application server software technologies include mail, groupware, data, transactions, message queuing, and workflow. The supporting protocols vary from Simple Mail Transfer Protocol (SMTP) and Post Office Protocol (POP3) to ODBC, Internet Inter- ORB Protocol (IIOP), and Common Object Request Broker Architecture (CORBA). The APIs for these protocols are all Java-based: Java Notes API, Java Database Connectivity (JDBC), SQL for Java (SQL-J), Enterprise JavaBeans (EJB), Java Transaction Services (JTS), and Java Message Service (JMS). Java Notes API, an object-oriented interface into Lotus Notes databases, ships with Notes and is used to integrate Notes data with other applications. JDBC, Java’s version of ODBC, is essentially an SQL interface. SQL-J is optimized JDBC where SQL statements are precompiled for speed. EJB, a standard framework for distributed object computing, enables developers to create advanced Internet applications. JTS is a standard interface for transaction processing. JMS is a standard interface for message-based communication, such as with AS/400 data queues and other Message Oriented Middleware (MOM).
Web Application Programming Environment
IBM’s framework breaks down the Web application programming services into Web servers and browsers, software components, distributive software components, and scripting. The protocols supported are HTTP, HTML, Extensible Markup Language (XML), CORBA, IIOP, and ECMAScript. The APIs for Web server services are servlets (used to create dynamic HTML content) and server-side includes (used for the dynamic inclusion of HTML content). The APIs for Web browers are applets and Document Object Model (DOM) Level 1. Applets are Java applications that are dynamically served to browsers. DOM is an interface to markup languages such as HTML and XML.
The framework divides components into two services: component model and business component model. The component model refers to GUI building blocks, and the business component model refers to encapsulated access to business entities. The Java GUI component model that IBM endorses is JavaBeans, and the business entity component model is EJB. IBM also endorses Remote Method Invocation (RMI).
Charting a Course
See a trend? Is Java the standard language for e-business applications? IBM seems to think it is. You can avoid Java by using such IBM software as Domino, Net.Commerce, or Net.Data, but if you want to buy third-party e-business software or develop your own, IBM recommends the aforementioned Java technologies. You can also avoid Java by buying from Microsoft. Microsoft strategies are powerful, but they constrain you to hosting technologies from a Microsoft operating system. For another Internet application road map, follow yesterday’s technologies: Common Gateway Interface (CGI) and legacy languages such as RPG.
You must decide which road map to follow, but in today’s competitive market, any decision will be a good one. Remember the Zen saying: “A journey of a thousand miles must begin with a single step.” The first step of any journey is to buy a map.