I’ve been spending a lot of time of late getting myself familiar with the new interface of Xcelsius 2008 and I like it so much better than the older Xcelsius 4.5 interface. The embedded Excel spreadsheet is real dream and the new Data Manager, which manages all the external connections make it easy to keep track of where data is coming from.
Xcelsius Error 2170 or 2048
There were a couple of things I learned during the transition that I thought would be good to share. The first is around security. With the release of Xcelsius 2008 we have moved to support for Flash 9. In Flash 9, they have tightened up security a bit more. Here is one of the first messages I got when trying to run a Xcelsius file with LiveOffice or Web Service connected data. My problem is a flash security issue. SWFs running locally (directly from a user’s computer) have additional restrictions imposed on them since version 8 of the Flash Player.
This error is coming from the Adobe Flash Viewer. If you see error messages like this in the future, you can look them up here. This has the complete list of ActionScript runtime errors.
To get around this error I need to tell my application server that it is okay to trust requests from other domains. This means I will need to create a crossdomain.xml file for your application server.
I have created a crossdomain.xml file that you can download here:
http://trustedbi.com/files/crossdomain.xml
Here are the contents of the file:
<?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <allow-http-request-headers-from domain="*" headers="*" secure="false" /> <allow-access-from domain="*" secure="false" /> </cross-domain-policy>
On Tomcat, you need to add this file to the /tomcat/webapps/ROOT directory. Each application server is different, so you may need to check the manual for your specific application server.
For More Information on crossdomain.xml
For more information on crossdomain.xml look here. Even more information about crossdomain.xml and Macromedia is found here.
Hope this help you achieve smooth sailing with Xcelsius 2008!
Thanks a lot for posting this blog. We are trying to access the data from Webservice (the source of which is SAP query) and want to display it on xcelsisus 2008. We are getting the same problem what you mentioned. Can you please clarify where we need to put the crossdomain file(Business Ojects application server or SAP webapplication server root directory)???
Thanks in adavce
Looking for your reply!!!
I’ve created an Xcelsius file, exported it as an html file and placed it on a server along with its data source (aspx) file. When I open the dashboard from my machine or from the server I get the #2048 error. I’ve put an open (*) crossdomain file in the root of that server but this doesn’t help.
What should I be doing? I’m accessing this file using http rather than https.
Simon,
Where you put the crossdomain file will be dependent on the application server you are using. What web application server are you using? If you are using IIS, you need to put the crossdomain.xml file in C:Inetpubwwwroot. Also gave the appropriate user account read permissions to that directory. This should take care of it.
How about in Tomcat? I have put it in webappsROOT but error #2048 still occurs.
I’m not sure Sandy. Did you restart your Application Server? Is the crossdomain.xml file properly formatted? It should be:
… and that should do it.
Hi David
Thanks for your useful guidelines – there are no so many good articles on Xcelsius on the Web as yours. Thanks again.
I tried to use XML Data connection as you described, but unfortunately after preview my output is empty.
On my XML data connection screen, if I click on “Preview XML”, I get good XML output like this:
–
–
Alfreds Futterkiste
1
65527
…..
, but somehow that output doesn’t come to the control – it probably returns empty, because after loading it displays empty spreadsheet table
If I uncheck “Refresh on load” on my connection, on Preview I still see my data displayed from the embedded spredsheet, but if I check it – the output is without data.
I tried to put “connection refresh button” control and attached those button with my connection, and the behavior is the same – as soon as I click the button (activate the connection), data from the embedded spreadsheet disapears (ok), but the fresh data from my XML source http://localhost/getresults.aspx doesn’t populate
Any suggestion and help will be appreciated
Thanks
Tzvetan
Hi, David
I receive the same error but we use our dashboards inside PowerPoint presentations not from tomcat. Moreover, some of our web services are from the Internet – independent web service suppliers like currency rate, weather and so on.
—
Regards,
Pavel
Hello, David, et al
I too have a similar problem. I have built a visualization based on an XML Map. During Dev/Test the XML, XLF and subsequent SWF and HTML files all reside in the same folder on a network File Server. I’m defined the Data connection to point to the UNC address of the XML file (serversharefolderdata.xml). I have also put the crossdomain.xml file in this folder as well.
When I preview the visualization in Xcelsius or from the HTML/SWF file, I get the original data set; however, if I update the XML file, the changes in the data do not get reflected in the SWF. I’ve tried both refreshing the connection on an interval, as well as putting a Connection Refresh Button on the page – neither works. However, if I’m in Design view, right-click on the XML Source range in the Excel pane and select XML > Refresh XML Data, the data in my spreadsheet gets updated.
Any suggestions will be greatly appreciated.
Roger
Roger,
Typically when it comes to XML maps, these should be done via http, not as a fileshare. I think the issue is permissions.
What access writes does to user have to have to access the network share? Can I have ANONYMOUS access? I think the issue may be that the .swf file is trying to access the share without the correct permissions. To troubleshoot it, I would first move the .xml file to a “local” location and make sure that the Xcelsius model updates as you expect. Next I would put the file on a share and provide ANONYMOUS access and see if it still works. If not, then there is an issue with using the UNC address. If that doesn’t work, make the xml file available via http and see if that fixes it. I bet it will.
Best Wishes.
If you use an Apache Server, put crossdomain.xml file in htdocs directory (when you put the xml files).
It works fine.
Regards.
@Sandy PH
Sandy, were you able to solve this problem? We’re also having the same issue with a Tomcat server.
Thanks in advance.