使用现有的Java应用程序与tomcat& CIE

时间:2010-09-13 00:12:05

标签: java sockets tomcat hosting daemon

我在一年前创建了一个java应用程序,它基本上是一个网站的多线程套接字服务器。我围绕一个教程构建了这个,我扩展了很多东西,包括使用Flash客户端的实时多人游戏。我使用的教程如下(法语): http://defaut.developpez.com/tutoriel/java/serveur/multithread/

它与教程不完全相同,因为我自定义了它的每个部分以包含游戏部分和许多其他内容(配置,调试等),但套接字“开放”部分与教程中的大致相同。 / p>

无论如何......现在它运作良好。 java应用程序(.jar文件)作为守护程序在我的专用服务器上运行(在.sh脚本中使用“java -jar file.jar&”命令)。但由于某些技术和个人原因,我将无法再这样做,因为我需要转向更便宜的托管解决方案。 (基本上,我与一些朋友共享服务器,但是......)我看到的每个地方,我能找到的唯一托管解决方案是提供Tomcat或类似解决方案的服务。

此外,我今天在谷歌上看了很多,但我不太明白如何在Tomcat中加载我的应用程序(如果它甚至可能),而不必再次重写所有内容。我也在黑暗中,好像有托管计划,除了专用或虚拟专用,这让我可以按照以前的方式继续进行。

有人能指点我一个网站,解释如何在Tomcat(或类似)中实现我现有的.jar吗?或者,如果有人有其他解决方案可以提供给我......?

谢谢

2 个答案:

答案 0 :(得分:1)

您的游戏正在使用原始套接字,这意味着您自己的端口和协议可以使其运行。

Tomcat表示服务器端口和HTTP。

您必须将游戏重写为一个或多个servlet,以便在HTTP上工作并在Tomcat上部署。

答案 1 :(得分:0)

尝试这样的事情:

http://code.google.com/p/cool-summer/source/browse/trunk/NewCOSUpload/src/com/oreilly/servlet/DaemonHttpServlet.java?spec=svn28&r=28

它在init()中创建一个线程,并且线程完成所有套接字工作。记得将servlet标记为load-on-startup。