Hello,
I'm using CRXI release 2 and Tomcat 5.0.

I have managed to create a simple STANDALONE (not a web app) application that gets an .rpt file and exports it to some other file, and it works.

The next step is to try and create a web app that does the same thing. I'm having some trouble doing that although I have followed the tutorials and used the sample code provided by CRXIr2:

ReportClientDocument reportClientDoc = new ReportClientDocument();
String report = "rpt3.rpt";
reportClientDoc.open(report, 0); <=== throws an exception

org.apache.jasper.JasperException: Can't find resource for bundle java.util.PropertyResourceBundle, key Error_InvalidServerName
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:373)


I searched for this exception in BO's KB and communities - even in Google, and I couldn't find it.

Anyway, here's some detailed info on my app:


My crconfig.xml in WEB-INF/classes:

<?xml version="1.0" encoding="utf-8"?><CrystalReportEngine-configuration>
<reportlocation>../../reports</reportlocation>
<timeout>10</timeout>
<keycode>...keycode...</keycode>
</CrystalReportEngine-configuration>

Notice that I expect reports to be under <my_app_root>/reports.
I also placed a file called rpt3.rpt in there.

All of the required JAR files are in WEB-INF/lib )I copied them from BO's java/lib, java/lib/external) I also copied 'crystalreportviewers115' under my app's root, just in case, although I don't use it.

This is my web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
<context-param>
<param-name>crystal_image_uri</param-name>
<param-value>crystalreportviewers115</param-value>
</context-param>
<listener>
<listener-class>crview2.ViewerSessionListener</listener-class>
</listener>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
</web-app>


The full exception stack:


org.apache.jasper.JasperException: Can't find resource for bundle java.util.PropertyResourceBundle, key Error_InvalidServerName
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:373)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.netbeans.modules.web.monitor.server.MonitorFil ter.doFilter(MonitorFilter.java:362)


root cause

java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key Error_InvalidServerName
java.util.ResourceBundle.getObject(ResourceBundle. java:326)
java.util.ResourceBundle.getObject(ResourceBundle. java:323)
java.util.ResourceBundle.getString(ResourceBundle. java:286)
com.crystaldecisions.client.helper.ResourceManager .getString(Unknown Source)
com.crystaldecisions.client.helper.SDKResourceMana ger.getString(Unknown Source)
com.crystaldecisions.proxy.remoteagent.TCPIPCommun icationAdapter.connect(Unknown Source)
com.crystaldecisions.proxy.remoteagent.y.a(Unknown Source)
com.crystaldecisions.sdk.occa.report.application.R eportAppSession.int(Unknown Source)
com.crystaldecisions.sdk.occa.report.application.R eportAppSession.initialize(Unknown Source)
com.crystaldecisions.sdk.occa.report.application.C lientDocument.for(Unknown Source)
com.crystaldecisions.sdk.occa.report.application.R eportClientDocument.for(Unknown Source)
com.crystaldecisions.sdk.occa.report.application.C lientDocument.open(Unknown Source)
com.crystaldecisions.reports.sdk.ReportClientDocum ent.open(Unknown Source)
org.apache.jsp.jrcSetup_jsp._jspService(jrcSetup_j sp.java:50)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:99)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:325)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.netbeans.modules.web.monitor.server.MonitorFil ter.doFilter(MonitorFilter.java:362)