2016-04-27 9 views
0

integrationを使用してGmailアカウントにアクセスしようとしています。私はHttp.inboundGatewayを使用する必要があります。だから、パスワードが指定されていません

.from(Mail.imapIdleAdapter("imaps://"+(Http.inboundGateway(String.format("%s:%[email protected]/INBOX", "myEmail", "myPassword"))).toString()) 

のような行に追加しますが、問題は、実行時に、それはあなたが見ることができるように、私はすでに私の要求で自分のパスワードを定義しているが、それはできません

javax.mail.AuthenticationFailedException: failed to connect, no password specified? 

と文句を言い、ありますそれを認識し、また、私はパスがここ

真実であると確信している完全なコードです:

@Bean     
    IntegrationFlow processInvoiceFlow() { 
     return IntegrationFlows 
      .from(Mail.imapIdleAdapter("imaps://"+(Http.inboundGateway(String.format("%s:%[email protected]/INBOX", "myEmail", "myPassword"))).toString()) 
       .selectorExpression("subject matches '.*invoice.*'")) 
      .transform("@invoiceProcessor.extractInvoice(payload)") 
      .route("#xpath(payload, '//total <= 1800', 'string')", mapping -> mapping 
       .subFlowMapping("true", sf -> sf 
        .handle("invoiceProcessor", "processInvoice")) 
       .subFlowMapping("false", sf -> sf 
        .handle(System.out::println)) 
     ) 
      .get(); 
    } 

点ですつまり、私が使用してHttp.inboundGateway せずにアカウントへのアクセス権を持っている:あなたが説明していただけません

.from(Mail.imapIdleAdapter(String.format("imaps://%s:%[email protected]/INBOX", myEmail, myPassword)) 
+0

@Artem Bilan ... –

答えて

1

を:

私はHttp.inboundGateway

を使用するために必要なのですか? Http.inboundGateway().toString()を呼び出すための奇妙なコードが何であるかを他の側から

...

あなたがそのコードに到達するために、正確に何をしたいですか?はい、Javaの性質上有効です。しかし、それは論理によって不条理です...

あなたのMail.imapIdleAdapter(String.format())ははるかによく見えます!

関連する問題