September 26th, 2003, 12:04 PM
CFCharting error in Coldfusion 6.1
I have built a statistics page which generates a number of different charts.
On my local machine everything works great. The charts display, I can change their look and feel and I can display them as either .jpg, .png, or flash. I have chosen to stick with displaying as flash as it looks best.
The problem occurs when I post the page on my server. The graphs just never load. I have tried switching their formats to all three listed above. Our server (like my local machine) uses the default caching to build these graphs and it actually does build them (I can see them on the harddrive). It just never shows them on the page.
One issue that I think it might be is the wwwroot is on our D:\ and the coldfusion is being run off the C:\. I have also read a few Macromedia pages that talked about an issue with the Coldfusion 6.1 update and CFChart. I have play around a little with their suggest of pointing the JVM's classpath to the right location, but with no luck.
Specifically I tried pointing: a:cf_root/WEB-INF/cfusion/lib/webchartsJava2D.jar to where I thought it should go. As well as simply entering a few paths in the JVM's classpath field. Eventually I crashed coldfusion to the point where I had to edit the files manually to remove the paths I had added. I think that I just wasn't use the correct path syntax.
If anyone has any suggestions I would be very grateful. If more specifics are required, just ask. I think my issue right now is that I am just not entering the correct information when trying to map the classpath. I think that since the caching is being done on the C:\, but the page is run on the D:\ it isn't finding the files it creates, but the strangest part is that I believe it was working after the 6.1 upgrade and only a week later or so, stop working.
Please help; Thanks,
September 29th, 2003, 04:18 AM
iis or apache ?
1) copy your cfide folder with out the admin folder .
2) place this copy at top level of your webroot
3) map a vitural direcorty CFIDE with full permissions
restart - iis.appache
September 29th, 2003, 10:57 AM
Try to arvest your error logs and see if you find anything unusual ... also start the cfserver using cfstart.bat located in the bin folder .. check for any abnormality in the start up sequence
October 1st, 2003, 11:46 AM
Thanks, but still not working.
Thanks for both of your suggestions. I had previously tried copying the CFIDE folder, as well as a few other folders. As for the log files, they are pretty undescriptive. I have been trying to sort through the coldfusion logs and the other various server logs. On the macromedia site they mention that charting is an issue with v6.1 and talk about specifying the class path. I included this line in JVM.config:
java.args=-Xmx128M -Xms32m -Xbootclasspath/a:C:\CFusionMX/WEB-INF/CFusionMX/lib/webchartsJava2D.jar -Djava.awt.graphicsenv=com.gp.java2d.ExGraphicsEnvironment
I tried it as its own line, as well as appending it to the end of the existing java.args specification. At first I was getting an error saying that it could not find "ExGraphicsEnvironment" so I did some more research and found that with Java 1.4.1 this should read "ExHeadlessGraphicsEnvironment," which I tried. It could not find that either.
I checked my Java version it is 1.4.2, but I assume that this should be farily similar to 1.4.1 at least in terms of specifications.
The think is the page caches the graphs into the directory C:\CFusionMX\charting\cache\ and if I view them from there they are complete. The error I guess is in displaying them in the page. I am extremely confused at this point, but do think that I have learned a lot about CFusion and Servers in the last few days.
Any other suggestions?
PS anyone know why sometimes ColdFusion uses foward slash and other times it uses backward slash?
October 1st, 2003, 12:16 PM
ill check our servers jvms and post back to you later
October 21st, 2003, 02:08 PM
work around not working
I found a little work around for this whole charting issue. Basically you just write the graph to a file and then read the file seperately, like so:
<cffile action="write" charset="ISO-8859-1" file="#expandpath('YBreak.swf')#" output="#YBreak#" addnewline="yes">
<embed src="YBreak.swf" width="150" height="150" quality=high type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
The problem with this, however, is that it leave the graphs residually in the user's temporary internet files so that they don't refresh when the user revisits the page.
I have also tried some other fixes suggested by various sites, but with no help. If anyone out there has solved the Coldfusion 6.1 Charting problem please help. Or if you can give me a easy way of removing the files created by the above from the cache that would be nice too.
I actually tried generating a random number appending it to a variable name and using that as the flash file name. I figured this would work cause it would just keep writing new cache files. It didn't, however, because the file write action didn't like having a variable name as its input. Also this would eventually fail if the person reloaded enough times to get the same random number.