04_02_HTTP_adapter_-_Communicating_with_HTTP_back-
end_systems
IBM Worklight Getting Started Web サイトで入手可能なトレーニング・モジュールに従っていますが、プロシージャーを呼び出すとエラーが発生します。
{
"errors": [
"Runtime: Http request failed: java.net.UnknownHostException: rss.cnn.com"
],
"info": [
],
"isSuccessful": false,
"warnings": [
]
}
アダプター -impl.js
function getStories(interest) {
path = getPath(interest);
var input = {
method : 'get',
returnedContentType : 'xml',
path : path
};
return WL.Server.invokeHttp(input);
}
function getStoriesFiltered(interest) {
path = getPath(interest);
var input = {
method : 'get',
returnedContentType : 'xml',
path : path,
transformation : {
type : 'xslFile',
xslFile : 'filtered.xsl'
}
};
return WL.Server.invokeHttp(input);
}
function getPath(interest) {
if (interest == undefined || interest == '') {
interest = '';
}else {
interest = '_' + interest;
}
return 'rss/edition' + interest + '.rss';
}
XML ファイル
<?xml version="1.0" encoding="UTF-8"?>
<wl:adapter name="RSSReader"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wl="http://www.worklight.com/integration"
xmlns:http="http://www.worklight.com/integration/http">
<displayName>RSSReader</displayName>
<description>RSSReader</description>
<connectivity>
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>http</protocol>
<domain>rss.cnn.com</domain>
<port>80</port>
</connectionPolicy>
<loadConstraints maxConcurrentConnectionsPerNode="2" />
</connectivity>
<procedure name="getStories"/>
<procedure name="getStoriesFiltered"/>
</wl:adapter>
ああ、ついに私は私の答えを得ました。XML ファイルでいくつかのプロキシ設定を行ったところ、アダプタが動作し始めました。プロキシを使用している場合に追加する必要があるプロキシ コードを次に示します。
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>http</protocol>
<domain>rss.cnn.com</domain>
<port>80</port>
<proxy>
<protocol>http</protocol>
<domain>proxy.My_company_name.com</domain> ----use proxy URL here
<port>8080</port>
<authentication>
<basic/>
<serverIdentity>
<username>user</username> --------user is username
<password>password</password> ------------Proxy Password
</serverIdentity>
</authentication>
</proxy>
</connectionPolicy>