> Don't forget, your classes will be imported under Finance::IB::TWS, so
> Inline_Bridge will need to be accessed as
> Finance::IB::TWS::Inline_Bridge.

Sorry for the delay, been having internet problems at home.  I had tried it 
like you said before I posted, but like a dummy forgot to mention it.

>
> Also see the PACKAGE directive to set a different package.
>
> Patrick

I made a new test script boiled down to the minimum.  Now I'm getting not 
found on the java classes I studied, which is weird, since I think I have my 
environment correct.

[EMAIL PROTECTED]:~/Finance-IB-TWS/t$ echo $CLASSPATH 
/home/jstrauss/IBJts/java

[EMAIL PROTECTED]:~/Finance-IB-TWS/t$ 
ls /home/jstrauss/IBJts/java/com/ib/client/*.class
/home/jstrauss/IBJts/java/com/ib/client/ComboLeg.class
/home/jstrauss/IBJts/java/com/ib/client/Contract.class
/home/jstrauss/IBJts/java/com/ib/client/ContractDetails.class
/home/jstrauss/IBJts/java/com/ib/client/EClientErrors.class
/home/jstrauss/IBJts/java/com/ib/client/EClientErrors$CodeMsgPair.class
/home/jstrauss/IBJts/java/com/ib/client/EClientSocket.class
/home/jstrauss/IBJts/java/com/ib/client/EReader.class
/home/jstrauss/IBJts/java/com/ib/client/EWrapper.class
/home/jstrauss/IBJts/java/com/ib/client/Execution.class
/home/jstrauss/IBJts/java/com/ib/client/ExecutionFilter.class
/home/jstrauss/IBJts/java/com/ib/client/Order.class
/home/jstrauss/IBJts/java/com/ib/client/ScannerSubscription.class

[EMAIL PROTECTED]:~/Finance-IB-TWS/t$ cat test.pl 
use Finance::IB::TWS;
my $tws = Finance::IB::TWS->new();

But I get:
[EMAIL PROTECTED]:~/Finance-IB-TWS/t$ perl test.pl                              
  
Can't locate object method "new" via package 
"com::ib::client::EClientSocket" (perhaps you forgot to load 
"com::ib::client::EClientSocket"?) 
at /home/jstrauss/Finance-IB-TWS/lib/Finance/IB/TWS.pm line 18.

When I try to run:
package Finance::IB::TWS;
use strict;

use Inline (
    Java    => "DATA",
    JNI     => 1,
    AUTOSTUDY => 1,
    STUDY => ['com.ib.client.EClientSocket',
              'com.ib.client.Contract',
             ],
);

sub new {
    my $self = bless {}, shift;

    my $callback; 
    my $api = Finance::IB::TWS::Inline_Bridge->new($callback);
    my $ib =  com::ib::client::EClientSocket->new($api);

    return $self;
}
1;

_DATA__
__Java__

import org.perl.inline.java.*;
import com.ib.client.*;

class Inline_Bridge extends InlineJavaPerlCaller implements EWrapper {

    InlineJavaPerlObject perlobj;
...

Reply via email to