I have read the guidelines published by Wolfram (these are restricted: non-numeric input fields, dialog windows, and data import and export) but I have a CDF that seems simple enough and seems to satisfy these constraints but does not work in the browser (gray box is all that displays). This CDF can be found here.


1 Answer 1


Sal there is a security problem when you embed CDFs that is analogous to when you open a CDF from an untrusted directory. So though a CDF may work on your desktop you may/will run into problems when embedded. Many causes of this including bugs in how things get screened. For example I had a case where a tick function with down values triggered a security issue whereas an equivalent tick function without down values did not (Wolfram advised that it was down values that were causing that particular problem although in the case in question it shouldn't have caused a problem. I'm told that particular bug/problem has been fixed in current builds but until a new version of Mma is released you may want to try replacing functions with pure functions and see what happens).

For other instances where the grey boxes appear there appears to be no way around this without an Mma build that allows higher level security signing. However you will note the difference between an embedded CDF and one that opens in a webpage in fullscreen and displays the dynamic content warning, i.e. the button that you press to allow dynamic content to be considered safe. So one way around some, but not all, of these problems is described here


cdf.embed("http://path.to/myCDF.cdf", 500, 600);


cdf.embed("http://path.to/myCDF.cdf", 500, 600,{fullscreen:'true'});
  • 1
    $\begingroup$ @Sal, @Mike this behaviour of too strict security is extremely annoying: basically no function can be written that is more complex than f[x_]:=x+2, because Mathematica will then shut it off from the user. Is there any extra information you gathered about this issue since january? I am struggling to figure out one-by-one which of my functions cause a security breach, and for 30 functions that's a lot of manual fiddling.... $\endgroup$ Apr 6, 2012 at 20:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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