Fri, Jul
4 New Articles

Using Mobile Devices to Access Your AS/400

Development Tools / Utilities
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times



The wireless Internet is here. In fact, you may already have the ability to use the wireless Internet today and not even know it. Many cellular phones and personal digital assistants (PDAs) already have the ability to connect to the Internet today, and major cell phone makers (including Nokia, Ericsson, Motorola and Palm) all have plans to add Internet access to their devices. Strategy Analytics has reported that 95 percent of all the handsets shipped in the United States and Western Europe will include Wireless Application Protocol (WAP) support in 2003, and, according to META Group, so-called pervasive devices (e.g., pagers, cell phones, and PDAs) will outnumber traditional PCs by 2003. More and more AS/400 customers conduct electronic commerce over the Internet. Your shop may not be doing it yet, but perhaps you’re wondering what’s involved in it. If you want to learn how to extend the reach of the AS/400 from electronic commerce to mobile commerce with practical examples, then read on.


The figures in this article demonstrate general access between your cell phone and your AS/400. I’ve also created some sample CGI programs that are written in ILE C as well as some written in RPG IV. Both samples are stored in an AS/400 save file. They can be downloaded from Midrange Computing’s Web site at www.midrangecomputing.com/mc. These objects and source demonstrate an actual data transaction between the AS/400 and the wireless device.


The samples shown in this article are real-time Web browsing applications based on WAP and the Handheld Device Transfer Protocol (HDTP). Wireless Markup Language (WML), defined in WAP, and handheld device markup language (HDML), defined in HDTP, will be covered, too. There are other standards, such as AvantGo (a “sync and go” application) and Palm Web Clipping technology (currently works only on Palm devices), but I won’t be covering those.



How It Works



The theory for the wireless Internet is quite simple: Think of the cell phone or PDA as a very small computer equipped with a Web browser. The wireless carrier could own the WAP gateway, which, in essence, is a bridge between the wireless network and the Internet. The AS/400 just serves the HTTP or Hypertext Transfer Protocol Secure (HTTPS) request. All you have to do is deliver the right content and follow the right



protocols. If you already serve HTML pages from your AS/400, chances are that you don’t need to buy extra software or hardware to deliver contents to pervasive devices.


Look at Figure 1. As you can see, there are three major components in the architecture: the mobile devices, the WAP gateway, and the HTTP Server. I’ll take a look at how to work with each component.



The Mobile Devices



The price for Web-enabled cell phones and PDAs has come down dramatically. You can buy a Web-enabled cellular phone for less than $100 now. These cell phones have a builtin HDML or WAP browser. For PDAs, you can buy a Palm VII with built-in wireless access or a Palm III or Palm V with a wireless modem. Palm does not have a built-in WAP browser. However, you can download a WAP browser for the Palm from AU-System (www.ausys.com) or The Wireless Edge (www.thewirelessedge.com).


There are many handheld simulators and phone simulators available for you to download. I found the simulator very useful for development, but you should make sure to test your applications on a real device before deploying them. There are some situations in which the application works on the simulator but not on the cell phone or PDA. You can download the phone simulator from Phone.com (www.phone.com). Note that you’ll need to download the entire UP.SDK development kit to get the phone simulator. The Phone.com phone simulator comes with a browser. For Palm devices, you have to download the Palm simulator from www.palm.com and then download the WAP browser for Palm. The examples provided in this article use the Palm simulator with the AU-System WAP browser and Phone.com’s phone simulator and browser.



The WAP Gateway



You can use the WAP gateway provided by Phone.com (for cell phone testing) or The Wireless Edge or AU-System (for Palm testing) for free. The major wireless carriers, including AT&T, Sprint, and Nextel, all have WAP gateways in production. You can also use these latter gateways to do testing as long as you subscribe to their services.



The HTTP Server



Serving an HDML or WML page is similar to serving HTML pages. You just need to load certain licensed programs on your AS/400 and configure your AS/400 HTTP Server properly. The licensed program you will need is the IBM HTTP Server for AS/400 (5769- DG1). If you want to secure your transaction, you will need two additional licensed programs: IBM Cryptographic Access Provider (5769-AC1, -AC2, or -AC3) and Digital Certificate Manager (5769-SS1 option 34). I’ll talk more about wireless security later on in this article.


