2012-02-16 10 views
1

Apache Qpid JavaクライアントAPIには、Qpidメッセージブローカへの接続に使用するAMQConnectionクラスがあります。私は単一文字列コンストラクタ(AMQConnection(String connection))を使用しています。最初に接続文字列を作成するユーティリティメソッドがあります。このメソッドは、次にAMQConnectionコンストラクタに渡されます。接続せずにAMQConnection接続文字列を検証しますか?

接続文字列の形式は、amqp://<username>:<password>@<clientID>/?brokerlist='tcp://<hostname>:<port>'です。

構文が正しくない接続文字列がコンストラクタに渡された場合は、URLSyntaxExceptionがスローされます。

接続文字列の構文チェックをユーティリティメソッドに移したいのですが(私はそれが壊れた情報を返すことはできないと考えています)、接続文字列を検証する方法はありませんメッセージブローカへの接続を設定しようとしていません。これを行う方法はありますか、コンストラクタからスローされたURLSyntaxExceptionに依存するだけですか?

答えて

1

正しい構文のURIのみをチェックしたいですか?もしそうなら、単にURIクラスのインスタンスを作成します:URIは文法的に正しくない場合

new URI("amqp://user:[email protected]/?brokerlist='tcp://example.com:80'") 

これはjava.net.URISyntaxExceptionをスローします。

AMQ固有のオプションのURIをチェックする必要がある場合は、AMQソースコードを2つ見て、これを検証/解析するクラスを見つけることができます。