cancel
Showing results for 
Search instead for 
Did you mean: 

Can not deploy a report using JDBC connection on CR2008 Server

Former Member
0 Kudos

Hi Group,

I have a report created with JDBC connection. When I tried to add it to CR2008 server, it gives an error - "An unexpected error has occurred ". Basically I want to add a report to a public folder via CMC. I am using adminstrator account.

Then I thought I need to add JDBC driver into CR2008 server. so I put oracle jdbc jar into CR2008 server classpath and add JDBC connection info into CRConfig.xml. but I still got the same error.

I also tried:

- Change the report to use native Oracle driver rather than JDBC. The deployment succeeded (but this is not what I want)

- Add a data source connection via Business View Manager, but no luck.

I know how to use/change jdbc connection with programtic way, but I just want to know if I want to use built-in components in CR2008 server without any coding the reports can be deployed and managed.

Thanks in advance.

Dennis

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Several years ago, I worked on a project where the client had a ton of CR reports that were being accessed through a .NET application. Internally, the reports were using ADO datasets (OLEDB connection) - basically the connection the reports were established programmatically and datasets were passed in for display. The solution was to clone the reports, change the connection type to ODBC (for SQL Server), publish the reports the reports to Enterprise. Sound like that's your situation - the CR use JavaBeans to interact with the database - external to BusinessObjects.

JDBC/OLEDB connections are for connecting to the reports from code (programmatically). Since you're using BOE standard (not through custom code), changing to a standard native connection to Oracle or an ODBC connection works because those are the methods the CMC expects out to the box. The error you're running through occurs because in the publishing step, in running through your report code to extract metadata to store in the system database, the SDK disapproves of the connection type (JDBC).

Former Member
0 Kudos

Found this document

https://boc.sdn.sap.com/files/boe_xir2_configuring_database_connections.pdf

Pages 22 - 24 talk about JDBC connections and ends with the following sentence...

NOTE: JDBC is supported in Universes in BusinessObjects XI 3.0. The configuration file is located at:

<BusinessObjects Enterprise install dir>\win32_x86\dataAccess\connectionServere\jdbc\jdbc.sbo.

ted_ueda
Active Contributor
0 Kudos

Hello Will,

The doc reference you have is specific to JDBC connection via the Universe Semantic Layer - it won't apply to those connecting directly to JDBC from Crystal Reports.

For direct JDBC connections via Crystal Reports, you'd reference the JDBC jars in CRConfig.xml and configure the URL in the report.

Sincerely,

Ted Ueda

Former Member
0 Kudos

Thanks, Ted. I included that document as a reference and that's why I noted that the connection applied only to Universes. Unfortunately, Dennis had previously made the changes to the CRConfig.xml file and didn't get past the error.

Ted, here's the real question: can one build a report that connects to a datasource through JDBC and deploy that report in either BOE XI or CR Server - and have it work? Does BOE XI or CR Server support direct connections through JDBC/JNDI (out of the box). (that's why I wrote the previous post starting with 'Several years ago').

Thanks!

Will

ted_ueda
Active Contributor
0 Kudos

Hello Will,

Crystal Reports supports connections to JDBC/JNDI out of the box, and have done so for a while, whether stand-alone or published to Enterprise.

To specify where the server would search for the JDBC driver jar files, you'd change the classpath tag found in the CRConfig.xml file found on the machine where the Crystal Reports Page or Job Server is running.

For early Crystal Enterprise 10 and before, it used Java Native Interface (JNI) to start the Java process to retrieve the data from the JDBC connection.

For later Crystal Enterprise 10 and later, it starts off a "Java Server" process, and communicates to the Crystal Reports process via CORBA TCP/IP connection.

Commonissues that may arise: (1) CRConfig.xml not configured properly, (2) unable to start or communicate to the "Java Server" because of permissions or firewall.

Note that this is a separate connectivity map from using ADO or ADO.NET.

Sincerely,

Ted Ueda

Former Member
0 Kudos

Hello Ted,

If my understanding is correct, you was talking about direct JDBC connection in Crystal Reports rather than CR 2008 Server.

Like what I have said before, if I just want to use CR 2008 as a container for reports and I can do it programmatically.

What I would like to know is the way to deploy a report via CMC on CR2008 server. The reports are using JDBC connection and may invovle RAS. Based on my testing, I even could not deploy the reports into 2008 server.

thanks,

Dennis

ted_ueda
Active Contributor
0 Kudos

Let me repeat.

Whether the report is being run by Crystal Reports 2008, Crystal Reports Server 2008 Crystal Reports Page Server or Crystal Reports Server 2008 Report Application Server, if the database connectivity is JDBC, then it uses the JavaServer.

The JavaServer is a java process started by the Crystal Reports 2008 designer or child processes of the Page or RAS Server.

The JavaServer refers to the CRConfig.xml to find the jar files for the JDBC connection.

That's why I'm asking you to test on Crystal Reports 2008 Designer on the same machine as Crystal Reports Server 2008. This will show whether there's any issues with the CRConfig.xml file itself.

If that works, then I'll recommend seeing if there's any issues with the server processes accessing the same files.

I repeat - whether Server or Designer, the data is accessed by the JavaServer.

Sincerely,

Ted Ueda

ted_ueda
Active Contributor
0 Kudos

Just to foreshadow what I'll ask next, the next tests are these:

Can you publish to Crystal Reports Server 2008 from Crystal Reports 2008 Designer?

If so, then you'd be looking at permissions to the ReportAdd process on the server.

I recommend [Process Monitor|http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx] for this.

Sincerely,

Ted Ueda

Former Member
0 Kudos

Hi Ted,

Thanks for your responses.

No, I got the same error when publishing a report via Designer (running on another machine) to Enterprise. The error is " Reason:Failed to read parameter object".

The wired thing is after I installed the 2008 designer on the same machine as 2008 server. I even could not preview a report and the designer was just crashed. but I could view database fields via JDBC Connection though. Maybe the designer and the server can not be installed under the same folder?

Any clues?

Thanks,

Dennis

ted_ueda
Active Contributor
0 Kudos

Something bad is happening. Is this with one report or all report you've tried?

If all reports, I suggest, if you have a support contract with SAP Business Objects, to open a SAP Incident for this.

Sincerely,

Ted Ueda

Answers (1)

Answers (1)

ted_ueda
Active Contributor
0 Kudos

So when you try refreshing the report in Crystal Reports Designer on the same machine where you have Crystal Reports Server, does it work?

Sincerely,

Ted Ueda