我的问题是这样的:
在开发环境中,一切正常 - 轮询器工作正常,数据库状态发生变化等。
在生产环境中,日志中没有任何内容,数据库中也没有任何变化(我正在从数据库表中读取通知)。
推送通知事件源:
WL.Server.createEventSource({
name : 'PushEventSource',
poll : {
interval : 360,
onPoll : 'sendNotifications'
},
securityTest : 'mobileSecTest'
});
mobileSecTest 安全测试:
<mobileSecurityTest name="mobileSecTest">
<testUser realm="LdapAdapterRealm"/>
<testDeviceId provisioningType="none"/>
</mobileSecurityTest>
sendNotifications() 实现:
var notificationServicesResourceName = "PushAdapter";
function sendNotifications(){
WL.Logger.info('Starting to send notifications');
var lockInvocationData = {
adapter : "SQLConnector",
procedure : "isLocked",
parameters : [ notificationServicesResourceName ]
};
var isLockedResult = WL.Server.invokeProcedure(lockInvocationData);
if (!isLockedResult.locked) {
lockInvocationData = {
adapter : "SQLConnector",
procedure : "acquireLock",
parameters : [ notificationServicesResourceName ]
};
WL.Server.invokeProcedure(lockInvocationData);
//Get the list of all notifications, from external database
var dbResponse = getAllUnsentNotifications();
var data = dbResponse.data ;
/////////////////THE REST OF THE LONG LONG CODE ////////////
//Reealse lock
lockInvocationData = {
adapter : "SQLConnector",
procedure : "releaseLock",
parameters : [ notificationServicesResourceName ]
};
WL.Server.invokeProcedure(lockInvocationData);
}
}
适配器 XML 文件:
<wl:adapter name="PushAdapter"
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>PushAdapter</displayName>
<description>PushAdapter</description>
<connectivity>
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>http</protocol>
<domain>${com.ibm.moi.ci.host}</domain>
<port>${com.ibm.moi.ci.port}</port>
</connectionPolicy>
<loadConstraints maxConcurrentConnectionsPerNode="300" />
</connectivity>
<!-- Replace this with appropriate procedures -->
<procedure name="sendNotifications"/>
<procedure name="submitNotification"/>
</wl:adapter>