Thursday, September 20, 2007

CFDocument hotfix for ColdFusion 8 released

We have released a cumulative hotfix for CFDocument related issues in ColdFusion 8. Bugs being addressed in this hotfix are

  • PDF/Flashpaper document generated in CF8 are nearly 70% scaled down than CFMX 7. This was making document appear smaller in CF8 as compared to CF7.
  • Using cfdocumentitem in a loop inside cfdocument causes the error, "routines cannot be declared more than once".
  • StackOverFlowError when a large document with table is created. A simple report with over 1500 table row causes this problem. More complex, but shorter documents have also resulted in this error. This was a pretty nasty one and it deserves a separate blog entry :-).

You can download the hotfix directly from here. You would need to extract the hotfix jar from the downloaded zip file and apply that jar.


Anonymous said...

I downloaded and applied the "ColdFusion MX 7.02 - CFDocument
Cumulative Hot Fix" found on this page: over the weekend. After applying this
hotfix, there seems to be a scaling problem with <cfdocumentitem
type="header"> content. The footer and body seem to be unaffected. I have a bug ticket into Adobe about it. Just in case people stumble on this blog post looking for the same issue in CF7.

Mark Phillips said...

Hi Rupesh, Will you be putting up your presentation from MAX soon? Its was a pleasure speaking with you.

Rupesh Kumar said...

Hi Mark,
It was my pleasure too.
I am sorry that I could not post my preso earlier. I posted it a few days back here.

rschulz said...

Hi Rupesh-

I'm battling an issue with CFDocument regarding headers and footers. I've posted on google groups and the adobe cf forum, but not luck. I was just wondering if you had any insight into my problem. I tried the hotfix, but still having issues.

Since I'm having troubles posting code in this blog, I'll include a link to my post in google groups. Any insight would be appreciated!!!

Link to post:

rschulz said... it didn't post the URL correctly...I've added line breaks so that entire URL is displayed. Sorry!

URL to forum thread:

Rupesh Kumar said...

This is a bug which is a side effect of the new feature that we added for cfdoc header/footer in which expressions involving cfdocument scoped variables could be used.

We have fixed this bug and I think we will be releasing a hotfix for this soon. We have also fixed the header/footer scaling bug that lot of people are facing.

rschulz said...

That's great news....thanks so much! Any idea when the hotfix may be available?

Rupesh Kumar said...

I can not give you any exact date but it should be soon :)

James Allen said...

I've just applied this hotfix to resolve the issue of CF8 generated PDF's appearing much smaller than in CF7.

However, while it shows as being applied the output is still small. Any idea what could be causing this? It's showing next to the 'Update Level' on System Status and I've rebooted my server.

Thanks in advance.

James Allen said...

Please ignore my previous comment. I had uploaded the .zip rather than the extracte .jar file. Doh! Will teach me to pay more attention when selecting files in future. lol. Though it would be nice if CF would warn when a non .jar file is uploaded.

google said...

I've just upgraded to CF8 and installed all the latest hotfixes, but CFDocument isn't rendering text and tables correctly. The text is a different size and some text in a table is missing!

Also CFReport doesn't render anything in a PDF at all now. Everything has worked perfectly in CF7 for 2 years and we haven't changed any code.

Can anyone help please?

Dani Szwarc said...

cfdocument format="pdf" margintop="1.5" should fix the issue with images in headers.

Rob Pilic said...

There appears to be a bug in CF 8 where you can't use function or argument scoped variables in cfdocumentitem footer or header when using cfdocument within a function. I noticed this when migrating an app that worked fine on CF 7 to CF 8.

<cfset render("hello")>

<cffunction name="render" access="public" output="true" returntype="void">
<cfargument name="data" type="string" default="" />
<cfset var fnTest = "FN">
<cfset test = "BLAH">

<cfdocument format="pdf">
<cfdocumentitem type="footer">

Out of the variables available in the function, only "test" will work. The other two will throw errors. Any thoughts?

rschulz said...

Hi Rupesh-
Can you help me? I'm still battling an issue with dynamic/query vars in the header/footer. I posted a comment earlier on this 'rschulz'. Any updates??

Here is the post on Adobe forums (with line breaks):

John H. said...

Hi, Rupesh,

The hotfix worked perfectly and our PDF's once again scale correctly.

One thing that confused us initially in the ReadMe was the statement that the hotfix "Reguires taglib.cftld to be entered to WEB-INF\cftags\META-INF." For others confused by that statement, it simply means that you need to put a copy of that file in the META-INF folder.

Thanks again, Rupesh!

Val said...

We have issues with cfdocument used in loop. Hotfix should of fix the issue, but apparently it didn't. So we still getting the error: Routines cannot be declared more than once.
The routine _cffunccfdocumentitem_cfinc_header_print2ehtm18490029791 has been declared twice in different templates.
The same code works just fine in ColdFusion 7.

Please, advice??

elizabeth said...

i created a report using cfdocument. the font size varies with the number of pages in the report. The more pages the smaller the font. Why is this happening? How can I stop it? the larger reports are unreadable. Please help