• Anthony Magalit II
  • NEWBIE
  • 0 Points
  • Member since 2013
  • AppBuddy

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 2
    Replies
We are working on getting our app ready to be Lightning ready certified, and I found an issue we need help with.
Here’s the scenario: Our app has many use cases where it’s necessary to put our Visualforce pages in an iframe. In one use case, we have a Visualforce page in an iframe that is within another Visualforce page. The inner VF page has several buttons and links that are bound to methods in the VF page’s controller. These controller methods return a PageReference. When the buttons or links are clicked, the controller methods execute successfully and they return the PageReference object. But when the inner VF page refreshes, it takes over the top location, meaning the outer VF page is no longer containing the inner VF page, and the inner VF page is the only page within the Lightning container. 

Is this behavior expected? I can reproduce this issue with 2 basic VF pages and a basic Apex controller that mimics the behavior of our app (code below). It happens when the inner VF page has the isdtp parameter in the URL and the PageReference returned has it’s redirect attribute set to true.

// Controller code
public class TestControllerInLightning {
public PageReference controllerAction() {
PageReference ref = new PageReference('/apex/InnerPageInLightning');
ref.setRedirect(true); 

return ref;

}

// Outer page code
<apex:page >
<div>Text in the outer page</div>
<apex:form >
</apex:form> 
<iframe id="thisFrame" scrolling="auto" height="480" width="100%" frameborder="0" src="/apex/InnerPageInLightning?isdtp=p1"></iframe>
</apex:page>

// Inner page code
<apex:page controller="TestControllerInLightning" showheader="true" sidebar="true" >
<hr/>
<div>Text in the inner page</div>
<apex:form >
<apex:commandButton value="Hit Controller Action" action="{!controllerAction}" immediate="false" />
</apex:form>
</apex:page>

I will post screenshots of the what the issue looks like shortly.

Note, I posted this to the Lightning and Components chatter group in the partner community but didn't get any responses. And I logged a case with support but they said they could not help with this issue and I should post to the dev forum.  This is blocking our Lightning Ready Certification process.
We are working on getting our app ready to be Lightning ready certified, and I found an issue we need help with.
Here’s the scenario: Our app has many use cases where it’s necessary to put our Visualforce pages in an iframe. In one use case, we have a Visualforce page in an iframe that is within another Visualforce page. The inner VF page has several buttons and links that are bound to methods in the VF page’s controller. These controller methods return a PageReference. When the buttons or links are clicked, the controller methods execute successfully and they return the PageReference object. But when the inner VF page refreshes, it takes over the top location, meaning the outer VF page is no longer containing the inner VF page, and the inner VF page is the only page within the Lightning container. 

Is this behavior expected? I can reproduce this issue with 2 basic VF pages and a basic Apex controller that mimics the behavior of our app (code below). It happens when the inner VF page has the isdtp parameter in the URL and the PageReference returned has it’s redirect attribute set to true.

// Controller code
public class TestControllerInLightning {
public PageReference controllerAction() {
PageReference ref = new PageReference('/apex/InnerPageInLightning');
ref.setRedirect(true); 

return ref;

}

// Outer page code
<apex:page >
<div>Text in the outer page</div>
<apex:form >
</apex:form> 
<iframe id="thisFrame" scrolling="auto" height="480" width="100%" frameborder="0" src="/apex/InnerPageInLightning?isdtp=p1"></iframe>
</apex:page>

// Inner page code
<apex:page controller="TestControllerInLightning" showheader="true" sidebar="true" >
<hr/>
<div>Text in the inner page</div>
<apex:form >
<apex:commandButton value="Hit Controller Action" action="{!controllerAction}" immediate="false" />
</apex:form>
</apex:page>

I will post screenshots of the what the issue looks like shortly.

Note, I posted this to the Lightning and Components chatter group in the partner community but didn't get any responses. And I logged a case with support but they said they could not help with this issue and I should post to the dev forum.  This is blocking our Lightning Ready Certification process.

I'm sending an email to a contact which I expect to fail (the contact has NO email address specified):

 

 

 

List<Messaging.SingleEmailMessage> emailList = new List<Messaging.SingleEmailMessage>();
Messaging.SingleEmailMessage sem = new Messaging.SingleEmailMessage();
sem.setSubject('test subject');
sem.setHtmlBody('testbody');
sem.setSaveAsActivity(false);
sem.setTargetObjectId('003R00000090cra');

emailList.add(sem);


List<Messaging.SendEmailResult> sendEmailResult = Messaging.sendEmail(emailList, false);
System.Debug('@@@@ '+sendEmailResult);

 

 Here is the result that comes back:

 

13:08:57 INFO  - 20090325170853.851:AnonymousBlock: line 13, column 1: @@@@ (Messaging.SendEmailResult[getErrors=(Messaging.SendEmailError[getTargetObjectId=null;]);isSuccess=false;])

 

Why is the SendEmailError object not being fully populated?

 

I would expect the following to be populated:

- getMessage

- getStatusCode

- getTargetObjectId

 

 

Message Edited by dev_force on 03-25-2009 10:13 AM
Message Edited by dev_force on 03-25-2009 10:42 AM
Message Edited by dev_force on 03-25-2009 12:58 PM