Figure 2 shows a sample HTTP Server configuration you can use to try out the examples in this article. To use these examples, you’ll need to create a new HTTP Server configuration named WIRELESS, as well as a library named WIRELESS on your AS/400. In the HTTP configuration shown in Figure 2, statements 10 and 20 enable the HTTP GET and HTTP POST methods, respectively. Statement 30 passes the URL request for /wireless to the /home/wireless directory in the AS/400 Integrated File System (AS/400 IFS). Statement 40 executes the URL request for /cgi-bin with programs in the library
“WIRELESS.” Statements 50 through 80 define the proper content type for HDML, WML, BMP, and WBMP.


You may be wondering what the BMP and WBMP directive are used for. Some mobile devices can display images. The Phone.com browser, for example, supports the BMP format. Other WAP browsers for Palm devices support the WBMP format. Therefore, the BMP and WBMP formats are specified in the HTTP directive to allow for these devices.



You can also use the example code available for download from www.midrangecomputing.com/mc that contains a *SAVF of a library named WIRELESS with example code and data in it. If you choose this route, create a *SAVF named WIRELESS on your AS/400 and then, using a binary transfer, FTP the WIRELESS.SAVF you downloaded from the Web site to your AS/400. Now all you need to do is restore the library using the RSTLIB command and run the example code.



The Security Model



Now that you know the three main architecture components, I’ll cover the other features of the wireless Internet, the first being the security model. WAP 1.1 includes the Wireless Transport Layer Security (WTLS). WTLS does for the wireless Internet what Secure Sockets Layer (SSL) did for the Internet: It provides a standard means to secure the transaction. WTLS and the subscriber ID help the wireless carrier secure the transaction between the mobile devices and the WAP gateway.


To secure the transaction between the WAP gateway and the HTTP Server, you can use a virtual private network (VPN) or a private lease line. Or you can use firewalls, digital certificates, and HTTPS to secure the transaction over the Internet. Refer to the HTTP Server for AS/400 Webmaster’s Guide V4R4 for details. You must ensure that the digital certificate you purchased is trusted by the WAP gateway. Unlike Internet Explorer or Netscape Navigator, the WAP browser does not allow you to configure which certificate authority (CA) to trust. The WAP gateway acts like a proxy for the mobile devices and has a list of trusted certificate authorities. So be sure to buy a certificate from a well-trusted CA.



The Markup Language



HDML, a WML predecessor, was developed by Phone.com (formerly Unwired Planet) in 1996 and is currently the most widely used markup language in wireless Internet browsers in the United States and Canada. Several leading applications, including OracleMobile by Oracle, and Mobile Services for Domino by Lotus, and wireless carriers, including AT&T, Sprint, and Nextel, support HDML. In fact, both AT&T and Sprint recommend that application developers use HDML instead of WML to deploy their applications.


Just like HTML, HDML is a tagged markup language. Figure 3 shows the code for a very simple HDML page. To test this page, make sure you created the HTTP configuration named WIRELESS and have started it. Now save the code shown in Figure 3 as start.hdml, create your own logo (named logo.bmp), and FTP both to the /home/wireless directory on your AS/400. If you haven’t already created a directory named WIRELESS, you can easily do so by using the command CRTDIR DIR(‘/home/wireless’). Next, start the phone simulator you downloaded and open the URL http://YourAS400/wireless/start.hdml.


The biggest problem with HDML is that it’s not a standard. HDML is supported only by Phone.com’s micro-browser. The WAP Forum, founded by Phone.com, Nokia, Ericsson, and Motorola, published the WAP standard, which is the de facto standard that allows mobile devices (cell phones, PDAs, pagers, or auto PCs) to connect to the Internet using advanced telephony services. WML is the markup language used in WAP, and it’s quite similar to HDML. (One interesting factor about WML is that it is based on Extensible Markup Language [XML].)


