2016-08-10 11 views
0

を使用してMessageHubレシーバを実行しようとしたときにエラーを取得します。 IBM Message Hubのこのインスタンスに接続してメッセージを受信できる必要があるローカルマシン上でJava Receiverを実行しました。私はBluemixから私のIBMのメッセージハブインスタンスに接続できるように、私は私のVCAP_SERVICESを設定する必要がありますどのように私はBluemixにプロビジョニングIBMメッセージハブのインスタンスを持っているJavaとVCAP_SERVICES

? [サービス資格情報]タブに移動すると、1つの資格情報が設定されています。キー名はMHCredentialsです。それのためのJSON値は次のとおりです。

{ 
    "mqlight_lookup_url": "https://mqlight-lookup-prod01.messagehub.services.us-south.bluemix.net/Lookup?serviceId=26f5f662-b757-43dc-8fcc-810c8d3fbeec", 
    "api_key": "DXXXXXXXXXXXXXXXXXXXXXXXXXXXXx", 
    "kafka_admin_url": "https://kafka-admin-prod01.messagehub.services.us-south.bluemix.net:443", 
    "kafka_rest_url": "https://kafka-rest-prod01.messagehub.services.us-south.bluemix.net:443", 
    "kafka_brokers_sasl": [ 
    "kafka01-prod01.messagehub.services.us-south.bluemix.net:9093", 
    "kafka02-prod01.messagehub.services.us-south.bluemix.net:9093", 
    "kafka03-prod01.messagehub.services.us-south.bluemix.net:9093", 
    "kafka04-prod01.messagehub.services.us-south.bluemix.net:9093", 
    "kafka05-prod01.messagehub.services.us-south.bluemix.net:9093" 
    ], 
    "user": "DXXXXXXXXXXXXXXXXXXXx", 
    "password": "3XXXXXXXXXXXXXXXXXXXXXXXXX" 
} 

私は私のローカルマシン上で実行されている私の受信機からMessageHubに接続できるように、私のVCAP_SERVICESを設定する方法を教えてください。上記のJSON文字列を持つVCAP_SERVICESという名前のマシン上に、すでに環境変数を作成しました。しかし、私は受信機を走らせたときにエラーが発生しました:Not a JSON Array

+0

それはカフカ0.9.0に言及しているが、このブログの記事が役立つかもしれないとあなたが現在カフカ0.10.0を使用する必要がありますhttps://developer.ibm.com/messaging/2016/03/03/message-hub-kafka- Javaの-API /ブログあなたは、ログイン構成ファイルの例をJAASログイン設定ファイルを持って提案する: KafkaClient { com.ibm.messagehub.login.MessageHubLoginModuleは serviceNameを=「カフカ」 ユーザ名=「ユーザ名」 パスワードを必要と= "パスワード"; }; – ValerieLampkin

答えて

1

IBMメッセージングは​​MessageHubを開始する方法についてのチュートリアルビデオを作成しました。あなたの「未JSONアレイ」エラーが何らかの形であなたのVCAP_SERVICES環境変数が不正な形式であることを示唆している

https://www.youtube.com/watch?v=tt-bLtFzC_4

と確かにそれが有効なJSONではありません:ビデオは、サービスへの接続の基本をカバーしなければなりませんか?

あなたはVCAP_SERVICES環境変数をプリントアウト以外の他に何もしない、非常に小さなアプリケーションを開発しようとすることができます。次に、ラップトップでローカルに実行するだけでなく、Bluemixに展開して2つを比較し、その違いを確認することもできます。

public class VcapPrinter { 
    public static void main(String[] args) { 
     String vcapServices = System.getenv("VCAP_SERVICES"); 
     System.out.println(vcapServices); 
    } 
} 

BluemixのSTDOUTを検査できるように、これよりもやや細かく、アプリケーションを生かしておく必要があります。

関連する問題