wsimportタイムアウト

1137 ワード


wsimportで生成されたクライアントで、タイムアウト時間を設定するには、次のように設定します.
 
 
AdmswebService serviceFactory = new AdmswebService();
			AdmswebServicePortType service = serviceFactory
					.getAdmswebServiceHttpPort();

			//       
			Map<String, Object> ctxt = ((BindingProvider) service)
					.getRequestContext();
			ctxt.put("com.sun.xml.internal.ws.connect.timeout", 1000);
			ctxt.put("com.sun.xml.internal.ws.request.timeout", 1000);

 
注意:この遅延は、このURLが通じているとしか測定できませんが、反応が遅いだけです.このURLがまったく通じないか、ネットワークケーブルが切れているか、ホストアドレスが正しくない場合は、factoryを新規作成するときに異常を投げます.
 
では、このような状況に遭遇した場合、どうすればいいのでしょうか.httpclientを利用して最初のステップの検出を行い、パスしてから次のテストを行うのが一般的です.
 
 
また、タイムアウト時間を1ミリ秒に設定してテストします.
 
refurl:  http://www.myexception.cn/web/922641.html
 
  http://xm-koma.iteye.com/blog/1714450