【问题标题】:Java - Run Web Application with Swing GUIJava - 使用 Swing GUI 运行 Web 应用程序
【发布时间】:2018-03-28 01:47:13
【问题描述】:

我们在 Eclipse 中开发了一个带有 Swing GUI 的 Java Web 应用程序,所有这些都是同一个 Eclipse Web 应用程序项目的一部分。我们现在希望能够在 IDE 之外运行应用程序,例如作为 WAR 或 JAR 文件。 我们尝试使用 Tomcat 将应用程序部署为 WAR,并通过浏览器访问它,服务器正在运行,但 GUI 自然不会显示。 是否有某种方式(最好尽可能简单和快速)来运行 Web 应用程序,同时让 GUI 出现并能够与之交互,就像我们通过 Eclipse 所做的那样?

【问题讨论】:

标签: java eclipse swing tomcat war


【解决方案1】:

感谢大家的帮助。我已经简单地使用嵌入式 Tomcat 解决了这个问题(可以在此处找到使用它的示例(https://devcenter.heroku.com/articles/create-a-java-web-application-using-embedded-tomcat)。我没有将 Tomcat 作为服务单独运行,而是在 Swing 应用程序中以嵌入式形式运行它以监听 HTTP GET /POST 请求。

【讨论】:

  • 您能否将您的 Swing GUI 应用程序转换为基于 Web 的应用程序? .可以分享一下步骤吗?
  • 我不确定你的意思。如果您要问我是否有系统的方法将 Swing 应用程序转换为具有 Web 前端的基于 Web 的应用程序,那么没有。这是我(至少部分地)编写的早期服务器应用程序,其中实际的服务器和用于查看和操作其数据的 GUI 是同一可执行文件的一部分。这通常可能是个坏主意,但从技术上讲,这是使用第三方库实现的,该库允许在我们的可执行文件中运行 tomcat 服务。通过这种方式,我们的 GUI 代码可以直接与运行服务器的代码进行交互。
  • 好的,亚尼夫。我的要求是,我有一个swing桌面应用程序。有没有办法让多个用户通过浏览器访问这个桌面应用程序?
  • 你需要做的是将swing应用程序的内部逻辑隔离到一个不同的应用程序,一个能够处理HTTP请求的Web服务。如何做到这一点可以通过几种不同的方式实现,但据我所知,在 Java 中,最好的方式是使用 Spring 框架。至于前端,我在这方面不太熟练,但这取决于您可以并且需要投入多少时间。如果它是一个简单的不重要的应用程序,您可以创建一个简单的 HTML 页面并让它在后台向您的新服务发出 HTTP 请求。
  • 这里不建议将整个应用程序重写为 Web 应用程序。我需要转换一些应用程序虚拟化的方式。
猜你喜欢
  • 2014-11-22
  • 1970-01-01
  • 2011-08-06
  • 2017-03-11
  • 1970-01-01
  • 2015-07-23
  • 1970-01-01
  • 1970-01-01
  • 2016-01-18
相关资源
最近更新 更多