部署终端库Java应用程序

问题描述:

我正在从.net迁移到java,我尚未在java应用程序部署中使用。我用于部署作为独立应用程序的控制台基本应用程序,这是一种混合了tcp和udp服务器以及自定义协议的应用程序。部署终端库Java应用程序

我有一个要求,我的移植到java的.net应用程序必须部署在tomcat或玻璃鱼内(没有嵌入的东西)。我真的不知道我必须使用什么技术。我一直在寻找网络,但我的理解是,tomcat就像IIS,仅适用于Web应用程序,而玻璃鱼也是用于托管Web应用程序的应用程序服务器。我真的可以在tomcat或玻璃鱼内运行我的java控制台基础应用程序吗?有人能指出一个好的教程这种东西?谢谢!

编辑1 好吧,得到了我需要在tomcat/glassfish中部署我的应用程序的原因。我需要为我的应用程序提供一个Web UI,因为我当前正在使用控制台进行用户输入。现在我的应用程序不仅支持自定义的tcp/udp服务器,而且还支持用于管理的web功能。任何建议如何我可以实现这一点非常感谢,我只是不知道什么Java api /技术开始。

+0

一种方式使您在使用用户输入的控制台? – home

+0

目前我正在使用控制台进行用户输入,只是为了简单处理我的配置文件。但现在我的目标是能够在tomcat/glassfish中部署我的应用程序,那么我不妨使用web ui与我的应用程序进行通信。 – powerbox

+0

我已经研究了很多这个东西再次检查这个[文章] [1] [1]:http://*.com/questions/791986/background-thread-for-a-tomcat -servlet-app – powerbox

我不确定为什么你的要求说你需要使用servlet container运行一个应用程序。我不认为至少根据你的描述你的应用程序适合servlet容器编程模型。

只要你创建一个entry point,我想你可以通过命令行或者使用java or javaw启动应用程序,

,但如果你不能改变部署到tomcat的要求,您可以做到这一点使用servlet来启动应用程序,我将这些东西

读了

这里是你可以做使用servlet和部署此到tomcat

public class LaunchServlet extends HttpServlet 
    { 
    private static final long serialVersionUID = 4277145689972356257L; 
     //this method is run as tomcat starts up this servlet 
    public void init() throws ServletException 
    { 
     try 
     { 
      System.out.println("Launching my application..."); 
      new Thread(new ApplicationLauncher()).start(); 
      System.out.println("Launched my application successfully. "); 
     } 
     catch(Exception e) 
     { 
      throw new RuntimeException("Fail Fast: Unable to launch exception."); 
     } 
    } 

     class ApplicationLauncher implements Runnable 
     { 
     public void run() 
     { 
       //start you applicaton here 
     } 

     } 

    } 
+0

如果我要这样做,那么我需要管理我的应用程序主线程,因为我怀疑tomcat/glassfish知道它。 – powerbox

+0

得到了这个工作。谢谢。 – powerbox