Home
Analytics
Webservice Failed to open in Tomcat
acpark
We are deploying the report viewer in a tomcat server and our reports connect to web service data sources.
When installing on a new machine, we have found that the report viewer fails as it can not open a connection to the web services. The installation and configuration files have been used successfully on other machines so I suspect that it may be a permissions or environment issue.
The web services are running on the same machine using an apache server and accessed via 'localhost'. A command line client can access the web services but the report view can not. I have enclosed the tomcat log showing the connection issue.
Any ideas ?
Find more posts tagged with
Comments
JasonW
What version of BIRT are you using? Are you using a custom class or a standard ws data source? What is on line 16 of your afterFactory script? Do the sample reports run on the new install?
Jason
acpark
Hi,<br />
<br />
The version of birt is 2.6.2, JRE 1.6.0_25, the data source is a standard ws. The sample report which comes with the viewer - "Congratulations ! " etc runs correctly. <br />
<br />
The after factory method is as follows - <pre class='_prettyXprint _lang-auto _linenums:0'>
<method name="afterFactory"><![CDATA[
//importPackage(Packages.JavaClass.org.eclipse.birt.core.exception.BirtException);
//throw new BirtException("Something Happened in the Report Design");
if(errmsg.length())
{
//importPackage( Packages.javax.swing );
//frame = new JFrame( errmsg );
//frame.setBounds( 310, 220, 300, 20 );
//frame.show( );
//reportContext.getDesignHandle().clearContents();
//importPackage( Packages.javax.swing );
//JOptionPane.showMessageDialog(null, errmsg);
//importPackage(Packages.JavaClass.org.eclipse.birt.core.exception.BirtException);
//throw new BirtException("Something Happened in the Report Design");
}
]]></method>
</pre>
<br />
Thank you for your help,<br />
Andrew.
JasonW
Andrew
Can you comment out the whole if statement? Specifically:
if(errmsg.length())
I assume you are not using the ws datasource custom class feature? Do you have tomcat running under the same user that you used the command line tool with?
Jason
acpark
Jason,
I have removed the post factory code and get the same result. As far as I know I am not using a custom class. Tomcat and the commandline tool are have been run using the same user account.
Thanks for your help,
Andrew
JasonW
Andrew,
What type of machine are you running the viewer on? If this is Windows can you try disabling the firewall temporarily. Also set the log level in the viewer to finest and post just the connection properties of the report.
Jason
acpark
Hi,
I have found the reason, the user running tomcat did not have the correct permissions to access the directory which contained the wsdl files.
Since solving that problem, I have also noticed that when a web service returns a 500 error this code is not passed on via the viewer and the error seen above is displayed even though the source of the problem is different.
Thank you for your help,
Andrew Park.
JasonW
Can you open a bug for this?
Jason
acpark
I have opened a bug for the incorrect error code not being caught and returned. DO you want one for the failure to report an error when the WSDL could not be accessed as well ?
JasonW
Yes, if you do not mind. Also post the bug ids.
Thanks
Jason
acpark
Bugs have now been reported
Bug 352714 - Failure to correctly report the error messages from web services
Bug 352835 - Failure to generate report or error when wsdl can not be accessed
Andrew.
JasonW
Thanks for posting Andrew.
Jason