Static method called from a null object reference

Hello folks,
Here´s the code:
public class TestClass {
     public static void main(String[] args) {
          StaticNull _null_ = null;
          _null_.testNull();
class StaticNull {
     public static void testNull() {
          System.out.println("testNull");
}I know that a static method belongs to the class, so you don´t need an
instantiated object of that class to call it. But in the code above, as
I'm calling the testNull method from a null reference, shouldn't a NullPointerException
be thrown?
Best regards,
Danniel

sometimes wrote:
yawmark wrote:
Calling static methods from a reference variable should be considered a bad practice. Our coding standards prohibit it, and I suspect we're not the only ones.
~what are you trying to say? your coding standard encourages what tricks to invoke static methods? i mean other than using a 'reference variable'?I think you are misreading yawmark's comment. He was saying that invoking a static method using a reference variable -- as though the method weren't static:
var.staticMethod();...is bad practice. His shop's coding standards prohibit it. And that's a common coding style standard. IDE's often warn you of that, right?
edit: and judging by your reply #7, you and yawmark would bond over a few jars of cold beverages. You seem think with one mind.

Similar Messages

  • Hi,i am trying to edit a BP and i get this error;An attempt was made to execute a dynamic method callon an initial(NULL-) object reference. The reference must refer to an object. what could be missing?

    BP_....AccountActivitiesOV.htm....application BPBT.
    what could be wrong? An attempt was made to execute a dynamic method callon an initial(NULL-) object reference. The reference must refer to an object???

    Hi Dunamis,
    Please check if below links can help you;
    Error on execution of Web Interface
    Help! I meet this Business Server Page (BSP) error CX_SY_REF_IS_INITIAL
    Strange Error in Transformation of 2LiS_03_BF with 0IC_C03
    Regards,
    Kamfrk.

  • TypeError: Error #1009: Cannot access a property or method of a null object reference.

    Hi all,
    I am new to ActionScript and Flash, and I am getting this error: TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at jessicaclucas_fla::MainTimeline/stopResumescroll()
    I have several different clips in one movie that have scrolling content. When I click a button to move to a different clip that doesn’t have a certain scroll, it gives me this error. I cannot figure out how to fix this. You can see the site I am working on: http://www.jessicaclucas.com. I would really appreciate some help! Thank you in advance. Here is the code:
    //Import TweenMax and the plugin for the blur filter
    import gs.TweenMax;
    import gs.plugins.BlurFilterPlugin;
    //Save the content’s and mask’s height.
    //Assign your own content height here!!
    var RESUMECONTENT_HEIGHT:Number = 1500;
    var RESUME_HEIGHT:Number = 450;
    //We want to know what was the previous y coordinate of the content (for the animation)
    var oldResumeY:Number = myResumecontent.y;
    //Position the content on the top left corner of the mask
    myResumecontent.x = myResume.x;
    myResumecontent.y = myResume.y;
    //Set the mask to our content
    myResumecontent.mask = myResume;
    //Create a rectangle that will act as the Resumebounds to the scrollMC.
    //This way the scrollMC can only be dragged along the line.
    var Resumebounds:Rectangle = new Rectangle(resumescrollMC.x,resumescrollMC.y,0,450);
    //We want to know when the user is Resumescrolling
    var Resumescrolling:Boolean = false;
    //Listen when the user is holding the mouse down on the scrollMC
    resumescrollMC.addEventListener(MouseEvent.MOUSE_DOWN, startResumescroll);
    //Listen when the user releases the mouse button
    stage.addEventListener(MouseEvent.MOUSE_UP, stopResumescroll);
    //This function is called when the user is dragging the scrollMC
    function startResumescroll(e:Event):void {
    //Set Resumescrolling to true
    Resumescrolling = true;
    //Start dragging the scrollMC
    resumescrollMC.startDrag(false,Resumebounds);
    //This function is called when the user stops dragging the scrollMC
    function stopResumescroll(e:Event):void {
    //Set Resumescrolling to false
    Resumescrolling = false;
    //Stop the drag
    resumescrollMC.stopDrag();
    //Add ENTER_FRAME to animate the scroll
    addEventListener(Event.ENTER_FRAME, enterResumeHandler);
    //This function is called in each frame
    function enterResumeHandler(e:Event):void {
    //Check if we are Resumescrolling
    if (Resumescrolling == true) {
    //Calculate the distance how far the scrollMC is from the top
    var distance:Number = Math.round(resumescrollMC.y - Resumebounds.y);
    //Calculate the percentage of the distance from the line height.
    //So when the scrollMC is on top, percentage is 0 and when its
    //at the bottom the percentage is 1.
    var percentage:Number = distance / RESUME_HEIGHT;
    //Save the old y coordinate
    oldResumeY = myResumecontent.y;
    //Calculate a new y target coordinate for the content.
    //We subtract the mask’s height from the contentHeight.
    //Otherwise the content would move too far up when we scroll down.
    //Remove the subraction to see for yourself!
    var targetY:Number = -((RESUMECONTENT_HEIGHT - RESUME_HEIGHT) * percentage) + myResume.y;
    //We only want to animate the scroll if the old y is different from the new y.
    //In our movie we animate the scroll if the difference is bigger than 5 pixels.
    if (Math.abs(oldResumeY - targetY) > 5) {
    //Tween the content to the new location.
    //Call the function ResumetweenFinished() when the tween is complete.
    TweenMax.to(myResumecontent, 0.3, {y: targetY, blurFilter:{blurX:22, blurY:22}, onComplete: ResumetweenFinished});
    //This function is called when the tween is finished
    function ResumetweenFinished():void {
    //Tween the content back to “normal” (= remove blur)
    TweenMax.to(myResumecontent, 0.3, {blurFilter:{blurX:0, blurY:0}});

    Hi again,
    Thank you for helping. I really appreciate it! Would it be easier to say, if resumescrollMC exists, then execute these functions? I was not able to figure out the null statement from your post. Here is what I am trying (though I am not sure it is possible). I declared the var resumescrollMC, and then I tried to put pretty much the entire code into an if (resumescrollMC == true) since this code only needs to be completed when resumescrollMC is on the stage. It is not working the way I have tried, but I am assuming I am setting up the code incorrectly. Or, an if statement is not supposed to be issued to an object:
    //Import TweenMax and the plugin for the blur filter
    import gs.TweenMax2;
    import gs.plugins.BlurFilterPlugin2;
    //Save the content's and mask's height.
    //Assign your own content height here!!
    var RESUMECONTENT_HEIGHT:Number = 1500;
    var RESUME_HEIGHT:Number = 450;
    var resumescrollMC:MovieClip;
    if (resumescrollMC == true) {
    //We want to know what was the previous y coordinate of the content (for the animation)
    var oldResumeY:Number = myResumecontent.y;
    //Position the content on the top left corner of the mask
    myResumecontent.x = myResume.x;
    myResumecontent.y = myResume.y;
    //Set the mask to our content
    myResumecontent.mask = myResume;
    //Create a rectangle that will act as the Resumebounds to the scrollMC.
    //This way the scrollMC can only be dragged along the line.
    var Resumebounds:Rectangle = new Rectangle(resumescrollMC.x,resumescrollMC.y,0,450);
    //We want to know when the user is Resumescrolling
    var Resumescrolling:Boolean = false;
    //Listen when the user is holding the mouse down on the scrollMC
    resumescrollMC.addEventListener(MouseEvent.MOUSE_DOWN, startResumescroll);
    //Listen when the user releases the mouse button
    stage.addEventListener(MouseEvent.MOUSE_UP, stopResumescroll);
    //This function is called when the user is dragging the scrollMC
    function startResumescroll(e:Event):void {
    //Set Resumescrolling to true
    Resumescrolling = true;
    //Start dragging the scrollMC
    resumescrollMC.startDrag(false,Resumebounds);
    //This function is called when the user stops dragging the scrollMC
    function stopResumescroll(e:Event):void {
    //Set Resumescrolling to false
    Resumescrolling = false;
    //Stop the drag
    resumescrollMC.stopDrag();
    //Add ENTER_FRAME to animate the scroll
    addEventListener(Event.ENTER_FRAME, enterResumeHandler);
    //This function is called in each frame
    function enterResumeHandler(e:Event):void {
    //Check if we are Resumescrolling
    if (Resumescrolling == true) {
    //Calculate the distance how far the scrollMC is from the top
    var distance:Number = Math.round(resumescrollMC.y - Resumebounds.y);
    //Calculate the percentage of the distance from the line height.
    //So when the scrollMC is on top, percentage is 0 and when its
    //at the bottom the percentage is 1.
    var percentage:Number = distance / RESUME_HEIGHT;
    //Save the old y coordinate
    oldResumeY = myResumecontent.y;
    //Calculate a new y target coordinate for the content.
    //We subtract the mask's height from the contentHeight.
    //Otherwise the content would move too far up when we scroll down.
    //Remove the subraction to see for yourself!
    var targetY:Number = -((RESUMECONTENT_HEIGHT - RESUME_HEIGHT) * percentage) + myResume.y;
    //We only want to animate the scroll if the old y is different from the new y.
    //In our movie we animate the scroll if the difference is bigger than 5 pixels.
    if (Math.abs(oldResumeY - targetY) > 5) {
    //Tween the content to the new location.
    //Call the function ResumetweenFinished() when the tween is complete.
    TweenMax.to(myResumecontent, 0.3, {y: targetY, blurFilter:{blurX:22, blurY:22}, onComplete: ResumetweenFinished});
    //This function is called when the tween is finished
    function ResumetweenFinished():void {
    //Tween the content back to "normal" (= remove blur)
    TweenMax.to(myResumecontent, 0.3, {blurFilter:{blurX:0, blurY:0}});

  • TypeError: Error #1009: Cannot access a property or method of a null object reference.      at FC_Home_A

    Dear Sir,
    I really need your valuable assistance i was about to finish a project but at very last moment i am stuck. Here is the explanation below...
    I have two files called "holder.swf" and "slide.swf" i want to improt the "slide.swf" using this action below
    var myLoader:Loader = new Loader();
    var url:URLRequest = new URLRequest("slide.swf");
    myLoader.load(url);
    addChild(myLoader);
    myLoader.x = 2;
    myLoader.y = 2;
    Also i have attached the flash file of "holder.swf". My concern is the moment i am calling the "slide.swf" inside the "holder.swf" it is showing the following error...
    " TypeError: Error #1009: Cannot access a property or method of a null object reference.
              at FC_Home_Ads_Holder_v2_fla::MainTimeline() "
    Here are the files uploaded for your reference, please download this file http://www.touchpixl.com/ForumsAdobecom.zip
    This error is being occured from "MainTimeline.as" file here is the code been use inside of this file below....
    package FC_Home_Ads_Holder_v2_fla
        import __AS3__.vec.*;
        import adobe.utils.*;
        import com.danehansen.*;
        import com.greensock.*;
        import com.greensock.easing.*;
        import com.greensock.plugins.*;
        import flash.accessibility.*;
        import flash.desktop.*;
        import flash.display.*;
        import flash.errors.*;
        import flash.events.*;
        import flash.external.*;
        import flash.filters.*;
        import flash.geom.*;
        import flash.globalization.*;
        import flash.media.*;
        import flash.net.*;
        import flash.net.drm.*;
        import flash.printing.*;
        import flash.profiler.*;
        import flash.sampler.*;
        import flash.sensors.*;
        import flash.system.*;
        import flash.text.*;
        import flash.text.engine.*;
        import flash.text.ime.*;
        import flash.ui.*;
        import flash.utils.*;
        import flash.xml.*;
        public dynamic class MainTimeline extends flash.display.MovieClip
            public function MainTimeline()
                new Vector.<String>(6)[0] = "Productivity";
                new Vector.<String>(6)[1] = "Leadership";
                new Vector.<String>(6)[2] = "Execution";
                new Vector.<String>(6)[3] = "Education";
                new Vector.<String>(6)[4] = "Speed of Trust";
                new Vector.<String>(6)[5] = "Sales";
                super();
                addFrameScript(0, this.frame1);
                return;
            public function init():void
                var loc1:*=null;
                com.greensock.plugins.TweenPlugin.activate([com.greensock.plugins.Aut oAlphaPlugin]);
                loc1 = new flash.net.URLLoader(new flash.net.URLRequest(this.XML_LOC));
                var loc2:*;
                this.next_mc.buttonMode = loc2 = true;
                this.prev_mc.buttonMode = loc2;
                stage.scaleMode = flash.display.StageScaleMode.NO_SCALE;
                stage.align = flash.display.StageAlign.TOP_LEFT;
                loc1.addEventListener(flash.events.Event.COMPLETE, this.xmlLoaded, false, 0, true);
                this.prev_mc.addEventListener(flash.events.MouseEvent.CLICK, this.minusClick, false, 0, true);
                this.next_mc.addEventListener(flash.events.MouseEvent.CLICK, this.plusClick, false, 0, true);
                return;
            public function xmlLoaded(arg1:flash.events.Event):void
                var loc1:*=null;
                var loc2:*=0;
                this.xmlData = new XML(arg1.target.data);
                loc2 = 0;
                while (loc2 < this.LABELS.length)
                    loc1 = new Btn(this.LABELS[loc2], loc2);
                    this.btnHolder_mc.addChild(loc1);
                    this.BTNS.push(loc1);
                    trace(this.LABELS[loc2]);
                    ++loc2;
                this.current = uint([email protected]);
                trace("-----width-----");
                trace(this.contentMask.width);
                var loc3:*=this.contentMask.width / this.LABELS.length;
                trace(loc3);
                loc2 = 0;
                while (loc2 < this.BTNS.length)
                    this.BTNS[loc2].width = loc3;
                    this.BTNS[loc2].x = loc3 * loc2;
                    ++loc2;
                this.btnHolder_mc.addEventListener(flash.events.MouseEvent.CLICK, this.numClick, false, 0, true);
                this.selectMovie();
                return;
            public function numClick(arg1:flash.events.MouseEvent):void
                this.killTimer();
                this.current = arg1.target.i;
                this.selectMovie();
                return;
            public function killTimer():void
                this.timerGoing = false;
                if (this.timer)
                    this.timer.reset();
                    this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
                    this.timer = null;
                return;
            public function selectMovie():void
                if (this.timerGoing)
                    this.timer = new flash.utils.Timer(uint(this.xmlData.ad[com.danehansen.MyMath.modulo(t his.current, this.xmlData.ad.length())][email protected]), 1);
                    this.timer.start();
                    this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
                while (this.holder_mc.numChildren > 0)
                    this.holder_mc.removeChild(this.holder_mc.getChildAt(0));
                var loc1:*=new flash.display.Loader();
                loc1.load(new flash.net.URLRequest(this.xmlData.ad[com.danehansen.MyMath.modulo(thi s.current, this.xmlData.ad.length())][email protected]));
                this.holder_mc.addChild(loc1);
                var loc2:*=0;
                while (loc2 < this.BTNS.length)
                    this.BTNS[loc2].deselect();
                    ++loc2;
                this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].select();
                var loc3:*=this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].x + this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].width / 2 + this.btnHolder_mc.x;
                trace("addLength:" + this.xmlData.ad.length());
                trace(loc3, com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length()));
                com.greensock.TweenLite.to(this.indicator_mc, 0.3, {"x":loc3, "ease":com.greensock.easing.Cubic.easeOut});
                loc1.contentLoaderInfo.addEventListener(flash.events.Event.COMPLETE, this.adLoaded, false, 0, true);
                return;
            public function adLoaded(arg1:flash.events.Event):void
                var evt:flash.events.Event;
                var loc1:*;
                evt = arg1;
                try
                    evt.target.content.xmlData = this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())];
                catch (er:Error)
                return;
            public function minusClick(arg1:flash.events.MouseEvent):void
                this.killTimer();
                var loc1:*;
                var loc2:*=((loc1 = this).current - 1);
                loc1.current = loc2;
                this.selectMovie();
                return;
            public function plusClick(arg1:flash.events.Event):void
                if (arg1.type != "timer")
                    this.killTimer();
                var loc1:*;
                var loc2:*=((loc1 = this).current + 1);
                loc1.current = loc2;
                this.selectMovie();
                trace("next");
                return;
            public function ENDED(arg1:flash.events.Event):void
                if (arg1.type != "timer")
                    this.killTimer();
                var loc1:*;
                var loc2:*=((loc1 = this).current + 1);
                loc1.current = loc2;
                this.selectMovie();
                trace("next");
                return;
            public function STARTED(arg1:flash.events.Event):void
                this.killTimer();
                return;
            function frame1():*
                this.timerGoing = true;
                addEventListener("endNow", this.ENDED, false, 0, true);
                addEventListener("startNow", this.STARTED, false, 0, true);
                this.init();
                return;
            public const XML_LOC:String=stage.loaderInfo.parameters.xmlLoc ? stage.loaderInfo.parameters.xmlLoc : "home_ads.xml";
            public const LABELS:__AS3__.vec.Vector.<String>=new Vector.<String>(6);
            public const BTNS:__AS3__.vec.Vector.<Btn>=new Vector.<Btn>();
            public const TRANSITION_TIME:Number=0.2;
            public var contentMask:flash.display.MovieClip;
            public var btnHolder_mc:flash.display.MovieClip;
            public var holder_mc:flash.display.MovieClip;
            public var indicator_mc:flash.display.MovieClip;
            public var prev_mc:flash.display.MovieClip;
            public var next_mc:flash.display.MovieClip;
            public var current:int;
            public var xmlData:XML;
            public var timer:flash.utils.Timer;
            public var timerGoing:Boolean;
    Here is the folder uploaded on the server for you to get clear picture, please click on this link to download the entire folder. http://www.touchpixl.com/ForumsAdobecom.zip
    I am not being able to resolve the issue, it needs a master to get the proper solution. I would request you to help me.
    Thanks & Regards
    Sanjib Das

    Here is the entire code of MainTimeline.as below, please correct it.
    package FC_Home_Ads_Holder_v2_fla
        import __AS3__.vec.*;
        import adobe.utils.*;
        import com.danehansen.*;
        import com.greensock.*;
        import com.greensock.easing.*;
        import com.greensock.plugins.*;
        import flash.accessibility.*;
        import flash.desktop.*;
        import flash.display.*;
        import flash.errors.*;
        import flash.events.*;
        import flash.external.*;
        import flash.filters.*;
        import flash.geom.*;
        import flash.globalization.*;
        import flash.media.*;
        import flash.net.*;
        import flash.net.drm.*;
        import flash.printing.*;
        import flash.profiler.*;
        import flash.sampler.*;
        import flash.sensors.*;
        import flash.system.*;
        import flash.text.*;
        import flash.text.engine.*;
        import flash.text.ime.*;
        import flash.ui.*;
        import flash.utils.*;
        import flash.xml.*;
        public dynamic class MainTimeline extends flash.display.MovieClip
            public function MainTimeline()
                new Vector.<String>(6)[0] = "Productivity";
                new Vector.<String>(6)[1] = "Leadership";
                new Vector.<String>(6)[2] = "Execution";
                new Vector.<String>(6)[3] = "Education";
                new Vector.<String>(6)[4] = "Speed of Trust";
                new Vector.<String>(6)[5] = "Sales";
                super();
                addFrameScript(0, this.frame1);
                return;
            public function init():void
                var loc1:*=null;
                com.greensock.plugins.TweenPlugin.activate([com.greensock.plugins.AutoAlphaPlugin]);
                loc1 = new flash.net.URLLoader(new flash.net.URLRequest(this.XML_LOC));
                var loc2:*;
                this.next_mc.buttonMode = loc2 = true;
                this.prev_mc.buttonMode = loc2 = true;
                stage.scaleMode = flash.display.StageScaleMode.NO_SCALE;
                stage.align = flash.display.StageAlign.TOP_LEFT;
                loc1.addEventListener(flash.events.Event.COMPLETE, this.xmlLoaded, false, 0, true);
                this.prev_mc.addEventListener(flash.events.MouseEvent.CLICK, this.minusClick, false, 0, true);
                this.next_mc.addEventListener(flash.events.MouseEvent.CLICK, this.plusClick, false, 0, true);
                return;
            public function xmlLoaded(arg1:flash.events.Event):void
                var loc1:*=null;
                var loc2:*=0;
                this.xmlData = new XML(arg1.target.data);
                loc2 = 0;
                while (loc2 < this.LABELS.length)
                    loc1 = new Btn(this.LABELS[loc2], loc2);
                    this.btnHolder_mc.addChild(loc1);
                    this.BTNS.push(loc1);
                    trace(this.LABELS[loc2]);
                    ++loc2;
                this.current = uint([email protected]);
                trace("-----width-----");
                trace(this.contentMask.width);
                var loc3:*=this.contentMask.width / this.LABELS.length;
                trace(loc3);
                loc2 = 0;
                while (loc2 < this.BTNS.length)
                    this.BTNS[loc2].width = loc3;
                    this.BTNS[loc2].x = loc3 * loc2;
                    ++loc2;
                this.btnHolder_mc.addEventListener(flash.events.MouseEvent.CLICK, this.numClick, false, 0, true);
                this.selectMovie();
                return;
            public function numClick(arg1:flash.events.MouseEvent):void
                this.killTimer();
                this.current = arg1.target.i;
                this.selectMovie();
                return;
            public function killTimer():void
                this.timerGoing = false;
                if (this.timer)
                    this.timer.reset();
                    this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
                    this.timer = null;
                return;
            public function selectMovie():void
                if (this.timerGoing)
                    this.timer = new flash.utils.Timer(uint(this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())][email protected]), 1);
                    this.timer.start();
                    this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
                while (this.holder_mc.numChildren > 0)
                    this.holder_mc.removeChild(this.holder_mc.getChildAt(0));
                var loc1:*=new flash.display.Loader();
                loc1.load(new flash.net.URLRequest(this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())][email protected]));
                this.holder_mc.addChild(loc1);
                var loc2:*=0;
                while (loc2 < this.BTNS.length)
                    this.BTNS[loc2].deselect();
                    ++loc2;
                this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].select();
                var loc3:*=this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].x + this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].width / 2 + this.btnHolder_mc.x;
                trace("addLength:" + this.xmlData.ad.length());
                trace(loc3, com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length()));
                com.greensock.TweenLite.to(this.indicator_mc, 0.3, {"x":loc3, "ease":com.greensock.easing.Cubic.easeOut});
                loc1.contentLoaderInfo.addEventListener(flash.events.Event.COMPLETE, this.adLoaded, false, 0, true);
                return;
            public function adLoaded(arg1:flash.events.Event):void
                var evt:flash.events.Event;
                var loc1:*;
                evt = arg1;
                try
                    evt.target.content.xmlData = this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())];
                catch (er:Error)
                return;
            public function minusClick(arg1:flash.events.MouseEvent):void
                this.killTimer();
                var loc1:*;
                var loc2:*=((loc1 = this).current - 1);
                loc1.current = loc2;
                this.selectMovie();
                return;
            public function plusClick(arg1:flash.events.Event):void
                if (arg1.type != "timer")
                    this.killTimer();
                var loc1:*;
                var loc2:*=((loc1 = this).current + 1);
                loc1.current = loc2;
                this.selectMovie();
                trace("next");
                return;
            public function ENDED(arg1:flash.events.Event):void
                if (arg1.type != "timer")
                    this.killTimer();
                var loc1:*;
                var loc2:*=((loc1 = this).current + 1);
                loc1.current = loc2;
                this.selectMovie();
                trace("next");
                return;
            public function STARTED(arg1:flash.events.Event):void
                this.killTimer();
                return;
            function frame1():*
                this.timerGoing = true;
                addEventListener("endNow", this.ENDED, false, 0, true);
                addEventListener("startNow", this.STARTED, false, 0, true);
                this.init();
                return;
            public const XML_LOC:String=stage.loaderInfo.parameters.xmlLoc ? stage.loaderInfo.parameters.xmlLoc : "home_ads.xml";
            public const LABELS:__AS3__.vec.Vector.<String>=new Vector.<String>(6);
            public const BTNS:__AS3__.vec.Vector.<Btn>=new Vector.<Btn>();
            public const TRANSITION_TIME:Number=0.2;
            public var contentMask:flash.display.MovieClip;
            public var btnHolder_mc:flash.display.MovieClip;
            public var holder_mc:flash.display.MovieClip;
            public var indicator_mc:flash.display.MovieClip;
            public var prev_mc:flash.display.MovieClip;
            public var next_mc:flash.display.MovieClip;
            public var current:int;
            public var xmlData:XML;
            public var timer:flash.utils.Timer;
            public var timerGoing:Boolean;

  • The Ole #1009: Cannot access a property or method of a null object reference ...

    To anyone that can help me I say thank you first I also say thank you to anyone else that attempts to help.  I am sure this will be an easy one for most of you but I am completely stumped.  I am a newbee to AS.
    I have a movie that has navigation butttons and they all work find.  On a scene in the movie I have an image that grows grows from alpha 0 to 100%.  When you Mouse_Over the alpha drops to -.6 and when you Mouse_Out it goes back to 1.  I have this in frame 1 and this scene takes place between frames 115 and 166.  When I execute a Mouse.Click on the movieClip (contact_us_gel) I am moved to the emailScene.  The bad news is when I click the movieClip I get the below.  I change the movieClip to be on the stage for entire movie from frame 1 to 166 in hopes to loose this error.  As you can tell that didn't work.  Below is the AS code that I have written. I use this same code for my navigation buttons and I have no issues.  I have officially had my butt kicked by this one.
    I have tried removing the eventListner and that just really messes me up until I go to the homeScene (frame 1) and add the event listner back for he contact_us_gel.
    The Trace & Error from the outPut.....
    Frame on Gel MouseOut 228 <<-- Trace statement when I click the gel / This is also where the email scene stars
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
        at barnumRealtyGroup_fla::MainTimeline/outCUG()[barnumRealtyGroup_fla.MainTimeline::frame1:1 31]
    The code
    //-- ContactUsGel --\\
    contact_us_gel.addEventListener(MouseEvent.MOUSE_OVER,rolloverCUG);
    contact_us_gel.addEventListener(MouseEvent.MOUSE_OUT,outCUG);
    contact_us_gel.addEventListener(MouseEvent.CLICK,playHomeSceneCUG);
    function rolloverCUG(event:MouseEvent):void{
    contact_us_gel.alpha -= 0.6
    function outCUG(evnt:MouseEvent):void{
        trace("Frame on Gel MouseOut "+this.currentFrame);
        contact_us_gel.alpha = 1; //this is where I am dying.... This is frame1:Line131
    function playHomeSceneCUG(event:MouseEvent):void{
        trace("Frame on Gel Going to Email "+this.currentFrame);
        gotoAndPlay("emailScene");
    Thank you in advance...

    I follow you and something that I failed to mention is that this is happening only when I execute a MouseEvent.Click on contact_us_gel.  While looking at this after my post and testing what is happening is outCUG() is called during the MouseEvent.Click which calls playHomeSceneCUG() << takes me to emailScene.  That is what is killing me I have  not found a proper way to isolate that MouseEvent.Click and not allow it to call outCUG().  I know you are the GURU but did I confuse you.

  • DataGrid - Error #1009: Cannot access a property or method of a null object reference.

    I am getting a runtime error when I click a button that fires
    the addPerson function.
    TypeError: Error #1009: Cannot access a property or method of
    a null object reference.
    at main/addPerson()[C:\Documents and Settings\edunn\My
    Documents\Flex Builder 3\workspace2\Test-1\src\main.mxml:178]
    at main/___main_Button4_click()[C:\Documents and
    Settings\edunn\My Documents\Flex Builder
    3\workspace2\Test-1\src\main.mxml:228]
    I am new to Action Script - and object programming - so
    understand...
    I do not understand what I have done wrong here...
    I have a result list coming from an external web service that
    populates in a datagrid. I'd like to be able to update that
    datagrid and then push back to the web service the new array.
    Any ideas?????
    import mx.rpc.events.ResultEvent;
    import mx.rpc.events.FaultEvent;
    import mx.collections.ArrayCollection;
    import generated.webservices.FxAppiaUserFeaturesService;
    import generated.webservices.UserSimRingConfig;
    import generated.webservices.SimRingType;
    public var plist:ArrayCollection
    //Updated Function to populate the data from WS
    public function
    retrieveUserSimRingConfig(e:ResultEvent):void {
    var UsrSimRngCfgNumList:Array = new
    UserSimRingConfig().simRingNumberList;
    var plist:ArrayCollection = e.result.simRingNumberList;
    dgSimPhoneList.dataProvider = plist;
    if (e.result.active) {
    chboxSimultaneousRingPhones.selected=true;
    } else {
    chboxSimultaneousRingPhones.selected=false;
    if (e.result.simRingType == "NO_RING_WHILE_ONCALL") {
    chboxSimultaneousRing.selected=true;
    } else {
    chboxSimultaneousRing.selected = false;
    // Add a person to the ArrayCollection.
    public function addPerson():void {
    plist.addItem({simRingNumberList:txtPhoneNumber1.text});
    I posted this in the General Section first by
    mistake...

    can u explain abt this line
    var plist:ArrayCollection = e .
    result.simRingNumberList;

  • Error #1009 while loading swf "Cannot access a property or method of a null object reference."

    Hello
    I'm trying to load a swf called "polaroids.swf" into my main swf called "09replacesSWF.swf". I keep getting the error when I test the movie. I'm completely lost and have been at this for hours. If I just test polaroids.fla the movie works fine but if I try to load it into 09replacesSWF.swf, I get the error. I need some help PLEASE!!!!!
    I tried to debug the movie and flash says......."Cannot display source code at this location".
    ....... TypeError: Error #1009: Cannot access a property or method of a null object reference.
        at Polaroids$iinit()
    Here is my AS code
    package {
        import flash.display.*;
        import flash.filters.*;
        import flash.utils.*;
        import flash.net.*;
        import flash.events.*;
        import flash.filters.DropShadowFilter;
        import caurina.transitions.*;
        public class Polaroids extends MovieClip {
            //Variables
            public var stageContainer:MovieClip;
            private var _scaleTempo:Number;
            private var _thumbStr:Number;
            private var _stageHeight:Number;
            private var _stageWidth:Number;
            private var _count:Number;
            private var _initBGHeight:Number;
            private var _initBGWidth:Number;
            //Arrays
            private var _backgroundImageArr:Array;
            private var _imageURLArr:Array;
            private var _imageCaptionArr:Array;
            private var _imagesArr:Array;
            //Bitmaps
            private var _image:Bitmap;
            private var _backgroundImage:Bitmap;
            private var _bitmap:BitmapData;
            private var _backgroundBitmap:BitmapData;
            //XML
            private var _xmlLoader:URLLoader;
            private var _imageXML:XML;
            //Holders
            private var _imageContainer:ImageContainer;
            private var _backgroundImageHolder:MovieClip;
            //Image States
            private var _activeImage = null;
            private var _previousActiveImage = null;
            //Loaders
            private var backgroundImageLoader:Loader;
            public function Polaroids() {
                //sets up initial variable values
                _count = 0;
                _backgroundImageArr=new Array;
                _imageURLArr=new Array;
                _imageCaptionArr=new Array;
                _imagesArr=new Array;
                _scaleTempo=9;
                _thumbStr = .3;
                backgroundImageLoader = new Loader();
                _stageHeight=stage.stageHeight;
                _stageWidth=stage.stageWidth;
                _backgroundImageHolder = new MovieClip();
                stageContainer = new MovieClip();
                addChild(stageContainer);
                init();
            //Add Stage Listener
            private function addedToStage(e:Event):void {
                stage.addEventListener(Event.RESIZE, onResize);
            Initialise
            private function init():void {
                //Setup stage
                stage.align     = StageAlign.TOP_LEFT;
                stage.scaleMode = StageScaleMode.NO_SCALE;
                //Load XML
                var _xmlLoader:URLLoader=new URLLoader;
                _xmlLoader.load(new URLRequest("photos.xml"));
                _xmlLoader.addEventListener(Event.COMPLETE,processXML);
                this.addEventListener(Event.ADDED_TO_STAGE, addedToStage);
            Process XML
            private function processXML(e:Event):void {
                _imageXML=new XML(e.target.data);
                _backgroundImageArr[0] = [email protected];
                for (var i:int=0; i < _imageXML.*.length(); i++) {
                    _imageURLArr[i]=_imageXML.image[i][email protected];
                    _imageCaptionArr[i]=_imageXML.image[i][email protected];
                loadImages();
                loadBackgroundImage();
            Load Background Image
            private function loadBackgroundImage():void {
                backgroundImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,addBack ground);
                backgroundImageLoader.load(new URLRequest(_backgroundImageArr[0]));
            Add background image to stage
            private function addBackground(e:Event):void {
                _backgroundImage=Bitmap(e.target.content);
                _backgroundBitmap=_image.bitmapData;
                _backgroundImage.smoothing = true;
                _backgroundImageHolder.addChild(_backgroundImage);
                _initBGHeight = backgroundImageLoader.contentLoaderInfo.height;
                _initBGWidth = backgroundImageLoader.contentLoaderInfo.width;
                if ((_initBGWidth/_initBGHeight) > (stage.stageWidth/stage.stageHeight)) {
                    _backgroundImageHolder.height = stage.stageHeight;
                    _backgroundImageHolder.width =  _backgroundImageHolder.height * _initBGWidth / _initBGHeight;
                } else {
                    _backgroundImageHolder.width = stage.stageWidth;
                    _backgroundImageHolder.height= _backgroundImageHolder.width * _initBGHeight / _initBGWidth;
            Load Images
            private function loadImages():void {
                for (var i:int=0; i < _imageURLArr.length; i++) {
                    var imageLoader:Loader=new Loader;
                    imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,addImage);
                    imageLoader.load(new URLRequest(_imageURLArr[i]));
            Add images to MovieClip on Stage
            private function addImage(e:Event):void {
                _image=Bitmap(e.target.content);
                _bitmap=_image.bitmapData;
                _image.smoothing = true;
                _imageContainer = new ImageContainer();
                _imageContainer.falseBtn.buttonMode = true;
                _imageContainer.falseBtn.doubleClickEnabled = true;
                _imageContainer.imageHolder.addChild(_image);//Add Bitmap to a MoviClip _imageContainer
                _image.x = _imageContainer.width/2 - (_image.width/2 + 15);
                _image.y = _imageContainer.height/2 - (_image.height/2 + 80) ;
                _imageContainer.imageCaption.text = _imageCaptionArr[_count];
                _imageContainer.scaleX = _thumbStr;
                _imageContainer.scaleY = _thumbStr;
                _imageContainer.rotation = 30 - 60 * Math.random();
                if (Math.round(Math.random() * 1) == 1) {
                    _imageContainer.y=stage.stageHeight * Math.random() + _imageContainer.height * 2;
                    if (Math.round(Math.random() * 1) == 1) {
                        _imageContainer.x=stage.stageWidth + _imageContainer.width * 2;
                    } else {
                        _imageContainer.x=- _imageContainer.width * 2;
                } else {
                    _imageContainer.x=stage.stageWidth * Math.random() + _imageContainer.width * 2;
                    if (Math.round(Math.random() * 1) == 1) {
                        _imageContainer.y=stage.stageHeight + _imageContainer.height * 2;
                    } else {
                        _imageContainer.y=- _imageContainer.height * 2;
                //Setup Attributes
                _imageContainer.newX = Math.round((_imageContainer.width/2) + (stage.stageWidth-_imageContainer.width)*Math.random());
                _imageContainer.newY = Math.round((_imageContainer.height/2) + (stage.stageHeight-_imageContainer.height)*Math.random());
                _imageContainer.oldRotation = _imageContainer.rotation;
                _imageContainer.oldX = _imageContainer.newX;
                _imageContainer.oldY = _imageContainer.newY;
                _imageContainer.startX = _imageContainer.x;
                _imageContainer.startY = _imageContainer.y;
                _imageContainer.oldHeight = _imageContainer.scaleY;
                _imageContainer.oldWidth = _imageContainer.scaleX;
                _imageContainer.id = _count;
                _imageContainer.addEventListener(Event.ENTER_FRAME, animateImage);
                _imageContainer.addEventListener(MouseEvent.MOUSE_DOWN,dragImage);
                _imageContainer.addEventListener(MouseEvent.MOUSE_UP,dropImage);
                _imageContainer.addEventListener(MouseEvent.MOUSE_OUT, dropImage);
                _imageContainer.falseBtn.addEventListener(MouseEvent.DOUBLE_CLICK, setup_activeImage);
                _imagesArr.push(_imageContainer);//Add image reference to an Array
                _imageContainer.filters = [new DropShadowFilter(0,0,0,.9,8,8,1,1,false,false)];
                //Button Listeners
                _imageContainer.nextBtn.visible = false;
                _imageContainer.previousBtn.visible = false;
                _imageContainer.nextBtn.buttonMode = true;
                _imageContainer.previousBtn.buttonMode = true;
                _imageContainer.nextBtn.addEventListener(MouseEvent.MOUSE_DOWN, nextImage);
                _imageContainer.previousBtn.addEventListener(MouseEvent.MOUSE_DOWN, previousImage);
                //Add Container to Stage
                addChild(_imageContainer);
                stageContainer.addChild(_imageContainer);
                _count++;
            Animate Images onto Stage
            private function animateImage(e:Event):void {
                e.target.y += (e.target.newY - e.target.y) / _scaleTempo;
                e.target.x += (e.target.newX - e.target.x) / _scaleTempo;
                if (Math.round(e.target.y) == e.target.newY) {
                    e.target.removeEventListener(Event.ENTER_FRAME, animateImage);
            Drag & Drop Images
            private function dragImage(e:MouseEvent) {
                if (e.currentTarget != _activeImage) {
                    e.currentTarget.startDrag();
                    if (_activeImage == null) {
                        stageContainer.setChildIndex(DisplayObject(e.currentTarget), stageContainer.numChildren-1);
                    } else {
                        stageContainer.setChildIndex(DisplayObject(e.currentTarget), stageContainer.numChildren-2);
            private function dropImage(e:MouseEvent) {
                if (e.currentTarget != _activeImage) {
                    e.currentTarget.stopDrag();
                    e.currentTarget.oldX = e.currentTarget.x;
                    e.currentTarget.oldY = e.currentTarget.y;
            onResize Handler
            private function onResize(e:Event):void {
                for (var i:int = 0; i<_imagesArr.length; i++) {
                    if (_imagesArr[i] != _activeImage) {
                        _imagesArr[i].x = Math.round(stage.stageWidth * (_imagesArr[i].x/_stageWidth));
                        _imagesArr[i].y = Math.round(stage.stageHeight * (_imagesArr[i].y/_stageHeight));
                    } else {
                        _activeImage.x = stage.stageWidth/2;
                        _activeImage.y = stage.stageHeight/2;
                    _imagesArr[i].oldX = Math.round(stage.stageWidth * (_imagesArr[i].oldX/_stageWidth));
                    _imagesArr[i].oldY = Math.round(stage.stageHeight * (_imagesArr[i].oldY/_stageHeight));
                    _imagesArr[i].newX = Math.round(stage.stageWidth * (_imagesArr[i].newX/_stageWidth));
                    _imagesArr[i].newY = Math.round(stage.stageHeight * (_imagesArr[i].newY/_stageHeight));
                    _imagesArr[i].startX = Math.round(stage.stageWidth * (_imagesArr[i].startX/_stageWidth));
                    _imagesArr[i].startY = Math.round(stage.stageHeight * (_imagesArr[i].startY/_stageHeight));
                //Background Resizer
                if ((_initBGWidth/_initBGHeight) > (stage.stageWidth/stage.stageHeight)) {
                    _backgroundImageHolder.height = stage.stageHeight;
                    _backgroundImageHolder.width =  _backgroundImageHolder.height * _initBGWidth / _initBGHeight;
                } else {
                    _backgroundImageHolder.width = stage.stageWidth;
                    _backgroundImageHolder.height= _backgroundImageHolder.width * _initBGHeight / _initBGWidth;
                _stageWidth = stage.stageWidth;
                _stageHeight = stage.stageHeight;
            Handle Selected Image
            private function zoomImage():void {
                stageContainer.setChildIndex(_activeImage, stageContainer.numChildren-1);
                Tweener.addTween(_activeImage,{scaleX: 1, scaleY: 1, rotation: 0, x: _stageWidth/2 , y: _stageHeight/2, time: 1});
                _activeImage.nextBtn.visible = true;
                _activeImage.previousBtn.visible = true;
            private function returnImage():void {
                stageContainer.setChildIndex(_previousActiveImage, stageContainer.numChildren-2);
                Tweener.addTween(_previousActiveImage,{scaleX: .3, scaleY: .3, rotation: _previousActiveImage.oldRotation, x: _previousActiveImage.oldX , y: _previousActiveImage.oldY, time: 1});
                _previousActiveImage.nextBtn.visible = false;
                _previousActiveImage.previousBtn.visible = false;
            private function setup_activeImage(e:Event):void {
                if ((_activeImage == null) && (_previousActiveImage == null)) {
                    _activeImage = e.currentTarget.parent;
                    zoomImage();
                } else if (e.currentTarget.parent != _activeImage) {
                    _previousActiveImage = _activeImage;
                    _activeImage = e.currentTarget.parent;
                    zoomImage();
                    returnImage();
                } else {
                    Tweener.addTween(_activeImage,{scaleX: .3, scaleY: .3, rotation: _activeImage.oldRotation, x: _activeImage.oldX , y: _activeImage.oldY, time: 1});
                    _activeImage.nextBtn.visible = false;
                    _activeImage.previousBtn.visible = false;
                    _activeImage = null;
                    _previousActiveImage = null;
            Button Handlers
            private function nextImage(e:MouseEvent):void {
                var imageID = int(e.currentTarget.parent.id);
                if (imageID < _imagesArr.length - 1) {
                    _previousActiveImage = e.currentTarget.parent;
                    _activeImage = _imagesArr[imageID+1];
                    zoomImage();
                    returnImage();
                } else {
                    _previousActiveImage = e.currentTarget.parent;
                    _activeImage = _imagesArr[0];
                    zoomImage();
                    returnImage();
            private function previousImage(e:MouseEvent):void {
                var imageID = int(e.currentTarget.parent.id);
                if (imageID != 0) {
                    _previousActiveImage = e.currentTarget.parent;
                    _activeImage = _imagesArr[imageID-1];
                    zoomImage();
                    returnImage();
                } else {
                    _previousActiveImage = e.currentTarget.parent;
                    _activeImage = _imagesArr[_imagesArr.length-1];
                    zoomImage();
                    returnImage();
    }

    Raymond,
    The error is at line 55....when I debug
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
        at Polaroids$iinit()[/Volumes/Herman's Passport/Music Rocka/RockaGallery/Polaroids.as:55]
    So i'm looking in the code.....

  • Air Sqlite data paging (Cannot access a property or method of a null object reference.)

    I want to paging this data from my table but i get this error:
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    public function retrieveData():void
        var stmt:SQLStatement = new SQLStatement();
        stmt.sqlConnection = sqlConn;
        sqlConn.addEventListener(SQLErrorEvent.ERROR, errorHandler);
        stmt.addEventListener(SQLEvent.RESULT, selectResult);
        stmt.text = "SELECT * FROM empleado";
        stmt.execute(2);
        var result:SQLResult = stmt.getResult();
        acEmpleados = new ArrayCollection(result.data);
    private function selectResult(event:SQLEvent):void
        var stmt:SQLStatement = new SQLStatement();
        stmt.sqlConnection = sqlConn;
        var result:SQLResult = stmt.getResult();
        if (result.data != null)
            if (!result.complete)
                stmt.next(2);
            else
                stmt.removeEventListener(SQLEvent.RESULT, selectResult);
    What do i have to do?

    I solved the issue by getting rid of the creationCompleteHandler event handlers for the KPI charts. But, since I am just days into flex development, I would be indebted if someone could explain to me why that was creating problems.

  • Error: "Cannot access a property or method of a null object reference"

    I am getting the following action script error when I try to play my exported .swf in flash player 9.  If I hit "continue" or "dismiss all" it plays the file fine.  Is there a way to fix or at least supress this error message?
    Action Script Error:
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
         at mx.managers::LayoutManager/set usePhasedInstantiation()
         at mx.core::Application()
         at template3427435882-34461-4573-128-41-612353629238248()
         at _template_mx_managers_SystemManager3427435882-34461-4573-128-41-612353629238248/create()
         at mx.managers::SystemManager/initializeTopLevelWindow()
         at mx.managers::SystemManager/docFrameHandler()

    Hi Owen,
    it looks like you have debug version of flash player installed. If you uninstall it through Control Panel and install regular (release) version from Adobe website, the message should go away.
    Margaret

  • Preloader :Error #1009: Cannot access a property or method of a null object reference.

    Hi,
    I'm having a lot of trouble getting a preloader to work on my Flash website. I'm new to actionscript, the site works fine but when I place the preloader in frame 1, I get.
    Error#1009: Cannot access a property or method of a null object reference.
    Then it lists three areas. The buttons on the site don't work anymore.
    I've followed the Lynda com tutorials so don't know what is causing this error.
    Included is the word.doc with the error code, preloader code, the main flash frame 2 code and the debug information.
    Any help would be great.
    Thanks!

    You need to make sure 'cards' is named properly and is present when that line of code executes.  If it is somewhere down a timeline, it is not present.
    As far as your preloader code goes, what is infoLoader.  I have to assume it's some form of component since you don't have any code to instantiate it.

  • TypeError: Error #1009: Cannot access a property or method of a null object reference. at mx.controls::AdvancedDataGrid/findHeaderRenderer()

    Can anyone throw any light on this obscure Flex error?...
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at mx.controls::AdvancedDataGrid/findHeaderRenderer()[...path...\projects\datavisualisation\ src\mx\controls\AdvancedDataGrid.as:1350]
    at mx.controls::AdvancedDataGrid/mouseEventToItemRenderer()[...path...\projects\datavisualis ation\src\mx\controls\AdvancedDataGrid.as:1315]
    at mx.controls.listClasses::AdvancedListBase/mouseMoveHandler()[...path...\projects\datavisu alisation\src\mx\controls\listClasses\AdvancedListBase.as:8091]
    I found a related bug reported on Jira: https://bugs.adobe.com/jira/browse/FLEXDMV-1631
    But in our case, we have no zoom effect.  It may be timing related, as there is a lot of computation going on when this page, and the ADG is first initialised.
    Please?... Any suggestions or workarounds?  We don't want this falling over in the hands of our customers.
    <rant> And people wonder why I hate Flex!?  These obscure instabilities never happen when I develop Pure ActionScript.  The Flash platform is wonderfully stable.  But as soon as you bring Flex into play, things take longer to develop, it's a struggle to extend or change the behaviour of the bloated components, and everything falls apart as these bugs begin to surface.</rant>

    facing the same problem... sdk 4.1. no solution for about 2 years ????

  • Error 1009 - TypeError: Error #1009: Cannot access a property or method of a null object reference.

    hello,
    I am trying to load a menu as an external file ....  and getting this :  TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at com::menu()
    here is my code:
    if(!menuLoader){   
    var menuRequest:URLRequest = new URLRequest("menu.swf");
    var menuLoader:Loader = new Loader();
    menuLoader.load(menuRequest);
    container.addChild(menuLoader);
    menuLoader.x = 700;
    menuLoader.y = 50;
    can anyone give me a helping hand?
    thanks in advance.

    use:
    here is my code:
    if(menuLoader!=null){   
    var menuRequest:URLRequest = new URLRequest("menu.swf");
    var menuLoader:Loader = new Loader();
    menuLoader.load(menuRequest);
    container.addChild(menuLoader);
    menuLoader.x = 700;
    menuLoader.y = 50;

  • Module Chart component Error #1009: Cannot access a property or method of a null object reference

    Is there a known bug when displaying a chart component that is defined in a module. When attempting to display a chart component defined in a module it crashes indicating Error #1009: Cannot access a property or method of a null object reference.
    It crashes at the following location in ChartBase.as. Somehow when loading the chart the  styleManager.getStyleDeclaration("mx.charts.chartClasses.ChartBase"); returns null so when using the setStyle methods the exception occurs.
    private function initStyles():Boolean
            HaloDefaults.init(styleManager);
      var chartBaseStyle:CSSStyleDeclaration = styleManager.getStyleDeclaration("mx.charts.chartClasses.ChartBase");
      chartBaseStyle.setStyle("chartSeriesStyles", HaloDefaults.chartBaseChartSeriesStyles);
      chartBaseStyle.setStyle("fill", new SolidColor(0xFFFFFF, 0));
      chartBaseStyle.setStyle("calloutStroke", new SolidColorStroke(0x888888,2));
            return true;
    Added note: There is a chart component in the application that works fine.  The only way I can get  the chart in the module to display is to add the following workaround preinitializer but it severly impacts the loading of the module. Is there a way around this.
    protected function preinitializeHandler(event:FlexEvent):void
       var styleObjects:Array = FlexGlobals.topLevelApplication.styleManager.selectors;
       for each(var styleObj:String in styleObjects)  {
        var style:CSSStyleDeclaration = FlexGlobals.topLevelApplication.styleManager.getStyleDeclaration(styleObj);
        styleManager.setStyleDeclaration(styleObj, style, true);   
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at mx.charts.chartClasses::ChartBase/initStyles()[E:\dev\4.y\frameworks\projects\charts\src\ mx\charts\chartClasses\ChartBase.as:1862]
    at mx.charts.chartClasses::ChartBase/set moduleFactory()[E:\dev\4.y\frameworks\projects\charts\src\mx\charts\chartClasses\ChartBas e.as:1894]
    at mx.charts.chartClasses::PolarChart/set moduleFactory()[E:\dev\4.y\frameworks\projects\charts\src\mx\charts\chartClasses\PolarCha rt.as:223]
    at mx.charts::PieChart/set moduleFactory()[E:\dev\4.y\frameworks\projects\charts\src\mx\charts\PieChart.as:203]
    at spark.components::Group/http://www.adobe.com/2006/flex/mx/internal::elementAdded()[E:\dev\4.y\frameworks\projects\spark\src\spark\components\Group.as:1590]
    at spark.components::Group/addElementAt()[E:\dev\4.y\frameworks\projects\spark\src\spark\com ponents\Group.as:1387]
    at spark.components::SkinnableContainer/addElementAt()[E:\dev\4.y\frameworks\projects\spark\ src\spark\components\SkinnableContainer.as:775]
    at mx.states::AddItems/addItemsToContentHolder()[E:\dev\4.y\frameworks\projects\framework\sr c\mx\states\AddItems.as:782]
    at mx.states::AddItems/apply()[E:\dev\4.y\frameworks\projects\framework\src\mx\states\AddIte ms.as:563]
    at mx.core::UIComponent/applyState()[E:\dev\4.y\frameworks\projects\framework\src\mx\core\UI Component.as:10741]
    at mx.core::UIComponent/commitCurrentState()[E:\dev\4.y\frameworks\projects\framework\src\mx \core\UIComponent.as:10487]
    at mx.core::UIComponent/setCurrentState()[E:\dev\4.y\frameworks\projects\framework\src\mx\co re\UIComponent.as:10323]
    at mx.core::UIComponent/set currentState()[E:\dev\4.y\frameworks\projects\framework\src\mx\core\UIComponent.as:6425]
    at BloodPressure/bloodpressureDg_selectionChangeHandler()[C:\Users\Mark\Adobe Flash Builder 4.7\BiometricsFlexProject\src\BloodPressure.mxml:311]
    at BloodPressure/__bloodpressureDg_selectionChange()[C:\Users\Mark\Adobe Flash Builder 4.7\BiometricsFlexProject\src\BloodPressure.mxml:41]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[E:\dev\4.y\frameworks\projects\framework\src\mx\core \UIComponent.as:13152]
    at spark.components::DataGrid/commitInteractiveSelection()[E:\dev\4.y\frameworks\projects\sp ark\src\spark\components\DataGrid.as:3634]
    at spark.components::DataGrid/setSelectionAnchorCaret()[E:\dev\4.y\frameworks\projects\spark \src\spark\components\DataGrid.as:4210]
    at spark.components::DataGrid/grid_mouseDownHandler()[E:\dev\4.y\frameworks\projects\spark\s rc\spark\components\DataGrid.as:4679]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[E:\dev\4.y\frameworks\projects\framework\src\mx\core \UIComponent.as:13152]
    at spark.components::Grid/dispatchGridEvent()[E:\dev\4.y\frameworks\projects\spark\src\spark \components\Grid.as:4038]
    at spark.components::Grid/grid_mouseDownDragUpHandler()[E:\dev\4.y\frameworks\projects\spark \src\spark\components\Grid.as:3883]
    at Function/<anonymous>()[E:\dev\4.y\frameworks\projects\spark\src\spark\utils\MouseEventUti l.as:84]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.managers::SystemManager/mouseEventHandler()[E:\dev\4.y\frameworks\projects\framework\s rc\mx\managers\SystemManager.as:2918]

    It appears as though this error has been going on for a while. See the following link http://forums.adobe.com/thread/941849

  • PopUpManager.centerPopUp gives Cannot access a property or method of a null object reference

    Hello all,
    The PopUpManager.centerPopUp(this); in my code gives out the following error:
    Main Thread (Suspended: TypeError: Error #1009: Cannot access a property or method of a null object reference.)   
        mx.managers::PopUpManagerImpl/findPopupInfoByOwner   
        mx.managers::PopUpManagerImpl/centerPopUp   
        mx.managers::PopUpManager$/centerPopUp   
        com.mycom.view::LoginView/doInit   
        com.mycom.view::LoginView/___LoginView_TitleWindow1_creationComplete   
        flash.events::EventDispatcher/dispatchEventFunction [no source]   
        flash.events::EventDispatcher/dispatchEvent [no source]   
        mx.core::UIComponent/dispatchEvent   
        mx.core::UIComponent/set initialized   
        mx.managers::LayoutManager/doPhasedInstantiation   
        Function/http://adobe.com/AS3/2006/builtin::apply [no source]   
        mx.core::UIComponent/callLaterDispatcher2   
        mx.core::UIComponent/callLaterDispatcher
    MyAppl.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
        xmlns:view="com.mycom.view.*">
        <mx:Panel id="applPanel" height="100%" width="100%" backgroundColor="#3CACCC">
            <view:LoginView />
        </mx:Panel>
    </mx:Application>
    LoginView.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="absolute" width="400" height="300" creationComplete="doInit()">
        <mx:Script>
            <![CDATA[
                import mx.managers.PopUpManager;
                private function doInit():void {               
                    PopUpManager.centerPopUp(this);               
                private function login():void{
                    trace("login clicked");
            ]]>
        </mx:Script>
        <mx:Form id="loginForm" defaultButton="{loginBtn}">               
            <mx:HBox>
                <mx:Button id="loginBtn" label="OK" click="login()" />           
            </mx:HBox>
        </mx:Form>
    </mx:TitleWindow>
    Somebody please help me on this.
    Thanks.
    roshni

    Pls find your solution Below.
    MyAppl.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
    creationComplete="onCreationComplete()">
    <mx:Script>
    <![CDATA[
    import com.mycom.view.LoginView;
    import mx.core.IFlexDisplayObject;
    import mx.managers.PopUpManager;
    private var popUp:IFlexDisplayObject;
    private function onCreationComplete():void
    popUp = PopUpManager.createPopUp(this, LoginView, true);
    popUp.move(((this.width/2)-(popUp.width/2)),(((this.height/2)-(popUp.height/2))));
    ]]>
    </mx:Script>
    <mx:Panel id="applPanel" height="100%" width="100%" backgroundColor="#3CACCC"/>
    </mx:Application>
    LoginView.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute" width="400" height="300">
    <mx:Script>
    <![CDATA[
    import mx.managers.PopUpManager;
    private function login():void{
    trace("login clicked");
    ]]>
    </mx:Script>
    <mx:Form id="loginForm" defaultButton="{loginBtn}">
    <mx:HBox>
    <mx:Button id="loginBtn" label="OK" click="login()" />
    </mx:HBox>
    </mx:Form>
    </mx:TitleWindow>
    Pls let me know if you have any problem with this one code.
    with Regards,
    Shardul Singh Bartwal

  • Default Cannot access a property or method of a null object reference.

    Evenin' all.
    I've got a problem with a flash application I'm creating. I have put an FLV movie in frame 10 of a scene, but whenever I test the movie it just says:
    [CODE]TypeError: Error #1009: Cannot access a property or method of a null object reference.
        at Prototype_fla::MainTimeline/__setProp_commentsPlayer_Variables_Content_0()
        at Prototype_fla::MainTimeline/frame1()[/CODE]
    Variables is the name of the scene, commentsPlayer being the name of the FLV player. What is causing this to happen? I have tested the video on its own in a new file and it works fine :confused:
    I also get the same problem with buttons in different frames/scenes.
    I'm relatively new to Flash so it's probably something pretty small but vital.

    Ignore the 'Default' bit at the start of the question, that's just a typo.
    I'm using Flash CS4/AS 3.0, the Flash movie is split up into scenes, I've added an FLVPlayback component to the stage in frame 10 (keyframe) in one of the scenes (not the first scene) and specified the source and other component settings using the component inspector. I'm not using ActionScript for this currently.
    The problem occurs when I try to test the movie, it throws up this output when compiling:
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
         at Prototype_fla::MainTimeline/__setProp_commentsPlayer_Variables_Content_0()
         at Prototype_fla::MainTimeline/frame1()
    The FLVPlayback is obviously 'commentsPlayer' in scene 'Variables'.

Maybe you are looking for

  • Validations in Oracle Forms 6i

    Hi, Can anybody please let me know how do we use phone and email validators in Oracle Forms 6i for textitem. and what is the format for phone and email and how do we create.

  • SD card won't import into Aperture, auto-ejects when trying to load preview

    Tonight, after installing Leopard, I tried to import photos from an SD card through my SanDisk reader, just as I always have, and as soon as Aperture tries to display previews of what's on the card it causes the card/reader to auto-eject, and I get t

  • JTextArea_FontProblem

    Hi all, I have one Screen full JTextArea...on the window following two check boxes, one combobox.In the combo box when i select the item and check the check box immediately the text in the JtextArea should be changed into the size whatever I selected

  • Java.lang.OutOfMemoryError - reasons

    Hi My application is throwing Wed Mar 26 15:07:12 PST 2003:<E> <ServletContext-General> Servlet failed with Exception java.lang.OutOfMemoryError <<no stack trace available>> Wed Mar 26 15:07:12 PST 2003:<E> <Kernel> ExecuteRequest failed. java.lang.O

  • New Develop in Oracle

    Hi, in my company we are going to change all the system to a Oracle System, my big question is what is better to use to develop the aplication Forms or Java? Advantage and Disadvantage. Thk Ppl!