0

I am new to salesforce. I was trying to update that account record name belong to me. I am getting

System.NullPointerException: Attempt to de-reference a null object

could some can help me here is my class

public with sharing class AccountController {
    ApexPages.StandardController GstdController;
    public Account ER;

    ApexPages.StandardController stdcontroller;

    public AccountController(ApexPages.StandardController controller) {
       GstdController=controller;
       this.ER= (Account)controller.getRecord();
       this.stdController = controller;

    }

    public PageReference Save() {
        system.debug('Save::::1111');
        String rType = ApexPages.currentPage().getParameters().get('RecordType');
        system.debug('sc::::'+rType);
        this.ER.RecordTypeId = rType;

        PageReference pr= stdController.save();
        //insert ER;
         pr.setRedirect(false);
         system.debug('Save::::2222');

        return pr;  
    }
}
  • Do you know which line is causing the error - the debug log should tell you. I am wondering if the String rType = ApexPages.currentPage().getParameters().get('RecordType'); is throwing an error? – BritishBoyinDC Oct 20 '14 at 4:34
  • iam getting on pr.setRedirect (false); line – sravya Oct 20 '14 at 4:42
  • 2
    Seems like there is an error on safe and thus it is returning a null page reference. Check for Page Message to see what the issue is – Eric Oct 20 '14 at 5:26
  • 1
    I'm with Eric - execute the save with a try/catch, and then redirect if the save is successful. – BritishBoyinDC Oct 20 '14 at 15:29
1

Based on my understanding, whenever you use getRecord() method, it does not mean it will load all the Account property except if the properties are defined in Visual Force Page example {!RecordTypeId} .

Can you try retrieve Account record including RecordTypeId then update it with the one that you retrieve from parameter?

Something like this:

this.ER =[Select Id,RecordTypeId from Account where Id =: controller.getId()]
this.ER.RecordTypeId = recType;//get this from parameter

//then update code

Hope it help.

Thanks

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.