How to add web interface to c++ project - c++

I have an application built on C++ code and deployed on UNIX machine. I have one VB front end interface for this code which is communicating using CORBA (ORBIX).
Now I need to add new web interface to this existing application. How can I do this without changing much of the existing application and code.

Related

Having RESTful service in RCP application

We have an existing eclipse RCP application that works as a standalone product. At a high level, this product is used to configure a image specification using its UI and we can export a sample Image based on these configuration.
Now we are developing another web application that has several modules and one module of it is to develop something that our eclipse RCP application does.
Just to provide a QUICK integration of the RCP application for demo purpose, I plan to run the RCP application separately in the server machine and expose its static functionality as a RESTful webservice. So the module shall make a RESTful call to the RCP application.
Now just to begin with I tried to embed a jetty server for hosting the REST service during the start of RCP application like below
But the thing is after the Jetty server is started I am not able to access the TestWebService using the path i configured. So I am confused if this is the right approach to have a RESTful service inside a RCP application. Please note that iam able to hit the server with http://localhost:1002, but not the service.
Following is the console log when i hit on http://localhost:1002/hello/test:
It's a really weird architecture you're experimenting with.
I mean to write an RCP-application which listens on a port and offers REST services on it; this could lead to further obstacles.
Instead I would seperate it into two software artifacts: an RCP-app and a web-application (.war).
You could extract a business-logic jar (It can be an OSGi plug-in if necessary) contaning your image manipulation logic.
Then include this plug-in/.jar as a dependency in the webapp and offer out it's functionalities thru a Web-container (Tomcat, GlassFish, etc.)
So your other (third) application will connect to the Web-services offered by this .war file.
opt.1) If you need a single running instance (because of database or other shared resource) then your RCP-app will have to use this REST service too.
opt.2) If not then simple compile the .jar/plug-in containing the business-logic into your RCP-app.

Develop web service with using MFC (without .net framework)

Can I develop a web service in VC++ with MFC and without using of .net framework?
I wrote several classes in VC++ and used CRecordSet, CString, CArray and some of the other MFC classes. I want to use my classes in a new project (web service). Then I cann't change all classes to use standard library.
I think , I should write web service in VC++ , without .Net framework (Unmanaged code). Is it correct? Is a simple Sample of web service in VC++ by Unmanaged code?
No there is no simple way to create a web service with unmanaged code only. The easiest way would be to just write a web service using C#.
Than just use a C++/CLI wrapper to access your MFC code.
This isn't a real problem.
Your MFC code should be capable run inside a standard DLL. There should be no UI core at all in it. And remember that a Web Service has no state!

Building Web app with existing cpp core code

I have an Android/iPhone apps that share the same cpp core engine.
I want to use the same cpp core engine in the web app in some way.
I wonder what are my options? What is the best approach?
If you want to re-use the existing C++ code, then depending on your platform you can write a CGI (Common Gateway Interface) extension for your favourite web-server.
If your platform is Windows, you can also write an ISAPI extension DLL in C++ and access your core library from there.

Host a c++ desktop application on a webpage

I am having a desktop application which having a UI interface made in Qt linked with a library which is doing all the calculation stuff. Values from UI is taken and pass to the API's in the DLL to get the output which is shown on Screen.
Now i want to do the same thing by transferring my application UI to a web page so that people can access the tool from anywhere without any installation process.
I want to retain my c++ DLL code so i don't have to do a lot of work. I am thinking of just converting this DLL to a C++ server by any communication Process(Sockets). I want to host this application on my company's website. (We have to make the website also so we are open to any set of tools).
I want to know what will be the best set of tools to do this stuff. Also there will be lot of data exchange between the webpage and server so the wholething should be optimized also. I goggled a bit and find stuff like silverlight and ASP.NET, But i am still not very clear which option will be more suitable.
I am a c++ programmer with no web application development experience. I am open to learn any new technology.
Thanks
Why not use Qt on the web directly? There are several projects like this one: http://qtwui.sourceforge.net/
There is a netscape plugin that will host a QT application and an ActiveX control wrapper on the QT website. You could use one of those to wrap your application. Note that this approach would require the user (or their administrator) to download and install the plugin.
An alternative approach might be to run your application through a remote desktop such as XVNC, NX or an RDP based layer. IIRC browser based remote desktop clients are available for most such protocols.
A few options:
pick a messaging/queue implementation (like http://www.zeromq.org/) and provide a service
implement a Windows Web Service if you want to be more enterprise friendly: http://msdn.microsoft.com/en-us/magazine/ee335693.aspx
I would not expose the implementation on the internet. Enough to have a simple buffer overflow and the machine can be taken over quickly. Adding a layer between the app and the web provides an easy way to validate input, access, stats ...
You should be able to use your DLL from an wt or cppcms application. Then you do not have to learn something new and can just use C++.
The way I'm currently doing this is with Boost.Python + django

Framework for both: web & standalone application

Dear everyone, I am just curious, is it possible to create standalone GUI application which further can be easily migrated to the web? Or, even better, will be able to work in two modes locally and remotely through web browser. Since the main application logic is already written on C++ I read a little about Qt Quick. As I understood it is somehow possible to mix web application and standalone one, but I haven't found direct example illustrating the case I am interested in. Any ideas?
Depends on what your application does. If it is heavy UI bound and not calculation intense you will not get very far with Qt. There are a few toolkits for Java like GWT which help you to program an AJAX app like you would program a normal desktop GUI - but i don't know any C++ framework doing the same.
For a non heavy UI bound application i would convert the UI to HTML5 and just deploy the webserver infrastructure with your application and a self written Browser based on QT. With this it is trivial to switch between local and remote apps.
For a heavy UI bound application, use GWT.
If you write your back in terms of services, then your stand-alone and web front ends can both use them. That lets you have multiple user interfaces without affecting the processing. Easy to add mobile, too.