Skip to content

'Missing config property scope' error is not handled gracefully #44

@tarasklimenko

Description

@tarasklimenko

Description:

Upon getting the error from WL issue #43, the scenario is not handled properly and causes the application to crash the test device. The error below is repeated continuously until the device crashes.

image

Console output:

[ERROR   ] FWLSE0099E: An error occurred while invoking procedure  [project ATT_WL_InAppMessaging]InAppMessaging/getMessageContentFWLSE0100E:  parameters: [project ATT_WL_InAppMessaging]
TypeError: [JavaPackage com.att.ATTUtils] is not a function, it is object. (InAppMessaging-impl.js#145)
FWLSE0101E: Caused by:  [project ATT_WL_InAppMessaging]nullorg.mozilla.javascript.EcmaError: TypeError: [JavaPackage com.att.ATTUtils] is not a function, it is object. (InAppMessaging-impl.js#145)
    at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3687)
    at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3665)
    at org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3693)
    at org.mozilla.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:3712)
    at org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:3767)
    at org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:3755)
    at org.mozilla.javascript.ScriptRuntime.newObject(ScriptRuntime.java:2346)
    at org.mozilla.javascript.gen.InAppMessaging_impl_js_16._c_getMessageContent_5(InAppMessaging-impl.js:145)
    at org.mozilla.javascript.gen.InAppMessaging_impl_js_16.call(InAppMessaging-impl.js)
    at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
    at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
    at org.mozilla.javascript.gen.InAppMessaging_impl_js_16.call(InAppMessaging-impl.js)
    at com.worklight.integration.js.JavaScriptManager.callFunction(JavaScriptManager.java:240)
    at com.worklight.integration.js.JavaScriptManager.invokeFunction(JavaScriptManager.java:214)
    at com.worklight.integration.js.JavaScriptManager.invokeFunction(JavaScriptManager.java:194)
    at com.worklight.integration.services.impl.AdapterManagerImpl.invokeFunction(AdapterManagerImpl.java:117)
    at com.worklight.integration.js.JavaScriptProcedureInvoker.invoke(JavaScriptProcedureInvoker.java:42)
    at com.worklight.integration.model.ProcedureInvoker.invokeProcedure(ProcedureInvoker.java:57)
    at com.worklight.integration.model.Procedure.invoke(Procedure.java:166)
    at com.worklight.integration.model.InvocationContext.call(InvocationContext.java:169)
    at com.worklight.integration.model.InvocationContext.call(InvocationContext.java:38)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at com.worklight.server.util.ProjectLocal$1RunnableWrapper.run(ProjectLocal.java:261)
    at java.lang.Thread.run(Unknown Source)

Actual:

Test device crashes after improper handling of missing scope error

Expected:

The SDK is to handle the error gracefully, preventing the device crash.

Repro:

  1. Launch WL IAM Sample
  2. Go through user-consent and provide consent
  3. After redirected from landing page, notice "missing config property 'scope'" error is thrown
  4. Notice after this scope error, the procedure invocation error is thrown continuously until device crashes OR app is force-closed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions