Jump to content
We've recently updated our Privacy Statement, available here ×

error in linked report


les_mills

Recommended Posts

Hi,

 

I have been working on this one for a couple of days left and can't figure it out.

 

Simple case, I have a report and I am trying to create a drill down to another report.

 

I have read the forums and it seems quite simple. I am using the "reference" as my hyper-link type. When I run the report hit the link, I get one of two problems.

 

One:

 

Null URI

(So this means I have linked it wrong. Not really a big problem)

 

Two:

 

I get this error:

 

org.springframework.webflow.engine.NoMatchingTransitionException: No transition was matched on the event(s) signaled by the [1] action(s) that executed in this action state 'checkForParams' of flow 'viewReportFlow'; transitions must be defined to handle action result outcomes -- possible flow configuration error? Note: the eventIds signaled were: 'array<String>['error']', while the supported set of transitional criteria for this action state is 'array<TransitionCriteria>[[eventId = 'yes'], [eventId = 'no']]'

 

I guess the question is, do I need to link to a jasper sever report, or to a jrxml file resource.

 

This is the xml from the hyper-linked field:

 

<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="Reference" hyperlinkTarget="Blank" >

<reportElement

x="0"

y="0"

width="100"

height="18"

key="textField"/>

<box topBorder="None" topBorderColor="#000000" leftBorder="None" leftBorderColor="#000000" rightBorder="None" rightBorderColor="#000000" bottomBorder="None" bottomBorderColor="#000000"/>

<textElement>

<font/>

</textElement>

<textFieldExpression class="java.lang.String"><![CDATA[(($F{program_name}!=null) ? $F{program_name} : $F{training_award_types_description})]]></textFieldExpression>

<hyperlinkReferenceExpression><![CDATA["http://appserver-prod.lesmills.net.au:8083/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=/testing_links_report.jasper"]]></hyperlinkReferenceExpression>

</textField>

 

I hope someone can help me on this one. It looks so simple and I know I am doing something stupid, but what is it?

Link to comment
Share on other sites

  • Replies 5
  • Created
  • Last Reply

Top Posters In This Topic

les_mills wrote:

org.springframework.webflow.engine.NoMatchingTransitionException: No transition was matched on the event(s) signaled by the [1] action(s) that executed in this action state 'checkForParams' of flow 'viewReportFlow'; transitions must be defined to handle action result outcomes -- possible flow configuration error? Note: the eventIds signaled were: 'array<String>['error']', while the supported set of transitional criteria for this action state is 'array<TransitionCriteria>[[eventId = 'yes'], [eventId = 'no']]'

 

This might indicate that the report unit cannot be loaded from the repository (the development version has been fixed to throw an explicit exception in this case). Can you confirm that the "/testing_links_report.jasper" URI actually exists in the repository as a report unit?

 

Regards,

Lucian

Link to comment
Share on other sites

Hey Lucianc,

 

I have checked what I have in the repository and I either get the error as described above, or I get this one:

 

com.jaspersoft.jasperserver.api.JSException: jsexception.null.uri

com.jaspersoft.jasperserver.api.JSException: jsexception.null.uri
at com.jaspersoft.jasperserver.api.metadata.common.service.impl.hibernate.HibernateRepositoryServiceImpl.findByURI(HibernateRepositoryServiceImpl.java:529)
at com.jaspersoft.jasperserver.api.metadata.common.service.impl.hibernate.HibernateRepositoryServiceImpl.loadResource(HibernateRepositoryServiceImpl.java:146)
at com.jaspersoft.jasperserver.api.metadata.common.service.impl.hibernate.HibernateRepositoryServiceImpl$1.execute(HibernateRepositoryServiceImpl.java:130)
at com.jaspersoft.jasperserver.api.metadata.common.service.impl.HibernateDaoImpl.executeCallback(HibernateDaoImpl.java:58)
at com.jaspersoft.jasperserver.api.metadata.common.service.impl.hibernate.HibernateRepositoryServiceImpl.getResourceUnsecure(HibernateRepositoryServiceImpl.java:128)
at sun.reflect.GeneratedMethodAccessor75.invoke(Unknown Source)

 

I have tried:

 

"http://<<local_server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=testing_links_report"

"http://<<local_server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=testing_links.jrxml"

"http://<<local_server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=testing_links_report.jasper"

as well as with / in front of the address.

 

The resources are all in the same folder.

The folder contains:

- a file called testing_links that is a jrxml file

- a file called testing_links.jrxml that is a jrxml file

- a report that is called testing_links_report

 

So I am pretty sure that what I am trying to point at is there. Thanks for your help so far. Any suggestions for what to try next?

Link to comment
Share on other sites

les_mills wrote:

I have tried:

"http://<<local_server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=testing_links_report"
"http://<<local_server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=testing_links.jrxml"
"http://<<local_server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=testing_links_report.jasper"
as well as with / in front of the address.

The resources are all in the same folder.
The folder contains:
- a file called testing_links that is a jrxml file
- a file called testing_links.jrxml that is a jrxml file
- a report that is called testing_links_report

So I am pretty sure that what I am trying to point at is there. Thanks for your help so far. Any suggestions for what to try next?

 

This should not be a matter of trial and error, you need to know the repository location of the report unit resource.

 

Note that the full URI of the report unit in the repository needs to be used as value of the reportUnit parameter, so if for instance the resources you mention are located in the /a/b/c in the repository, you'll have to use reportUnit=/a/b/c/testing_links_report

 

Regards,

Lucian

Link to comment
Share on other sites

lucianc wrote:
This should not be a matter of trial and error, you need to know the repository location of the report unit resource.

 

Thanks lucianc,

 

I hadn't realized you had to reference from the root. I had only tried from the folder I was in. Simple mistake. Glad to get that one out of the way.

 

Can you please clear something else up in relation to this and passing parameters?

 

Is it true that the "Link Parameters" tab of the hyperlink section is not used in this case and that we have to include the parameters in the URI.

 

For example, this is my current URI:

 

"http://<<local-server>>/jasperserver/flow.html?_flowId=viewReportFlow&reportUnit=/Education/testing_links_report&trainingid=$F{training_trainingid}"

 

If that is the case, how does the new report gain access to parameter from the URI.

 

It seems a little strange that Jasper Server would not work with a tag in a report that was written for the purpose.

 

I have defined a parameter in the drill-to report as trainingid.

 

Cheers,

 

Nick

Link to comment
Share on other sites

Some notes:

  • JasperReports hyperlink parameters (i.e. <hyperlinkParameter> JRXML elements) are meant to be used with custom hyperlink types, such as the ReportExecution type that can be used in JasperServer (you can see an example in the JasperServer sample reports).

     

    If you use Reference hyperlinks, <hyperlinkParameter> are ignored and you have to put any HTTP parameters in the URI itself.

I think you want to use

Code:
"http://...&trainingid=" + $F{training_trainingid}

instead of

Code:
[code]"http://...&trainingid=$F{training_trainingid}"

You will also need to create a JasperServer input control corresponding to the trainingid JasperReports parameter.

[/ul]

 

HTH,

Lucian

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...