Figure 4 shows the code to display a very simple WML page. To test this page, save it as startwml.wml, create your own logo (named logo.wbmp), and FTP it to the /home/wireless directory on your AS/400. Start the handheld simulator and open the URL http://YourAS400/wireless/startwml.wml.



Generating Dynamic Contents



To generate the dynamic contents, you can use a “translator” (e.g., Cocoon by The Apache Software Foundation) to translate the HTML page to HDML or WML page, or you can



generate the dynamic HDML/WML content directly from the AS/400. You can also use Common Gateway Interface (CGI), servlets, JavaServer Pages (JSPs), or other tools to generate the content.



Using Advanced Telephony Features



One of the great features in HDTP and WAP is that they can tightly integrate the voice call and data access. Both HDTP and WAP define an interface to interact with the voice call feature. This feature currently works only on cellular phones and not on PDAs. This feature allows you to embed the phone number in your HDML or WML pages. Users just push a button to initiate the phone call. Figure 5 (page 49) shows the HDML and WML examples for making a voice call.


While it seems easy to implement a voice call, there are pitfalls. This functionality depends on the carrier, the area, and the cell phone. Supplying the area code as part of the phone number might work in many areas but causes users to pay unnecessary long- distance charges in the home area. Some carriers (for example, AT&T) accept 10-digit- number calls (area code plus phone number) and will charge users appropriately based on the current location. I believe that, eventually, all carriers will have the same ability. For now, the best way to handle the voice call is to supply both the area code and the phone number without the leading 1. Usually the cell phone default setting handles the 10-digit- number with a list of choices (seven digits, 10 digits, or 11 digits) and allows the user to choose the proper number to call. If you supply the 11-digit number (1 plus area code plus phone number), the cell phone will usually just dial the number, which might cause a user to pay unnecessary long distance charges.



Push Technology



According to Pekka Salonoja, head of Nokia, the most relevant service for WAP is push technology. Both WAP and HDTP define a way for pushing information to mobile devices. WAP Push is different from the traditional paging system, which pushes both the alert title and the content to the device. With WAP Push, you actually push an alert title and a URL. When the alert arrives, the user will see only the title. The device will open and display the content from the embedded URL when the user tries to view the alert.


Phone.com provides a software development kit for WAP Push. Unfortunately the kit works only on the Windows or Sun Solaris platform, not the AS/400. You will have to either write your own WAP Push or run the development kit on Windows and establish a communication between the AS/400 and the Windows platform.


There are a few problems with WAP Push. First of all, although there are WAP browsers running on mobile devices and they might support WAP Push, users won’t actually receive the alert unless the palm device is on and the connection has been established. In other words, users have to check for the alerts manually, which sort of makes the concept of an alert pointless. Not all wireless carriers support the push technology. For example, Sprint PCS currently does not support Phone.com’s Push/Alert API. (Sprint is planning to support push sometime in 2000.) Even with carriers that support the push technology, you could still run into problems.


Usually, the Web-enabled phone has two modes: the voice mode and the data mode. But some cell phones or carriers did not tightly integrate the voice mode and the data mode, so users will not be able to receive alerts when they are on the voice mode, even though the phone is not in use. In other words, users have to switch the phone manually to “data mode” to check the alert. Unfortunately, the wireless carriers generally do not publish this “undocumented” feature. You really have to work with the carrier to find out the details.



A Bright Future




The wireless Internet has received considerable attention and promises a bright future. With the industry standard and the AS/400 support for the Internet, extending the reach of the AS/400 to the wireless Internet is much easier than many people might think.






• AS/400 Handheld/Wireless Web page: www.as400. ibm.com/developer/ebiz/handheld/index.html


• AT&T Data Developer Program Web page: www.attws.com/business/gov/explore/wireless_ip/ developers/index.shtml


• AU-System Web site: www.ausys.com


• HTTP Server for AS/400 Webmaster’s Guide V4R4 (GC41-5434, CD-ROM QB3AEO04)


• Nextel Developer Web site: developer.nextel.com


• Phone.com Developer Program Web site: developer.phone.com


• Sprint PCS Wireless Web Developer’s Program Web site: www.developer.sprintpcs.com


• The Wireless Edge Web site: www.virtuacom.com


