How to be able to embed a graphical application inside another - java

I'm looking for some ideas on the general architecture for creating a Windows application (I'm open to suggestions: Java, C++, C# and also for frameworks) in which I can show another application running inside of it. Very similar to the iframe concept, where a web page is rendered within the frame.
I think I would need to instal the framed application as part of a custom installer, or even assume it is preinstalled in the OS. The important part initially is to be able to framed a graphical application inside another.

Related

Screenshot Entire Environment from Browser

I have an internal web application and I want to be able to take a screenshot of the user's entire desktop environment through the app, not just the browser window. In my research, I've found that I could do this using a Java applet. However, Java applets are no longer supported in Chrome as of v45, and they tend to be slow and dated. I've explored the possibility of using flash or a browser extension, but it appears that I would only be able to capture the browser window through these means. I'd prefer not to use a native application, as the screen capture is to be a feature of the web app, so I'd like to keep them as tightly coupled as possible.
Specifically, are there any other methods that I am missing to achieve what I'd like to do? I've sort of resided myself to a java applet sans chrome support or a separate native app, but I've had trouble finding literature online about my use case (assumably due to the security concerns).

JFrame on website

I have an application which is composed of many JFrame objects (using Java and Netbeans). The 'main' frame has 4 buttons and each button opens another frame. Now my problem is that I want the whole application to be run on the web as a website.
I was considering 3 possible scenarios (from my research):
Use Java Web Start
Convert JFrame to JApplet
Create from scratch a Java web application
I was hoping that maybe someone can give me some help, and guidelines of which option I should opt for.
The quickest option is to modify your application to run as an applet (yes, this would involve making a JApplet from your JFrame). However, you should realize that the Java Applet is considered an outdated technology. Most mobile devices won't run them and even some popular desktop browsers won't (Mac Chrome). What's more, Oracle now requires all applets to be signed in order to run with default security settings. This means purchasing a yearly (~$200) signing certificate.
Java Web Start is not really fundamentally different from applets and will suffer the same issues as above.
Think again about your choice of technology. A Java web application (e.g., Spring MVC) or a JavaScript application (e.g., GWT, JQuery) are better choices.
For deploying Java desktop apps., the best option is usually to install the app. using Java Web Start. JWS works on Windows, OS X & Unix/Linux.
Applet deployment has always been difficult, with weird bugs in particular versions of specific JREs in conjunction with particular browsers. My 'favorite' bug happened in a version of Firefox that triggered an applet to reload when the user scrolled up in the web page.
See also The Use of Multiple JFrames, Good/Bad Practice?

java to access webcam and pen tablet (standalone app vs applet)

i need to develop in java an application that accesses local resources, mainly a webcam, and possibly a wacom bamboo pen tablet. It should take pictures and notes and then post them to a web server.
The ways i can think of are:
use applets
use some kind of standalone app created via JavaFx (or swing or similar)
Which way would you go about it? Are applets considered a viable/secure way to achieve this?
Thanks
I would go the standalone app route. I always turn Java off in my browsers because I can never remember which specific version has security bugs.
If you build it as a desktop app I think you could quite easily convert it to be an applet later on if you wanted.

Objective-C/Java interaction

I have some java code that I use on a windows machine that runs as a service and has a tray icon that I want to port to Mac OS X. From what I can tell there is no good way to make a menu bar icon using java, so I want to basically wrap my java code with objective-c so I can have a nice menu bar icon and still interact with the java code as I am able to when running the code on my windows box. Is there a good way to do this?
My java code makes web requests every so often so the main functionality I'm looking for is to start/stop the web client, as well as receive updates from the java code on the status of the web requests (more or less push notifications).
Thanks for your help everyone!
If all you're trying to do is get your application's icon displayed in the Dock & the Finder, you don't need to write an objective-C wrapper; all you need to do is bundle the Java code up in with the icons in an OS X "application bundle". See Apple's Java Deployment Guide
You might also want to look into the com.apple.eawt package (see questions/1319805/java-os-x-dock-menu), which provides some features to allow a Java app to appear more like a native OS X application to the user (for example, supporting drag-and-dropping a file to the application icon).

Java application on web

I've made an application with Java which is a game. I'm wondering if it is possible to put this game on html page or similiar in order to play it with a webbrowser. The GUI has been built with JFrame, JPanel etc etc.
The easiest way would be to use Applets:
An applet is a program written in the Java programming language that
can be included in an HTML page, much in the same way an image is
included in a page.
Yes indeed. Applet is the first choice.
Another option is "Java Network Launch Protocol" (JNLP) but note the games won't be embedded in the web page, it will be launched as it is a shortcut on you desktop.
You might be interested in
Swingweb (open source)
Ajaxswing (commercial)
Which should mean your clients won't need a jvm.
I disagree with the first two replies that suggest applets should be the first choice. I can only assume that neither poster has much experience at deploying applets to people coming from the World Wild Web. Applets are a PITA at the best of times.
Instead, focus on Java Web Start which can launch the existing JFrame based game from a link. It might require as little as creating a single launch file (JNLP) for the app. and linking to that.
As to embedding the game into a browser window, consider this. What exactly does the browser window wrapper do for the game? What does it add to the game? If the answer is 'nothing', then definitely go for JWS.

Categories