【发布时间】:2014-01-19 15:43:06
【问题描述】:
我的问题是这样的:
在开发环境中,一切正常 - 轮询器工作正常,数据库状态发生变化,等等。
在生产环境中,日志中没有任何内容,数据库中也没有任何变化(我正在从数据库表中读取通知)。
推送通知事件来源:
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>
【问题讨论】:
-
你在服务器端使用
WL.Logger.info('Starting the send notifications');吗? -
是的。它在我的本地机器上输出日志
-
如果您从生产服务器添加日志会更好。
-
日志中没有任何痕迹。我只有在部署适配器后才有这个:00000081 DeployService I com.worklight.integration.services.impl.DeployServiceImpl syncAdaptersFromDB FWLSE0084I:已成功部署适配器“PushAdapter”。
-
@HoucemBerraana,好消息。请将此写为答案并标记为已回答,以便其他人可以从中受益。
标签: push-notification ibm-mobilefirst worklight-server