2014-04-08 34 views
0

我現在處於開發一個以Java爲主題的聊天Web應用程序的早期階段,在Openshift.com上託管,搜索如何在代碼中實現客戶端/服務器邏輯並發現Q about Client Server in JSP,這對我來說是個好消息。如何在Tomcat上執行包含main()的java類/ openshift

public class Server 
{  
public static void main(String[] args) 
{ 
    try {  
     ServerSocket socket = new ServerSocket(8765); 

     Socket insocket = socket.accept(); 

     BufferedReader in = new BufferedReader (new 
      InputStreamReader(insocket.getInputStream())); 
     PrintWriter out = new PrintWriter (insocket.getOutputStream(), 
      true); 

     String instring = in.readLine(); 
     out.println("The server got this: " + instring); 
     insocket.close(); 
    } 
    catch (Exception e) {} 
} 
} 

,但現在我想知道如何在Apache Tomcat服務器上運行Server.java,有沒有實現服務器邏輯或如何讓上面的代碼服務器爲我工作的任何替代方法?任何幫助將不勝感激。

+1

你不能真的沒有做愚蠢的事情。將它作爲簡單的Java應用程序運行有什麼問題? –

回答

2

主要方法afaik在servlet容器或應用程序服務器內部運行時不會執行,它是通過命令行運行時類(或應用程序)的入口點。您需要研究用java編寫web應用程序,因爲看起來您最熟悉編寫命令行應用程序或單個類。此外,如果您在openshift上監聽端口8765,則您將無法從外部訪問該端口。如果你真的想在openshift上做你想做的事情,你應該使用DIY盒式磁帶,刪除正在運行的默認ruby腳本,然後在那裏運行你的類(並監聽端口8080),看它是否適用於您。

+0

好的我找到了一個[鏈接](http://stackoverflow.com/questions/10122969/java-tcp-server-program-running-on-apache-tomcat),但我無法找出正確的 –

+0

您需要將代碼添加到DIY應用程序的git存儲庫(作爲.class文件或.jar歸檔文件),然後設置一個action_hook以在您執行git push時運行它。 –

相關問題