Javascript -> Flash throwing "Error calling method on NPObject"
Asked Answered
H

2

11

I'm trying to call a Flash (AS3) function from Javascript. When the code runs, I get the error "Error: uncaught exception: Error calling method on NPObject!" From my day's worth of googling around, this seems to be be a security matter, and I've done everything I can find, but the error still comes up.

Some details:
* This happens with both Flash 9 and Flash 10 players.
* The swf is in the same domain as the php file that loads it and that contains the javascript that's trying to call the Flash function.
* I'm using sfwobject2.2 to load the swf file, like so:

var flashvars = {};
var params = {};
var params = {menu: false, bgcolor: "#ffffff", allowScriptAccess: "always"};
swfobject.embedSWF("/path/to/swf", "id", "480", "310", "9.0.0", null, flashvars, params, attributes);


My Flash movie is doing the allowDomain thing, correctly as far as I can tell:

Security.allowDomain("www.mydomain.com");

* I know that the ExternalInterface.addCallback is set up properly -- when I disable it, I get a "no such function" error instead of the NPObject complaint.

This is driving me completely crazy, and I just can't figure out how to correct it. Any advice out there?

Hutt answered 13/9, 2009 at 18:45 Comment(1)
Did you ever find an answer? I have the same issue.Kindly
K
10

The answer I found was that it throws that error for many reasons. Mine was that I was not sending in the correct number of arguments for the function it was calling.

Kindly answered 26/10, 2010 at 21:30 Comment(4)
Did you find a good document that outlines the variou possible reasons? Care to share?Ogpu
The point is that all errors cause this one output. Could be calling the wrong function, could be wrong number of params, could be security.Kindly
Any ideas on why this error might occour intermittently? The code I'm working on works sometimes and not others, with the same dataset, etc.Ogpu
No, it's too generic an error. All that really means is that "something" is going wrong.Kindly
O
3

I found that by installing the Debugging version of the flash player from Adobe's site, I'd get a dialog box with the actual flash exception in it instead of the NPObject error, so this might be a helpful first step in figuring out what's actually going on.

In my case it looks like somehow, there is an incorrect number of arguments getting passed, and I'm not sure how this is happening (intermittently), but that's for another question. :)

Ogpu answered 1/5, 2011 at 0:57 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.