What is REST Web Service?

webserv_img

Ten or 15 years ago, when people talked about Web Services, you would immediately understand they were referring to SOAP. But these days, if someone says they have a Web Service interface, you need to follow up with the question: “What kind of Web Service – SOAP or REST? ” In fact,  REST is fast becoming the more visible application interface on the Internet.  This blog provides a quick overview of what REST is, and how it compares to SOAP.

Web Services

Firstly, like SOAP, REST is a Web Service, which by definition provides an Application-to-Application interface. So functionally, REST is similar to SOAP in that it enables a Client application to invoke an operation/method in a Server application . Furthermore, REST uses HTTP and HTTPS as the communication protocol, just as SOAP does. Their differences lie in what is underneath the cover.

webserver_flowchart Continue reading

SOAP/AM Server Utility – SDF Tool

If you are a SOAP/AM Server user, then you know how easy it is to create a web service using the SOAP/AM Control Panel in a matter of minutes.soapam_control_panel

SOAP/AM Server stores information about the web services in Service Definition Files (SDF) within its Virtual File System (VFS), which can be viewed easily from a web browser.  Once a service is created,the SDF file can be modified by moving it to the desktop. After the needed change is made to the SDF, it can then be saved back to the VFS.

This process is pretty straightforward and can be done very quickly when you need to work on one or two SDF’s occasionally. But there may be times when you need to make changes to a large number of SDF’s. One common example is when you want to move (promote) the service definitions from the QA environment to the Production environment. Let’s say: you have just finished testing the web services in QA, and now you need to move all the SDF’s to Production. Sometimes, you may even need to change some environmental parameters, such as: the Pathmon name in Production may be different from the one in QA. What is the best way to accomplish that?

To address that need,TIC Software has developed SDFTool, to simplify several of these operations.  SDFTool can be used to

  • View the contents of an SDF file.
  • Modify the pathmon information for a service.
  • Copy a service from one SOAP/AM Server instance to another, optionally changing the pathmon information.

sdftool1-resized-600

By using SDFTool, you can operate on a large number of SDF’s very quickly.

Here is a short video to demonstrate how SDFTool works.

In summary, SDFTool facilitates your job of moving SDF’s from one SOAP/AM Server environment to another. It is another nice feature that makes SOAP/AM the most user-friendly web service product on NonStop.

If you are interested in getting a copy of SDFTool, please send your request by emailing us to TIC Support

Please check for new blogs on this subject (you can subscribe) and check our website for webinar announcements.

Feedback please

Do you find this tutorial blog helpful? Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of this page) to get automatic email notification when a new blog is available.

dsrindividualDonald Wickham has 31 years experience with Nonstop
including 20 years for Tandem, Compaq and HP. He has been with TIC Software for 11 years in the role of Chief Architect.

SOAP/AM and XML Thunder: What’s the difference?

soapam_and_xmlthunder

More than once, users have asked me these two interesting questions about our software products SOAP/AM and XML Thunder. I hope that this blog will help answer these questions:

“Can I use SOAP/AM to do XML Parsing?”

SOAP/AM Server is used for exposing Pathway Server as Web Services. That means external application such as .NET or Java can interface to those Pathway Servers easily by invoking them as Web Services.

simplified_webservice

SOAP/AM provides all the key components of the web service architecture outlined below.

webservice_stack

In the web service architecture, the SOAP and web service request/responses are in XML format. SOAP/AM has a built-in XML parser specifically to handle them, converting them between XML and the Pathway internal format. This parser is not designed to be used externally, e.g. by a COBOL program that needs to handle XML documents.

So the answer is: No.  You don’t use SOAP/AM to parse XML documents. Instead, you would use XML Thunder for that purpose.

“Can I use XML Thunder for SOAP applications?”

XML Thunder facilitates application development for handling XML documents by automatically creating XML generation and parsing code that are callable. XML Thunder supports COBOL and C code for NonStop, Windows, Unisys and IBM.

xml_thunder_diagram

Yes, XML Thunder can generate and handle the SOAP XML message format. However…when people talk about “SOAP applications,” they actually mean “Web Services SOAP application”, not just the SOAP messages. If that is the case, XML Thunder does not have the required HTTP Transport that’s required for Web Services.

If you need Web Service support for NonStop, SOAP/AM is the right product for you.

Summary

  1. If you need web service on NonStop, SOAP/AM is the answer.
  2. If you want your NonStop COBOL or C programs to handle XML documents , XML Thunder can do all that for you.
  3. And if you are exchanging XML documents using Web Service, then you would want to use BOTH SOAP/AM and XML Thunder.

Feedback please

Do you find this tutorial blog helpful?  Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of this page) to get automatic email notification when a new blog is available.

Phil LyPhil Ly is the president and founder of TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.

 

A 10 Minute Guide on NonStop Interoperability: “Web Services versus ODBC”


If you are like a lot of NonStop users, chances are that you have other platforms (like .NET or Java) and databases (e.g. MS SQL Server or Oracle) that you would like your application to interact with. For the past two years, users have enjoyed attending our Tutorial Webinars to learn how our products SOAP/AM and Attunity Connect can open up the NonStop for better interoperability.

But occasionally, someone would ask: “What is difference between using Web Services and ODBC?” and “Which approach is better?” This 10-minute article is intended to provide an easy-to-understand answer to these questions.

For our discussion purpose here, let’s say that you have information on the NonStop that needs to be accessed by a .NET application from another department.

“What is the difference between using Web Service versus OBC?

The short answer to this question lies in YOUR answer to a simple question: Do you want that .NET application to access your Pathway Server or the database directly?

Accessing Pathway Server – Web Service

Most applications on the NonStop tend to be implemented in the form of a Pathway Server, which provides the business logic and the interface point to the Enscribe or NS SQL database. And if you want to make a Pathway Server “callable” by an external platform, e.g. .NET or Java, then Web Service is the most direct approach.

In my Web Service 101 for NonStop Users blog, I have discussed how the Web Service architecture is very similar to Pathway:

pathway-resized-600

down_arrow

soapam_server

By using a Web Service product like SOAP/AM, you can easily turn that Pathway Server into a Web Service that can be consumed by .NET, Java and other applications. Via point-and-click in SOAP/AM Control Panel, you can easily generate a WSDL, which can then be imported in Visual Studio.NET and voila! That .NET application can send request to your Pathway Server.

Accessing data directly – ODBC

In some cases, you may want to provide external clients the ability to access the data directly.

  • One common example is that you want to use Crystal Reports to generate reports on NonStop data.
  • Or maybe you want to enable users to load NonStop data into Excel directly.
  • A .NET application needs to add a transaction record on the NonStop.

In these cases, using a tool such as Attunity Connect will allow Enscribe file and NonStop SQL data to be accessed directly from external clients, including .NET, Java, mainframe and others.

attunit_connect_diagram

“Which approach is better?”

As you can see, these two approaches address two different needs. One is not intrinsically “better” than the other. You need to determine what you requirement is, and apply the solution that best addresses that need.

In fact, Web Services and ODBC are actually complementary solutions. That’s why many of our customers actually take advantage of both approaches and use SOAP/AM and Attunity Connect to expand their interoperability options in an enterprise environment.

Additional information

Feedback please

Do you find this tutorial blog helpful? Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of the home page) to get automatic email notification when a new blog is available.

Phil LyPhil Ly is the president and founder of TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.

 

What Every NonStop User Should Know About Web Service Security

security_lock-resized-600

Question
How can you tell who the NonStop users are in the audience when you are doing a product presentation?

Answer
They are the ones who always ask:

  1. Is it high-performance?
  2. Is it scalable?
  3. Is it secure?

In this article, we want to address the question of security as it relates to Web Service.

Security is always on NonStop users’ mind, as they are very protective of their applications and data on the platform. Historically, security was accomplished relatively easily because of the proprietary nature of the Guardian platform, such as the unique NonStop world of 6530 protocol, SCOBOL code, TAL, etc. Today this “security via obscurity” has given way to open architecture in order to promote easier inter-platform exchange. Nowadays, more and more NonStop Users are embracing the benefits of SOA and Web Services. At the same time, they still want to be assured that security measures are available to protect their data.

Here a quick review of some basic measures you can use to secure Web Service transactions:

Access Control – Make sure your WSDLs and Web Services can be accessed only by authorized sources.

  • Enforce the rule that only computers with a specific IP address or within a range of IP addresses can have access.
  • Require authentication to access the web service repository. That is, all requests must have a User ID and Password to get through. SOAP/AM supports both Basic and Digest Authentication.
  • Instead of allowing access to all web services by any authenticated user, consider segmenting them into different service groups. Allow each group of services to be accessible only with authorized access via authentication. This way, you can protect more sensitive web services (such as UPDATE payroll data) from unauthorized users. SOAP/AM provides the ability to enforce access to certain web services only by certain users.

Encryption -Protect the request and response data by encrypting the data in flight.

  • One of the benefits of the using SOAP is that HTTPS is available for encryption.
  • Both SSL and TLS for encryptions are included as standard in SOAP/AM.

Additional Security

  • The above should be augmented by additional higher-level security, such as on the application level.
  • For example, you may want to require a valid application level logon and password to determine whether the user is entitled to perform the requested function.

By adopting SOAP and Web Services, you will enable your programs to interoperate more easily with other platforms, while taking advantage of the many available built-in security features such as HTTP authentication and encryption via SSL/TLS.

Additional information

Feedback please

Do you find this tutorial blog helpful?  Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of this page) to get automatic email notification when a new blog is available.

Phil LyPhil Ly is the president and founder of TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.

 

Web Enabling with ASP.NET and SOAP/AM – Part 2 – Step by Step Example

In my previous article (Learning Tools), I showed you how to download the Web Developer Express tool that you can use for web enabling. In this article, I will guide you through the steps for creating a simple ASP.NET example that can be used to Web-enable your NonStop application.

1. Build the Web Form (5 minutes)

A Simple ASP.NET Application

For this tutorial, I am using a very simple “logon” example to demonstrate how an ASP.NET application can interface to a simple NonStop server. This is what the user interface looks like.
Simple ASP.NET page (1 minute video)

The rest of this article focuses on some of the steps needed to create such an ASP.NET application to communicate with a NonStop application using SOAP/AM.

Create an ASP.NET Web Application

First, you will need to start Visual Web Express and create a new project.

vwd_screen

After Visual Web Developer (VWD) is loaded:

  • Click on “New Project”
  • Click “ASP.NET Web Application”
    • Type in project name (I used “SimpleLogon” in this screen capture)

Create an ASP.NET Form

Form is the user interface part of ASP.NET. For our demo, we are going to build a very simple ASP.NET form that  captures the user input and calls the SOAP/AM Web Service on the NonStop.
Creating a simple ASP.NET Form (3 minute video)

2. Set up communication between the Web and Server (5 minutes)

Make sure you have the WSDL

As I pointed out in my  “SOA 101” PPT presentation, WSDL (Web Service Description Language) is the blueprint of how a published Web Service can be accessed. A WSDL is usually generated by the Web Service tool on the platform, and doesn’t require any manual coding.

If you use SOAP/AM Server on the NonStop platform, you can generate the WSDL very easily by using the SOAP/AM Control Panel. Here is a video clip of how a NonStop program can be exposed as a Web Service by using SOAP/AM to create a WSDL. How to create a WSDL using SOAP/AM (3 minute video)

Importing the WSDL

Now that you have the WSDL ready, you will be able to add that as a “reference” to your project. That means your application can now “call” that server simply by using that reference name. Your program doesn’t know or care where that server resides, because the Web Service Interface makes it all transparent, which is exactly the beauty of this technology.

There are two ways to add the WSDL as a reference to be used by your program: Web Reference or Service Reference. For most practical purposes, they serve the same function, but if you are really interested in their technical differences, check out this Microsoft forum discussion.

I suggest that you use Web Reference when communicating with the NonStop. Here is a short video of what is involved in adding this web reference to your .NET project.
How to add a web reference (2 minute video)

Using the Reference

Once the reference is created, your application can then use it to call the Web service and pass it the necessary input parameters (as required by the request IPM) and retrieve the reply parameters (as returned in the reply IPM).  Of course, before you do that, your application will need to go through the standard housekeeping activities common in all programs.

When the “Logon” button is clicked, the program branches to the “clicked” event routine to execute the code, which is explained below.

asp_net_code_01

Here are the steps performed by the code behind this ASP.NET form:

  • Create/declare local variables that map to the:
    • Request
    • Reply
    • Web Service
  • Populate the Request (input) parameters by:
    • getting them from the user input (as we do for the 3 input fields in our case); or
    • populating them programmatically (e.g., we could have hidden the request_code “101” field from the user)
  • Call the Web Service by:
    • invoking the METHOD (logon) in the Web service (logonClient)
    • including the input parameters (logonReq structure)
  • Extract the needed output from the returned reply (logonReply)
    • In our case, we are populating the screen fields (Reply Code and Reply Detail) with the returned parameters  (reply_code and status_msg)
    • Note that the reply actually has another returned parameter (status_code) that we did not use

Summary

So that’s it! That’s how simple it is for an ASP.NET or Windows .NET application to communicate to the NonStop using Web Service. Think about all the things that you DON’T have to do by using Web Service, like:

  • trying to debate what protocols to use (HTTP and SOAP are standard)
  • encryption (HTTPS is built-in)
  • worrying about data mapping issues (XML and WSDL take care of that)
  • creating code to handle protocol and error recovery (.NET generates all the necessary proxies for you)

And using SOAP/AM on the NonStop makes it so easy to “Web service-enable” your applications.

What’s next?

The best way to learn something is by doing. So I would suggest that you:

  • Get some hands-on experience with Visual Web Developer by using some simple samples and resources available on http://www.asp.net
  • Pick a simple Web Service (WSDL) on the Internet to work with, such as the weather services available from Cdyne
  • Contact TIC for an evaluation copy of SOAP/AM Server and see it how it works on your NonStop system!

Next blog topic: Web Application Security

In my next blog, I will discuss important security information that you need to know to prevent your Web application or your Web-enabled NonStop programs from being compromised by external or internal hackers.

Feedback please
Do you find this tutorial blog helpful?  Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of the home page) to get automatic email notification when a new blog is available.

Phil LyPhil Ly is the president and founder of TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.

 

Web Service and NonStop – Accessing from Microsoft Office – Overview

I have always been interested in understanding the different kinds of applications customers are developing on their NonStop systems. I believe that it is not enough to use technology for the sake of technology itself. The more important part is to understand how to use it to solve a REAL problem. In talking with many different NonStop users through the years, I have learned about a lot about their many different interesting applications.

Take for the example, in the area of SOA and Web Services.  We know how Web Services and SOAP enable applications on NonStop can communicate with applications on other platforms, such as .NET, Java, mainframe, etc.  And all that works very well.

But when I was talking to my friend Tom Schaper, who works for Cass Information Systems, Inc.  in St. Louis, MO, he showed me some really interesting things that he had been doing with Web Services that I haven’t seen before.

Tom has developed some practical programs based on Microsoft Office products working in conjunction with SOAP/AM Server on the NonStop, such as:

  • Populate Microsoft Excel spreadsheet with data from COBOL Pathway Server
  • Using Microsoft Word as a development editor tool to manage files on NonStop

The principle is to use Microsoft Office as a Web Service client to interface to Pathway servers on the NonStop.

soapam_server

So I asked Tom to share information about his projects in our recent Webinar last month, which was very well received. A lot of the have for additional information, and so we decided create this Blog series to cover some of the following topics in more detail:

  • Web Service 101 and SOAP/AM
  • Step-by-step tutorial on developing on the Excel code sample
  • Demo of the Word VBA code sample

We are going to start off with the “Web Service 101 and SOAP/AM”, which covers the basic concepts of Web Service and an overview of the SOAP/AM Server product for the NonStop.

To learn more about the basics of Web Services, click here.

Feedback please

Do you find this tutorial blog helpful? Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of this page) to get automatic email notification when a new blog is available.

Phil LyPhil Ly is the president and founder of TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.