2011-03-14 24 views
0

我有一個是聽一個IP這種簡單的Java功能,使用套接字:插座的Java應用程序安裝在WAS 7.0

void main() 

(...) 


Socket client = new Socket("192.168.9.2",63333); 

DataOutputStream out=new DataOutputStream(client.getOutputStream()); 
DataInputStream in=new DataInputStream(client.getInputStream()); 

while (userInput == 1) { 
     System.out.println(in.readLine()); 
} 

(...) 

,它工作正常,但問題是,我在WAS安裝它7.0,並執行一次主函數,以啓動該過程。

我該怎麼做在WAS 7.0?

問候,
佩德羅

回答

1

按Java EE recomendations,你應該避免在容器開口的插口。 如果你想要的話,你需要一種方法來開始這個,你有幾個選擇。

與您可以遠程調用的方法(RMI ...)創建EJB會話Bean,並把東西在這個方法。

如果要使用WAS自動啓動,可以使用EJB計時器來計劃任務的執行。

您也可以創建一個Servlet,在調用時執行此操作。

您應該考慮啓動一個線程來管理插座,但是線程應該能夠自行停止,當條件達到像while (userInput == 1)的。

這聽起來很奇怪,在像WAS這樣的應用服務器上可以做,但你可以做到這一點。

我們通過創建會話EJB來啓動多個線程來管理客戶端套接字,從而在SAP XI中執行一些類似的任務。

相關問題