Reputation: 259
Can someone post a working example of how to define a subreport using web service as the datasource?
I am reading this:
http://community.jaspersoft.com/project/web-service-data-source
Under the section "SubReport and Additional Datasets", I need to cater the scenario for (2):
you have a main resultset that you wish to loop, and for each row you want to execute a new query (webservice call)
In the subreport configuration (or the dataset) specify not to use any connection at all (leave blank both the connection expression and the datasource expression. The only thing we'll have to do is passing some mandatory parameters for internal webservice datasource to work properly:
- uriKeyauth
- TypeKey
- authParametersKey
- languageKey
- verbKey
I am not able to understand what to do here based on the above statements. These parameters are defined in the web service subreport. Am I supposed to pass them back to the main report? If so how am I supposed to do it in Jaspersoft Studio? I am using version 6.2. Even after I define these parameters in the main report, when I run preview, I get the error:
Caused by: net.sf.jasperreports.engine.JRException: Verb should be POST or GET . is not a valid verb
Upvotes: 1
Views: 1840
Reputation: 1
The steps to I use in Jasper Studio 6.3 are:
Upvotes: 0
Reputation: 259
After struggling with this for quite a while, I found the following.
In my case, the default data adapter in the main report is JDBC. For each row returns from the SQL query, one particular column value is used as a GET parameter for the web service data adapter or WebServiceQuery.
I cannot make this work with subreport. However, I can get this to work with a dataset associated with a table.
A dataset using the web service data adapter has to be created. Parameters that are required for the GET parameters need to be defined in the dataset.
After the dataset is created, create a table or other elements using this dataset. Under the dataset tab in the table properties, define the parameters which should have the relevant field values (eg, $F{field1}).
The web service dataset also needs to connect to the main dataset. All this does is define the web service parameters: uriKey, authTypeKey, authParametersKey, languageKey, verbKey in the main report.
Once this is done, previewing the main report will also render the table with results obtained from the web service data adapter.
Upvotes: 1