运行Java应用程序以在tomcat服务器上运行

运行Java应用程序以在tomcat服务器上运行,java,android,web-services,sockets,tomcat,Java,Android,Web Services,Sockets,Tomcat,我已经创建了一个套接字服务器应用程序,它将接受来自本地网络上其他计算机的客户端连接。这是一个从公共静态void main方法运行的应用程序。是一个非常标准的java应用程序 我还创建了一个在tomcat上运行的web服务,它也使用java。web服务将http post接受来自任何internet连接设备的请求 一旦web服务收到请求,我希望它通过套接字服务器发送指令,并向连接的客户端发送一些数据 我希望在web服务中运行socket server应用程序,这样web服务就可以访问socket服

我已经创建了一个套接字服务器应用程序,它将接受来自本地网络上其他计算机的客户端连接。这是一个从公共静态void main方法运行的应用程序。是一个非常标准的java应用程序

我还创建了一个在tomcat上运行的web服务,它也使用java。web服务将http post接受来自任何internet连接设备的请求

一旦web服务收到请求,我希望它通过套接字服务器发送指令,并向连接的客户端发送一些数据

我希望在web服务中运行socket server应用程序,这样web服务就可以访问socket服务器,而不必作为客户端连接


运行标准java应用程序以便tomcat服务器在启动时启动应用程序的最佳方式是什么?我应该将其作为servlet运行,还是有更好的方法让web服务访问套接字

应用程序在适当的应用程序服务器中打开自己的服务器套接字是毫无意义的,而且可能会适得其反

想想看:Tomcat可能正在8080端口上运行。您的应用程序假设将在端口9080上运行。您认为客户端需要连接到哪个端口才能使用您的服务?如果您回答正确,那么如果您的客户实际上根本不打算与Tomcat交互,您希望Tomcat为您提供什么服务/好处

运行自己的个人服务器不需要(完整的)应用服务器。您可以选择:

  • 它允许您在vanilla JSE中部署完整的JAX-WS Web服务,而不需要应用服务器

  • 使用来处理您的请求

  • 部署独立应用程序


  • 我可能没有正确地解释我自己。我有两个不同的客户。客户端A是一个Android设备,它调用REST Web服务(基于Jersey)。客户机B是在linux上运行的独立Java客户机,连接到套接字服务器应用程序。如果android设备调用REST web服务,我希望web服务响应客户端A,并通过套接字服务器将命令推送到客户端B。@RussMilburn-是的,你之前没有解释清楚。您不能在客户机上强制发送消息,除非您的客户机正在运行自己的服务(通过任何技术:websockets、web服务、jms端点等),该服务将侦听消息。我已经设法解决了这一问题。我不得不将套接字服务器作为单独的应用程序运行。web服务器有一个由上下文文件设置和访问的实例,我可以向客户端B发送消息,感谢Kolossus的帮助