133
Views
3
Comments
Solved
Reactive web app not working on iPhone

Hi all,

We are experiencing some issues with iPhones and our reactive web applications at the moment. It seems that the application does not load when we first enter. 

 

This happens as soon as you enter the URL to access the page.

This is the error that we get in the error log

There is no more information in the details of the error.

The DecodeURL action is a dependency that we added from a service module and does not run any custom JS. All it does is to replace the encoded characters inside an assign. 

I replaced this logic in the action with a more robust decoding involving custom JS: 

$parameters.DecodedUrl = decodeURIComponent($parameters.EncodedUrl);

This gives the same issue as before.

We tried opening the application on safari and chrome on iPhone, both resulting in the error.

It works fine for desktop windows and android devices.

Has anyone had an issue like this before. Could it be that iPhone does not recognize the newly added dependencies? This application use to work but since we added the dependencies it seems to be giving issues.


Kind regards

Stefan

2020-12-07 12-30-07
Stefan van Deventer
Solution

Outsystems support was able to find the issue.

It came down to safari not supporting the negative lookahead in regex. We used it for one of our exposed client actions in order to convert camel case to sentence case. 

The JS in this action was being included whenever we added a client action dependency from the module and that caused the issue.

This seems to be an old safari issue: https://stackoverflow.com/questions/51568821/works-in-chrome-but-breaks-in-safari-invalid-regular-expression-invalid-group 

We changed the regex to not include the negative lookahead and everything seems to be working fine now.

2019-03-19 12-24-07
Mariano Picco
 
MVP

And if you remove this action, it loads okay?

2020-12-07 12-30-07
Stefan van Deventer

Hi Mariano,

Yes it seems to be an issue with the module itself since we only get the issue when it is an action from that module. If we add a new action and add it as a dependency it causes the issue and if we copy the existing actions to a different module the app loads fine. 

Worst case is that we create the new module and copy everything over, problem is that this is a general module used by all our applications so it would be quite tedious to go update every app.

We do have a support ticket open with Outsystems about this and they are investigating the issue.

I will post here if they can find a fix for it.

2020-12-07 12-30-07
Stefan van Deventer
Solution

Outsystems support was able to find the issue.

It came down to safari not supporting the negative lookahead in regex. We used it for one of our exposed client actions in order to convert camel case to sentence case. 

The JS in this action was being included whenever we added a client action dependency from the module and that caused the issue.

This seems to be an old safari issue: https://stackoverflow.com/questions/51568821/works-in-chrome-but-breaks-in-safari-invalid-regular-expression-invalid-group 

We changed the regex to not include the negative lookahead and everything seems to be working fine now.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.