Jay,

Inline::Java will bind your code under the current package.

So try : InteractiveBrokers::Test::com::ib::client::EClientSocket instead


Pat,

Note: If that doesn't work, please send the exact error mesage.


> Hi,
>
> My Inline::Java can't find my Java classes after studying them.  The class
> I
> want to study is in:
>
> [o901]:~> ls
> /home/jstrauss/IB/IBJts/java/com/ib/client/EClientSocket.class
> /home/jstrauss/IB/IBJts/java/com/ib/client/EClientSocket.class
>
> then I'm configuring Inline::Java like:
>
>    Java        => 'DATA',
>    PORT        => 7890,
>    CLASSPATH   => '/home/jstrauss/IB/IBJts/java',
>    STUDY       => ['com.ib.client.EClientSocket'],
>    PORT        => 7890,
>
> Then call it like:
>
>    my $client = com::ib::client::EClientSocket->new($api);
>
> I think my call syntax is correct (i.e correct number/type of args), and I
> thought my pathing is correct.  I can't see the problem.  Any pointer
> would
> be much appreciated.
>
> Thanks
> Jay
>
> Below is the full (test) code.
>
> package InteractiveBrokers::Test;
>
> use base qw(Class::Accessor);
>
> use Inline (
>    Java        => 'DATA',
>    PORT        => 7890,
>    CLASSPATH   => '/home/jstrauss/IB/IBJts/java',
>    STUDY       => ['com.ib.client.EClientSocket'],
>    PORT        => 7890,
> );
>
> sub java {
>
>    my $self = shift;
>    $api = new InteractiveBrokers::Test::Simple();
>    my $client = com::ib::client::EClientSocket->new($api);
>
> }
>
> 1;
>
> __DATA__
> __Java__
>
> class Simple {
>    public Simple(){ }
>
>    public String Print(String s){
>       return s;
>    }
> }
>
>
>
>
>
>

Reply via email to