• WAP Forum Web site: www.wapforum.org


What Are Your Wireless Development Choices?


In the accompanying article, you’ve learned just how easy it is to push data to a wireless device. What you may not be clear on is just what wireless development software choices are available to you. If you don’t want to reinvent the wheel every time and do all the development work yourself, you’re probably going to need to use one of the existing wireless development tools. For more information on these and other vendor’s products, visit the Online YellowPages at www.midrangecomputing.com/yellowpages.


ResQ/ME, or Mobile Express, from ResQNet.com (www.resqnet.com) offers its users a powerful and fully customizable drag-and-drop interface that allows developers the ability to rapidly reengineer host screens from the AS/400 and present the host data on wireless devices such as PalmPilots and Pocket PCs. No reengineering of host apps is required either. Users will discover that their personal digital assistant (PDA) now has access to any piece of AS/400 information you decide to give them. And don’t worry about an information bottleneck because there are too many people online. ResQNet ME allows up to 1000 simultaneous data connections. Other features include state-of-the-art security, real-time connectivity, and complete coverage of all wireless devices.


Jacada Inc. (www.jacada.com) offers AS/400 developers a wireless development tool set called Jacada for Palm. Using Jacada for Palm, developers can quickly develop wireless applications that will run on your Palm VII device. Using a rules-based development environment, Jacada for Palm lets developers create thin-HTML extensions to your AS/400 data that can run on the Palm VII. You can then extend your user’s access using standard HTML. Jacada for Palm applications deliver a persistent, secure, high-performance connection for your AS/400 and mainframe data from the Jacada for Palm server running on your AS/400, Windows NT, or mainframe. Jacada is also fully integrated with all Jacada products such as Jacada for Visual Basic, Jacada for HTML, and Jacada for Java.



WaveLink Corp. (www.wavelink.com) offers a variety of tools that are designed to meet all of your wireless needs. WaveLink Studio is a powerful development tool consisting of Active X libraries that support OLE- compliant languages such as Visual Basic, Visual C++, and Visual Delphi. That means you can leverage your existing toolset to take advantage of the WaveLink Studio methods and objects to build wireless applications that can access your PC server-based data. For Telnet and 5250 host emulation methods, you’ll want to check out the WaveLink ACTIVEBridge host plug-in. Using ACTIVEBridge, your wireless users can access their host data, such as that on the AS/400, with no redevelopment effort from your IT staff. In fact, ACTIVEBridge remaps 5250 screens for display on wireless devices on the fly. Of course, you also have the option of performing the screen mapping on your own for tighter integration. WaveLink TelnetCE is the client-side software that lets your AS/400 data run on your Windows CE devices. This integrated suite of tools combines to give you a powerful wireless development and client environment.


Advanced Business Link’s (www.advancedbusinesslink.com) Strategi middleware software is an AS/400 native package that rapidly turns your legacy green-screen applications into Wireless Markup Language (WML)-based or handheld device markup language (HDML)-based forms that can then be displayed on a variety of PDAs, such as the Sprint PCS digital phone. Strategi has an installation time of under 15 minutes on your AS/400. Building on the strengths of traditional AS/400 programmer’s skills in RPG, CL, Java, C, and even COBOL, Strategi allows your current staff to extend your legacy applications to the Web. In just a few days, using their current programming knowledge, your developers can take a traditional green-screen application and format it to fit the smaller PDA screen. Strategi has positioned itself to lead the market in WML-enabled applications.


— Shannon O’Donnell



Using_Mobile_Devices_to_Access_Your_AS-_40006-00.png 456x223



Figure 1: The wireless Internet architecture includes three components.




Using_Mobile_Devices_to_Access_Your_AS-_40007-00.png 406x251



Figure 2: To serve an HDML or WML page, you need to load and configure the http Server for AS/400.
























Call Support



















Call Support








Figure 3: HDML, like HTML, is a tagged markup language.


Figure 4: WML is similar to HDML and is based on XML.




Figure 5: The voice call feature of HDTP and WAP allows you to embed a cell phone in your HDML or WML pages.

































































































Support MC Press Online

$0.00 Raised:

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: