How to deploy a CICS application in a web server - web-services

I have developed my first basic cics application which is an examination system. Now I want this to be available for everyone. I don't have any idea whether this is possible or not. Can anyone guide me or provide any links or books for deploying in a server. Thank you

If your application is in a CICS region, it is available to "everyone" who has access to that region and your transaction.
CICS is a web application server, among other things. Those applications can be written in Assembler, C, COBOL, Java, PHP, PL/I, or Rexx.
If your application uses 3270 for its user interface and you want to make it available via the web, you can use a feature of CICS Web Support specifically for that.

Related

How can I call a webservice from COBOL mainframe?

How can I call a webservice from a COBOL program? I have no idea how to do this, can any one help and define steps?
Any sample code will be more hellpful.
Thanks
CICS Transaction Server documentation is available here. Select your version and release of CICS.
Invoking a REST web service from CICS COBOL can be done via the WEB OPEN, WEB CONVERSE, and WEB CLOSE application programming interfaces. The APIs are documented in the Reference section.
Invoking a SOAP web service from CICS COBOL requires some setup work, often via the CICS Web Services Assistant provided with CICS (search on DFHWS2LS) however your shop may make use of IBM's CICS Explorer or there are third-party tools your shop may have decided to acquire for this purpose.
The capability to invoke REST and SOAP web services has existed since at least 2005 when CICS Transaction Server 3.1 was made generally available.
In either case, you are best served by talking to your CICS support staff about what is allowed in your shop and how they and your security staff want to proceed. As these capabilities have existed for quite some time now, most shops likely have some policies and procedures in place governing their use.

When to use standalone web service approach

I just started learning web services. In bottom up approach, I have found some examples without being deployed in any application server. I mean a standalone web service application.
Here is an example of such type.
I have also given a try and done a walk-through of deployable simple web service examples.
So far to my learning of web services, I got to know that firstly, bottom-up- approach is not recommended. Now, in bottom-up approach, this standalone web service. When is it applicable to follow standalone web service procedure?
Endpoint.publish();
I guess, this approach is provided just for beginners and not to follow as a real-time practice. Is my interpretation correct?
I would make my application as a standalone web service if it will have multiple clients like:
Web Client via a web browser
Mobile App Client
Desktop Client
Then I could build every one of them alone using whatever the technology I prefer, and make it consumes my standalone web service.
For example, You could imagine the guys behind Twitter started developing it by building their core system as web service, then they build an independent web interface application for it, then they built the Twitter Android and iPhone APP, and another one came and introduced a Twitter Desktop client like Tweetbot and TweetDeck ... etc

How to expose desktop application as a Secure Web Service?

The Window desktop application provides C++ API that gives an array of customer information such as name and address. I want to expose this as SOAP Web Service with Security so that authorized clients (from remote servers Linux/Java based through ESB) of this web service can get this information at any time they want in SOA implementation (Java based).
The desktop application does not have a standard database. It stores its data internally. Its basically old custom built CRM application that is installed on each agent's PC box. Each agent has its own list of customers.
What are the steps to achieve this task?
Do I need to run this as Windows service?
The short answer is, yes, you can expose data from a desktop application through a SOAP web service. It is easier to do with C# and .NET, but not impossible to do from C++. What steps you need to take will depend on which platform you are developing for.
Roughly -
Implement an endpoint that supports SSL where clients can connect to your desktop application (using sockets in C++ or HTTPListener using .NET).
Write code that can receive and dispatch SOAP requests.
Handle SOAP requests and return properly formatted SOAP responses.
Handle WSDL requests.
Implement a security mechanism (cookie based or otherwise).
Using .NET, most of this is in the platform code already, you just have to put the pieces together. With C++, you may find some third party libraries but essentially you'll be writing your own.
You only need to implement a windows service if you want the data to be available while a desktop user is not logged in and running your desktop application. The challenge here is that you'll have to make sure the windows service can access the same data the desktop application is using.
Another strategy would be to access the data from your desktop application using the C++ API and Interop and implement the web service as a standard out of the box asmx hosted on IIS.

Communication between Ruby on Rails 3 Web application and C++ Desktop application

According to my requirement I need to provide a communication between a Desktop application developed on C++(QT Framework) and Web application developing on Rails 3.
The requirement is, User can able to upload/download files from Desktop application to Rails application. These files I need to save in live database.
For this requirement, I'm planning to develop an API(Possibly Web Service). First of all is it possible to complete this requirement through Web Services using SOAP/WSDL/REST.
Please let me know the different ways to achieve this.
Thanks,
Kalyan
Rails provides a really nice way of developing an API with it's supported REST protocol. This way you can easy develop a web front end while essentially completing the API at the same time, this way your desktop application can communicate via the API.
As long as you keep your code DRY(Don't Repeat Yourself), your API can co-exist within your same web project. This way you don't have two separate code projects to maintain. This will help with consistency.

What are the differences between a web service and a Windows service?

What are the differences between a web service and a Windows service?
My experience has mostly been with Windows services, and I have never created a web service.
Do web services behave similarly to Windows services?
Can they have scheduling, run at certain times, etc.?
When you would use a web service in place of a Windows service, and vice versa?
They're about as different as two things can be.
A Windows service is an application that runs without a user being logged into the system, usually to process some data on the machine that needs no user intervention to work with.
A Web service is a website that, when contacted, returns XML (typically) in one of several standard formats for the service consumer to process.
One can't be substituted for the other. They are fundamentally different.
You are asking us to compare apples and oranges. I am posting definitions as well as links to further reading for you so you can see why these two things are exclusive and cannot be compared like you are trying to do.
Web service:
Web services are frequently just Internet application programming interfaces (API) that can be accessed over a network, such as the Internet, and executed on a remote system hosting the requested services
Windows service:
A Windows service is a long-running executable that performs specific functions and which is designed not to require user intervention.
A web service is an HTTP interface to a system. For example: the Twitter API or the Google Maps API are REST web services.
A Windows Service is a background process that runs without user interaction.
The two are not related.
Webservices are simply a way of exposing services for consumption. They are about interaction between components.
A windows service is an executable that runs for a long time on a machine to perform some task.
You wouldn't use one in place of the other - they perform two entirely different functions.
For (a simple) example (to highlight the difference), if you wanted a method to pass control messages to your service, you could expose a webservice as the protocol through which third parties would communicate with your service.
A web service is software system used for machine to machine communication over a network.
Here's the wiki for Web Service.
A windows service, in contract, is a service that runs on an local machine.
Here's the wiki for Windows Service.
They are independent technologies, one would not replace the other.
I don't think there is a very large difference, a web service runs in IIS or Apache, a windows service doesn't. You can call windows service methods by using remoting and you can create windows service with WCF. The methods of a windows service can return xml or json too.
IIS 6 doesn't support all the WCF possibilities so we have build WCF windows services (this is called self hosting).
Both a web service and a windows service are apps that run in the background. You can use WCF to build both kind of services.
web service was mostly used in application integration between systems.
windows service was mostly used in background tasks, scheduled tasks.
A windows service program can call web service methods.
web service program cannot call window service methods.
A Web Service is a dll hosted by a web server and run as a web application and can be spun up upon request.
A windows service is an exe hosted by the operating system and runs continuously waiting on a request.