Mike
Randall Marbach wrote:
Hi All
We use Borland CaliberRM as a requirements management system at work. My goal is to use the CaliberRM Java API, perl and Inline::Java to generate custom reports out of this requirements repository. I am new to java and Inline::Java, but what I want to do is reproduce the following java program in perl and inline::Java. This program simply logs onto the server and prints a list of projects stored on the server.
======= caltst.java:
import com.starbase.caliber.*; import com.starbase.caliber.server.*;
public class caltst { public static void main(String[] args) { CaliberServer server = new CaliberServer("cspar333239");
try { Session CaliberSession = server.login("admin", "admin");
Project[] arrayOfProjects =
CaliberSession.getProjects();
for (int i = 0; i < arrayOfProjects.length;
i++)
{
System.out.println(arrayOfProjects[i].getName());
}
} catch(RemoteServerException rse) { rse.printStackTrace(); } }
}
========== my classpath is set as:
C:\CaliberUtil\caltst>set classpath classpath=;..\lib\CaliberRMSDK4COM70.jar
and when I execute the java program I get the following desired output:
C:\CaliberUtil\caltst>java caltst X100 Droid Automated Teller Machine Order Processing Company Standards Address Book EIS_CDD_DEV EIS_CDD_SYT EIS_CDD_PROD EIS_CDSD
Here is the perl version of the java code: ======= #!/usr/bin/perl use strict; use warnings;
BEGIN { # $ENV{CLASSPATH} = '/Data/Hi/higher.jar'; print $ENV{CLASSPATH} ; } use Inline Java => <<'END',CLASSPATH => '../lib/CaliberRMSDK4COM70.jar',STUDY => ['com.starbase.caliber.*','com.starbase.caliber.server.*'], AUTOSTUDY => 1;
import java.util.* ; import com.starbase.caliber.*; import com.starbase.caliber.server.*;
END
my $server = CaliberServer->new(["cspar333239"]); my $session = $server->login("admin", "admin");
my $ref_arrayOfProjects = $session->getProjects(); foreach my $project (@$ref_arrayOfProjects){ print $project->getName(), "\n";; }
==========
and this is what I get when I attempt to execute this code..
C:\CaliberUtil\caltst>perl caltst.pl ;..\lib\CaliberRMSDK4COM70.jar A problem was encountered while attempting to compile and install your Inline Java code. The command that failed was: "\j2sdk1.4.2_07\bin\javac.exe" -deprecation -d "C:\CaliberUtil\caltst\_Inline \lib\auto\caltst_pl_bda7" caltst_pl_bda7.java > cmd.out 2>&1
The build directory was: C:\CaliberUtil\caltst\_Inline\build\caltst_pl_bda7
The error message was: caltst_pl_bda7.java:3: package com.starbase.caliber does not exist import com.starbase.caliber.*; ^ caltst_pl_bda7.java:4: package com.starbase.caliber.server does not exist import com.starbase.caliber.server.*; ^ 2 errors
To debug the problem, cd to the build directory, and inspect the output files.
at caltst.pl line 9 BEGIN failed--compilation aborted at caltst.pl line 15.
C:\CaliberUtil\caltst>
=======
I suspect I am not setting up the parameters to Inline::Java correctly. Any help would be deeply appreciated.
TIA
Randy
__________________________________ Do you Yahoo!? Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/