2017-04-19 32 views
1

SalesforceにログインするためのJavaコードを作成し、ファイアウォールを適用したサーバーでこのコードを実行しました。このため、ファイアウォールのためにSalesforceに接続する前に、プロキシのURLとプロキシポートを指定する必要があります。しかし、私はプロキシURLのunknownhostexceptionエラーが発生しています。私がプロキシ設定でカール経由でログインしようとすると、私は接続することができます。どのようにJavaを使用して接続する際に問題がありますか?どんな助けもありがとうございます。Proxy Serverを使用してSalesforce for Javaにログインできない

答えて

1

明らかに、この問題はJVMの設定によって発生していました。

System.setProperty("http.proxyHost", crmProxyURL); 
System.setProperty("http.proxyPort", crmProxyPort); 
0

HTTPライブラリによっては、システム設定が不十分であるか、必要でない可能性があります。次のように、プロキシ設定を使用するようにJVMを設定する必要があります。 Salesforce contextでは、Jetty HTTP Clientを使用しようとする可能性は非常に高いです。この場合、システムプロパティは無視され、プロキシは桟橋クライアントで処理する必要があります。ここで興味深い

HttpHost proxy = new HttpHost("proxyHost", proxyPort, "https"); 
RequestConfig config = RequestConfig.custom().setProxy(proxy).build(); 
HttpGet request = new HttpGet(someURL); 
request.setConfig(config); 

Apache HTTP Client、他の一般的な選択肢は、それ自身の少しのメカニズムを使用しています

ProxyConfiguration proxyConfig = httpClient.getProxyConfiguration(); 
HttpProxy proxy = new HttpProxy("proxyHost", proxyPort); 
proxyConfig.getProxies().add(proxy); 

:プロキシプロトコルとしてhttpまたはhttpsを使用するように指定できます。

一般的に、私はHTTPクライアントのほうがはるかに簡単で、JDKの低レベル機能を使用していることがわかりました。

関連する問題