Lightning Out suddenly broken – 500 (Server Error)

We have a set of lightning components rendered in Classic on Visualforce using the Lightning Out library. This morning, it is suddenly down for us on Prod, partial and developer sandboxes.

Our Visualforce is really as simple as the boilerplate:

(obfuscated for clients sake)

<apex:includeLightning />

<div id="xxxContainer"/>

<script>
    $Lightning.use("c:yyyDataInput", function() {
        $Lightning.createComponent(
            "c:yyyDataEntryContainer", 
            {
               params
            }, 
            "xxxContainer", 
            function(cmp) {}
        );
    });
</script>

But now we just get a white screen – no Apex logs from the component controllers, no errors in the blue at the bottom of the page – but just the Chrome dev log:

no library

I have tried going to that URL and I do get a 500 Server Error page. It’s the same on all instances, just with different instance subdomains.

I have also tried replacing the apex:includeLightning tag with a hard coded URL to the instance’s lightning library – but on Https I get a 404 and on Http I get a “not allowed insecure content” error – two things which I recall being problems in the past, hence the new apex tag.

I think this might have something to do with a Lightning off-cycle release Salesforce made over the weekend for the Lightning Sales/Service consoles? I have Audit trail entries for them being fiddled with (by Salesforce).

Does anyone have any other ideas to try? Or is experiencing this issue. I have opened a case.

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

So this error was being caused because the Lightning App c:yyyDataInput was in error and failing to compile.

This is because over the weekend Salesforce (apparently) ceased the existance of the standard component ui:input

So our app listed all it’s dependencies (about 30 of them) – which we do for documentation and best practise reasons, and one of our dependencies was:

<aura:dependency resource="ui:input"/>

Now, when this was done, it must have saved and been valid (and it was in 2 sandboxes and production) but if you tried to add that line now you would not be able to save (just like if you put blahblahblah in the resource attribute).

Once can only assume therefore that between Feb 10th and Feb 13th 2017 Salesforce removed the existance of the ui:input thus breaking any apps that included it.

(by-the-by we just removed the dependency, and the app saved again and all was well – so I’m not sure why it was there, but this is still super frustrating and the actual error message couldn’t have been more useless)


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x