Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 324744

Summary: PDF print and save buttons not working in BIRT viewer in OS X cocoa build, but, work in OS X carbon build.
Product: z_Archived Reporter: lyn.bosson
Component: BIRTAssignee: Birt-ReportViewer <Birt-ReportViewer-inbox>
Status: NEW --- QA Contact: Sissi Zhu <szhu>
Severity: normal    
Priority: P3 CC: bluesoldier, lyn.bosson, rbosson
Version: 2.6.0   
Target Milestone: ---   
Hardware: Macintosh   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:
Attachments:
Description Flags
Test PDF none

Description lyn.bosson CLA 2010-09-08 09:58:41 EDT
Build Identifier: Version: Helios Release Build id: 20100617-1415

Test done on:
OS X 10.6.4, OS X 10.5.8
Eclipse 3.6, Eclipse 3.5.2
BIRT 2.5.1, 2.6

Last tested using: eclipse-jee-helios-macosx-cocoa-x86_64.tar download, this clean build had the 3.6 Delta Pack and Spring-ide 2.2.0 added to the target, and BIRT 2.6 and WindowBuilder Pro 7.6 added thru software updates.


BIRT reports.
PDF print and save buttons not working in BIRT viewer in OS X cocoa build, but, work in OS X carbon build.

When the Internet Preference "Display PDF in browser using: Adobe Reader" in Adobe Reader is enabled. - in this case Adobe Reader 9.3.4 (however this goes back to v.8.1) the print and save button on the viewer window are selectable but do nothing.

If the preference just noted is not enabled then the viewer is used.  When the PDF is opened in the viewer selecting  "open PDF in Preview "the PDF is then opened in  Adobe Reader and the save and print buttons function as normal. 

If the "save PDF to download folder" option is selected from the viewer it does not work, nothing happens.  

I have included a sample PDF, however, this could only be saved after being opened in Adobe Reader via the viewer selection "open PDF in Preview". I also included some debug information in the form of console dumps and code snippet.

The above problem happens when testing from within Eclipse and after building an RCP plugins application.

Snippet and Console:
The following java code is used to set the ball in motion to create a BIRT report that renders as a PDF.
		HashMap<String, Object> parms = new HashMap<String, Object>();
		parms.put("SERVLET_NAME_KEY", "frameset");//frameset, run, 
		parms.put("FORMAT_KEY", "pdf");
		parms.put("ALLOW_PAGE", true);
		WebViewer.display(path, browser, parms);
		browser.clearSessions();

Console feed back from the Successful carbon applications and the unsuccessful cocoa applications.

Console message when successful: carbon/x86
4/26/10 9:26:03 AM eclipse[6054] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:26:03 AM eclipse[6054] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000 
4/26/10 9:26:03 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] Apr 26, 2010 9:26:03 AM org.apache.axis.utils.JavaUtils isAttachmentSupported 
4/26/10 9:26:03 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] Apr 26, 2010 9:26:03 AM org.apache.axis.utils.JavaUtils isAttachmentSupported 
4/26/10 9:26:03 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] WARNING: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled. 
4/26/10 9:26:05 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] Apr 26, 2010 9:26:05 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:26:05 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:26:06 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] Apr 26, 2010 9:26:06 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:26:06 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:26:06 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:26:07 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] Apr 26, 2010 9:26:07 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:26:07 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:26:07 AM [0x0-0x31f31f].org.eclipse.eclipse[6054] Apr 26, 2010 9:26:07 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 

Console message when successful: carbon/pcc
4/26/10 9:39:47 AM eclipse[6102] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:39:47 AM eclipse[6102] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:39:47 AM eclipse[6102] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000 
4/26/10 9:39:48 AM [0x0-0x327327].org.eclipse.eclipse[6102] Apr 26, 2010 9:39:48 AM org.apache.axis.utils.JavaUtils isAttachmentSupported 
4/26/10 9:39:48 AM [0x0-0x327327].org.eclipse.eclipse[6102] WARNING: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled. 
4/26/10 9:39:49 AM [0x0-0x327327].org.eclipse.eclipse[6102] Apr 26, 2010 9:39:49 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:39:49 AM [0x0-0x327327].org.eclipse.eclipse[6102] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:39:50 AM [0x0-0x327327].org.eclipse.eclipse[6102] Apr 26, 2010 9:39:50 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 


Console message when UNSUCCESSFUL: cocoa/x86
4/26/10 9:45:56 AM eclipse[6137] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:45:56 AM eclipse[6137] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:45:56 AM eclipse[6137] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000 
4/26/10 9:45:57 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] Apr 26, 2010 9:45:57 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:45:57 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:45:58 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] Apr 26, 2010 9:45:58 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:45:58 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:45:59 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] Apr 26, 2010 9:45:59 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:45:59 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:46:00 AM [0x0-0x32e32e].org.eclipse.eclipse[6137] Apr 26, 2010 9:46:00 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet  

Console message when UNSUCCESSFUL: cocoa/ppc
4/26/10 9:49:16 AM eclipse[6156] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:49:16 AM eclipse[6156] [Java CocoaComponent compatibility mode]: Enabled 
4/26/10 9:49:16 AM eclipse[6156] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000 
4/26/10 9:49:18 AM [0x0-0x331331].org.eclipse.eclipse[6156] Apr 26, 2010 9:49:18 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:49:18 AM [0x0-0x331331].org.eclipse.eclipse[6156] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:49:18 AM [0x0-0x331331].org.eclipse.eclipse[6156] Apr 26, 2010 9:49:18 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 
4/26/10 9:49:18 AM [0x0-0x331331].org.eclipse.eclipse[6156] WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle 
4/26/10 9:49:20 AM [0x0-0x331331].org.eclipse.eclipse[6156] Apr 26, 2010 9:49:20 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet 


From Debug mode within Eclipse 3.5.2 runtime environment when unsuccessful
2010-04-26 10:31:46.072 java[6309:80f] [Java CocoaComponent compatibility mode]: Enabled
2010-04-26 10:31:46.073 java[6309:80f] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000
Apr 26, 2010 10:31:48 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle
Apr 26, 2010 10:31:50 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle
Apr 26, 2010 10:31:51 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle
Apr 26, 2010 10:31:52 AM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.ScriptDataSetHandle

Reproducible: Always

Steps to Reproduce:
1. From OS X (10.6 | 10.5) cocoa
2. Create a BIRT report - using a scripted data source
3. Set Adobe Reader Preference: Internet: Display PDF in browser using: Adobe Reader
4. Display/print report.
5. Select the print button or save button from windows tool bar, the click registers but no action takes place.
6. DE-SELECT: Adobe Reader Preference: Internet: Display PDF in browser using: Adobe Reader 
7. Display/Print report (this sends report to a viewer)
8. At the bottom of the viewer select pop-out selection icon that reads "save PDF to download folder": nothing will be saved.
9. At the bottom of the viewer select pop-out selection icon that reads "open PDF in Preview". This will then open the report in an Adobe Reader window and the print and save buttons works.
Comment 1 lyn.bosson CLA 2010-09-08 10:00:35 EDT
Created attachment 178408 [details]
Test PDF
Comment 2 Ralph Bosson CLA 2010-09-21 10:24:31 EDT
Tested using

Version: 2.6.1.v20100709a-9iF7A8FGLY4z0pxX3ORrsdrp6JXb
Build id: v20100915-1750

Result: no change
Comment 3 Xiaoying Gu CLA 2010-11-18 04:57:25 EST
Do you have this issue if you only install BIRT + eclipse-jee-helios-macosx-cocoa-x86_64.tar, without WindowBuilder Pro and Spring-ide 2.2.0