function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Ashok S 7Ashok S 7 

how to slove this error

Hai guys
When i create the visual force for sending massemailmessages.following error will coming 
System.NullPointerException: Attempt to de-reference a null object 
Class.MassEmailMessage_controller1.<init>: line 10, column 1
please help me any one

vf page
------------------------------
<apex:page standardcontroller="contact" extensions="MassEmailMessage_controller1">
  <apex:form >
  <apex:commandButton value="sendEmail" action="{!sendEmail}"/>
  
  </apex:form>
</apex:page>

controller
--------------------------------
public class MassEmailMessage_controller1 {

    private final list<Id> contactids;
    public list<contact> con;
    public MassEmailMessage_controller1(ApexPages.StandardController controller) {

    con = [select Id from contact limit 250];
        for(integer i = 0;i<250;i++)
        {
             contactids.add(con[i].Id);
         
        }
    }
    
    public void sendEmail()
    {
        Messaging.MassEmailMessage mail = new Messaging.MassEmailMessage();
        mail.setTargetObjectIds(contactids);
        Messaging.sendEmail(new Messaging.MassEmailMessage[]{mail});
    
    }

}
Himanshu ParasharHimanshu Parashar
Hi Ashok,

Replace your class with following code
 
public class MassEmailMessage_controller1 {

    private final list<Id> contactids;
    public list<contact> con;
    public MassEmailMessage_controller1(ApexPages.StandardController controller) {

    List<id> contactids = new List<id>();

    con = [select Id from contact limit 250];
        for(integer i = 0;i<250;i++)
        {
             contactids.add(con[i].Id);
         
        }
    }
    
    public void sendEmail()
    {
        Messaging.MassEmailMessage mail = new Messaging.MassEmailMessage();
        mail.setTargetObjectIds(contactids);
        Messaging.sendEmail(new Messaging.MassEmailMessage[]{mail});
    
    }

}

Thanks,
Himanshu
Salesforce Certified Developer, Administrator, Service Cloud Consultant

P.S. If my answer helps you to solve your problem please mark it as best answer. It will help other to find best answer.
Sunil PalSunil Pal
HI Ashok,

Try this 
public class MassEmailMessage_controller1 {

    private final list<Id> contactids;
    public list<contact> con;
    public MassEmailMessage_controller1(ApexPages.StandardController controller) {
	
	contactids = new list<Id>();
	con = new list<contact>();
	
    con = [select Id from contact limit 250];
	
        for(integer i = 0;i<250;i++)
        {
             contactids.add(con[i].Id);
         
        }
    }
    
    public void sendEmail()
    {
        Messaging.MassEmailMessage mail = new Messaging.MassEmailMessage();
        mail.setTargetObjectIds(contactids);
        Messaging.sendEmail(new Messaging.MassEmailMessage[]{mail});
    
    }

}