Invoking intents with large payload fails in ozp-iwc (IE only)

63 views
Skip to first unread message

cnithi...@gmail.com

unread,
Dec 13, 2016, 11:19:42 AM12/13/16
to ozoneplatform-users

I am using ozp-iwc, and sometimes I need to pass large objects along when invoking an intent. When using IE, invoking intents with a large payload causes the registered handler to never be called. If I send a small object as the payload, invoking the intent works fine. But with large objects as payloads the registered handler is never called and invoking the intent fails. What could be the issue?

kdrumm...@gmail.com

unread,
Dec 13, 2016, 12:35:59 PM12/13/16
to ozoneplatform-users, cnithi...@gmail.com
Hello,

First, a couple questions.
  • What version of IE are you using?
  • What size of payloads are you using that work and don't work?
  • Can you send me any error logs or relevant messages from the browser?
  • Is your widget code publicly available?  If so, where?

Second, I want to point out that the documentation for OZP-IWC states that it has only limited support for IE 11.  You can see all supported browsers at the bottom of this url: https://ozoneplatform.github.io/ozp-iwc/1.2.2/.


Thanks,

Kyle Drumm

cnithi...@gmail.com

unread,
Dec 13, 2016, 1:52:45 PM12/13/16
to ozoneplatform-users, cnithi...@gmail.com
Thank you for your response, 

I'm using IE version 11.447.14393.0.

Here is a payload that works:
{"entity": { "foo" : "bar" }};

A payload that failed was a json object when stringified that had a length of 49066 characters.

When I try a payload that fails, I receive no errors or relevant messages from the browser. Even when I try adding a catch method for error handling, nothing in the catch function is called.

Our code is not publicly available. I was able to build a test harness to match what I was seeing with our code. I built the ozp-iwc project and ran it using grunt serve and created a test harness where one iframe registers the intent and the second invokes the intent. Invoking with a small payload succeeds and large payload fails. When adding console logs to the ozp-iwc code, when the payload is large, console logs relevant to the intent just stop somewhere in the process and I am not sure as of yet why. 

Another thing to note, depending on where our code was deployed and the environment, the size of a payload that would cause a fail varied. 

cnithi...@gmail.com

unread,
Dec 13, 2016, 2:30:28 PM12/13/16
to ozoneplatform-users, cnithi...@gmail.com
Another note, when logging the packets being sent when invoking an intent, I noticed the intent state would never get past "delivering" when the payload was large and the intent failed.

Thank you for your help.

kdrumm...@gmail.com

unread,
Dec 14, 2016, 7:45:18 AM12/14/16
to ozoneplatform-users, cnithi...@gmail.com
This may be a bug in IE11 in the way they handle localStorage events.  We have reached out the developers to see if they have seen this issue before and if they have a work-around.  When I hear from them, I'll be sure to post back here.

Our next step would be to submit a new issue on github, but I see you've already tried that with issue 401 in ozp-iwc.

Thanks,
Kyle Drumm

cnithi...@gmail.com

unread,
Dec 14, 2016, 9:13:19 AM12/14/16
to ozoneplatform-users, cnithi...@gmail.com
Thank you for your help.

kdrumm...@gmail.com

unread,
Dec 15, 2016, 1:43:28 PM12/15/16
to ozoneplatform-users, cnithi...@gmail.com

We have reached back to the original development team. They were unaware of the reported issue and are no longer actively working IWC because of other requirements.  We will create an issue in github and will look to the community to help find a solution. 

 

If this is something that is of high importance it could be handled with a support contract from Next Century (Support Contract).

cnithi...@gmail.com

unread,
Dec 15, 2016, 2:46:24 PM12/15/16
to ozoneplatform-users, cnithi...@gmail.com

Thank you, I appreciate your help.

cnithi...@gmail.com

unread,
Jan 4, 2017, 9:47:00 AM1/4/17
to ozoneplatform-users, cnithi...@gmail.com
I was able to solve this issue by setting the fragmentSize in the keyBroadcastLocalStorageLink to something significantly smaller. It defaults to 50% of 5mb, but by setting it to something much smaller, larger payloads were getting through.
Reply all
Reply to author
Forward
0 new messages