[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00658] HTTPS 通信における Socket Close




初めて投稿いたします。

現在、iPlanet Web Server6.0、JDK1.3.1に
jsse1.0.3をインストールして、SSL通信を試みているのですが、
途中でIOExceptionが発生してしまい、処理が中断してしまいます。

実装したい内容は、
SSLにて外のサーバにアクセス(指定されたCGIを起動)
 ↓
サーバ側にて出力されたHTMLの内容を取得

という機能です。
作成したソース(下記)にログ出力を埋め込んで確認してみたところ、

dataIn = new DataInputStream( urlCon.getInputStream() );

のところで、IOExceptionが発生しています。
なお、IOExceptionのエラーメッセージは「Socket Closed」です。

色々と調べてはいるのですが、解決方法、原因がつかめません。
ファイヤーウォール設定がされているサーバから、
外のサーバにアクセスしようとしているのがいけないのかな?
とも思っているのですが・・・。

申し訳ございませんが、ご教示願えればと思っております。
宜しくお願い致します。



<以下が作成したソースです>

// 各種定義
URL httpsUrl;
URLConnection urlCon;

int readSize = 0;
String strBuffer = "";
byte buffer[] = new byte[ (1024*1024) ];


java.security.Security.addProvider( new com.sun.net.ssl.internal.ssl.Provider() );
System.getProperties().put( "java.protocol.handler.pkgs" ,
                            "com.sun.net.ssl.internal.www.protocol" );

httpsUrl = new URL( "https://XXX.XXX.co.jp/XXX.cgi"; );
urlcon   = url.openConnection();

// インパラメータ情報に「あり」を設定
urlCon.setDoInput( true );

// キャッシュ情報に「なし」を設定
urlCon.setUseCaches( false );

urlCon.setRequestProperty("Content-Type","application/x-www-form-urlencoded");


// 以下の1行にてIOExceptionが発生しています。。。
DataInputStream dataIn = new DataInputStream( urlCon.getInputStream() );


StringBuffer inBuf = new StringBuffer("");

while( readSize >= 0 ){

	readSize = dataIn.read( buffer );

	if ( readSize < 0 ){
		break;
	}

	strBuffer = new String( buffer, 0, readSize );
        inBuf1.append( strBuffer );
}

// オブジェクトをクローズ
dataIn.close();


------------------------------------------------------------------------
      ★あなたのホームページに“最新ニュース”をお届け!!      
         http://ap.infoseek.co.jp/ticker2.html