質問

最近、WebサービスをAxisからCXF(2.1)に移行しました。 Axisは" axis.socketSecureFactory"を必要としていたようです。設定すると、CXFはデフォルトを取得します。 JavaでデフォルトのSocketFactoryを独自の実装(プロパティなど)に設定するにはどうすればよいですか?

私がやろうとしているしていないのは、トラストストア、キーストア、パスワードのプロパティを設定するなど、デフォルトのSocketFactoryプロパティを設定することです。

役に立ちましたか?

解決

javaxのOpenJDK7ソースコードによると。 net.SocketFactory 、Sun JVMは javax.net.DefaultSocketFactory for getDefault();

編集:ただし、デフォルトのSSLSocketFactoryはセキュリティプロパティ ssl.SocketFactory.provider

で設定できます

他のヒント

標準ソケットについて話している場合は、 Socket.setSocketImplFactory(SocketImplFactory)を使用して通常のソケットのファクトリを変更し、 ServerSocket.setSocketFactory(SocketImplFactory)を使用してサーバーソケットを変更します。

これらを使用している場合は、これらのファクトリを一度しか設定できないことに注意してください。

ファクトリをパックに切り替えることができるファクトリが必要な場合にファクトリが null を検出した場合、Javaソケット実装はデフォルトでSocksSocketImpl(java.netのパッケージ表示クラス)を使用することに注意してください標準のJava実装。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top