i have worklight application http adapter connects application in order retrieve data displayed on mobile device (testing android 4.0.4 @ moment).
when application starts, invoke 3 procedures http adapter , display results 3 procedures.
when run application in browser , preview common, works fine.
the problem occurs when run application on actual phone. of time 1 or 2 of procedure calls fail , data not display, seems 1 of them (the first one) seems work. on rare occasion 3 procedure calls retrieve data, unable consistently reproduce scenario.
when procedure fails, receive error in worklight development server console:
[error ] fwlse4007e: received bad token client. server token:'null', client token:'b3fuqgdid2701hu855n89pldpk'. [project trunk]
sometimes, receive error instead, less common:
[error ] fwlse0203e: received bad instance id client. server instance id:'3f9eveddc7br5mq3ll0nq89miu', client instance id:'ut5m5f01i3bkq5l78m54uq137o'. [project trunk]
the application attempts wl.client.invokeprocedure procedures, , when invoke succeeds, onsuccess function runs, when other procedures fail load data, onfailure function never occurs.
my adapter looks this:
<displayname>adapter</displayname> <description>adapter</description> <connectivity> <connectionpolicy xsi:type="http:httpconnectionpolicytype"> <protocol>http</protocol> <domain>10.50.22.161</domain> <port>9000</port> </connectionpolicy> <loadconstraints maxconcurrentconnectionspernode="5"/> </connectivity> <procedure name="getprocesses" securitytest="securitytest" /> <procedure name="gettasks" securitytest="securitytest" /> <procedure name="metricslist" securitytest="securitytest" /> <procedure name="getmetric" securitytest="securitytest" /> <procedure name="getallhashtags" securitytest="securitytest" /> <procedure name="getmessages" securitytest="securitytest" /> <procedure name="getmentions" securitytest="securitytest" /> <procedure name="getconversations" securitytest="securitytest" /> <procedure name="getservertime" securitytest="securitytest" />
when remove securitytests procedures, error seems occur less frequently, still occurs.
what problem here? or how can debug worklight server in order determine cause?
i using eclipse worklight plug-in version 6.0.0.20130701-1413.
this sounds similar race condition defect identified not long ago.
several possible workarounds:
- make sure
wl.client.connectbefore invoke adapter procedures - allow delay after application launches , invoke adapter procedures
you can try adding javascript:
wl_nodeviceprovisioningchallengehandler.handlefailure = function() { wl.client.connect(); };same 3 above,
wl.client.reloadapp()
question: in initoptions.js, have set connectonstartup "true" or "false"?
Comments
Post a Comment