Webswing and webforJ: a modernization roadmap

If you're lucky enough to be writing a new web app from scratch, it's easy to see how webforJ could benefit you. webforJ simplifies your deployment and provides a UI framework of components that conforms to web standards and user expectations, all while you enjoy the familiar experience of coding in Java and integrating with the Java ecosystem. But what if you already have a Java desktop app, and you need to deploy it to the web? Do you have to rewrite the whole thing, or can you modernize your legacy Java code into a fully functional web app? Look no further, because webforJ has the answer: deploy your existing Java app to the web quickly with Webswing, and gradually modernize it into a true web app with webforJ.
Why web apps?
You already have a Java desktop app, so why change? Well, hosting your app on the web comes with a "host" of benefits. For one, users are able to access your app from any device with a browser, and opening it is as simple and familiar as clicking a link. Users also don't need to download any software or worry about version compatibility and upgrades. They don't even need to install Java! By making your app available on the web, you take care of all of that for them, streamlining their experience so they can focus on the things they care about. Accessing an app on the web is more than just a convenience; it's the experience that users expect, and it shows that you can meet their needs.
What is Webswing?
Webswing provides a quick, low-cost way to get your Java app online, whether it's written in Swing, JavaFX, SWT, NetBeans, or Oracle Forms.
Essentially, Webswing is a web server that hosts your desktop Java apps, making them available on the web without any code changes.
Instead of scrapping your codebase and starting from scratch, you can simply host it with Webswing and run it in a browser as-is.
Using Webswing to host your app gives you speed, simplicity, and stability. It gets your app online quickly, allowing your users to enjoy the benefits of a web app immediately, without waiting on lengthy development efforts. Most apps won't require any source code changes, making it a simple solution to implement. Additionally, you don't need to worry about problems caused by any UI changes, because your app will look and function exactly the same in the browser as on the desktop.
However, this is just the beginning. Your users and developers will appreciate all these benefits, but they will surely want more. So what's the next step?
Webswing + webforJ
Although Webswing is available as a standalone option, the story doesn't have to end there. The partnership of webforJ and Webswing provides a complete roadmap for Java app modernization, making web development in Java possible, no matter where you're starting from. So, to set yourself up for future success, use Webswing and webforJ together, and be a Java web developer! When you use Webswing with webforJ, in addition to bringing your app immediately to the web, you also crucially create a clear path forward for your future development.
Implementation
webforJ integrates with Webswing through the WebswingConnector component, which embeds a Webswing server in your webforJ app.
This component manages communication between your app and the Webswing server through commands and events, giving you the ability to both control and respond to the embedded app.
See the Webswing integration Communication page for technical details on how to coordinate between webforJ and Webswing.
Incremental modernization
Once you deploy your app with the WebswingConnector component in webforJ, you can start modernizing it incrementally, while maintaining full functionality.
See the modernization tutorial for more information on this process.
In short, it's easy to keep everything working while you convert portions of your app to webforJ components.
Every dialog or menu that you implement in webforJ will improve your users' experience and convey that your app is at home on the web.
Users will feel more comfortable, and you avoid the higher risk of all-or-nothing rewrites, with the assurance that your app is on its way to being fully modernized.
With Webswing and webforJ, you have no reason to stay locked into the desktop environment! Your app wants to join the rest of its peers in the browser, and you can bring it there today. Download Webswing, get started with webforJ, modernize your app, and set yourself up for success.
