Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 335063 - WCF web service as a datasource to a BIRT Report
Summary: WCF web service as a datasource to a BIRT Report
Status: NEW
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: BIRT (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Birt-Data-inbox@eclipse.org CLA
QA Contact: Xiaoying Gu CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-21 17:01 EST by Athadu CLA
Modified: 2011-05-17 22:15 EDT (History)
2 users (show)

See Also:


Attachments
A Visual Studio 2008 Solution file containing the Test WCF Service and Service Host programs (239.09 KB, application/x-zip-compressed)
2011-01-21 17:08 EST, Athadu CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Athadu CLA 2011-01-21 17:01:14 EST
Build Identifier: 20100917-0705

Using 
Eclipse Business Intelligence and Reporting Tools SDK Version: 2.6.1.v20100709-7m9f7NFT0z0-Im5IWab4F6 Build id: v20100915-1750...

We just got started off with looking into BIRT as another reporting platform for one of our application.

Our application exposes its data using a Microsoft .NET WCF web service.

I tried out a sample .NET ASMX web service connecting successfully in BIRT and getting to the data.  But, I am failing to do the same with the WCF Web service.  The SOAP Parameters, related to the WCF operation/method from our WCF Service, doesn't show up in the 'New Web Services Data Set' wizard.  For some reason, the wizard is not able to identify the parameters from the WSDL, i guess.  I do not see any Parameters listed in the Parameters screen.

We are using basicHttpBinding that is supposed to be SOAP1.1 compliant.

I was wondering if you had any experiences with connecting to WCF or if you could point me to resources that talk about connecting to WCF service from BIRT.

I greatly appreciate any pointers.





Reproducible: Always

Steps to Reproduce:
1.  On Windows 7, run the attached WCF Web Service host test program.  Source code is also attached.
2.  From BIRT DataSource wizard, connect to the WCF Web Service
3.  The Web Service Operations (methods) are displayed.
4.  Select a simple method that takes an integer parameter.
5.  And navigate to Parameters page of the wizard.
Result: No Parameters listed.
Comment 1 Athadu CLA 2011-01-21 17:08:20 EST
Created attachment 187340 [details]
A Visual Studio 2008 Solution file containing the Test WCF Service and Service Host programs

The attached zip file contails the Visual Studio 2008 Solution file for the test WCF Service.

1. The file in Debug\TestBirtServiceHost.exe is the WCF Service Host.
2. The file in Debug\TestBirtServiceClientApp.exe is a WinForms client app that you an use to test the webservice calls outside of Eclipse/BIRT.
3. The file in Debug\TestBirtWCFService.dll is the actual WCF Service implementation.

To reproduce the bug run the Debug\TestBirtServiceHost.exe and use the URL to the Service - typically "http://localhost:9000/?wsdl".
The port number in the URL can be modified in the .exe.config file(s) in the same folder.
Comment 2 Athadu CLA 2011-03-02 11:14:05 EST
As a workaround, we had to 'flatten' the WSDL returned by the WCF web service.  To flatten the WSDL, we adapted the code from http://blogs.msdn.com/b/dotnetinterop/archive/2008/09/23/flatten-your-wsdl-with-this-custom-servicehost-for-wcf.aspx 

I guess, BIRT should recognize the web service without the user having to flatten the WSDL.