Dear all

 

I have been building web based application with Embperl since end 1999. I just now decided to start utilising Embperl::Object and, consequently, altered relevant configuration files to enable me to use the OO paradigm.

 

My intention was to run both older Embperl web applications (not requiring Embperl::Object) and newer ones requiring Embperl::Object. However, this has caused some issues.

 

More to the point, I have managed to get both Embperl applications and Embperl::Object applications to run individually but not jointly. That is, a certain configuration allows me to run my older Embperl applications but then the newer Embperl::Object applications fail, and vice versa.

 

If I include in the http.conf “PerlModule Embperl” the web applications utilising Embperl::Object works, by omitting it web applications not using Embperl::Object (but still Embperl) works. BUT I NEVER GET THEM BOTH TO WORK!!!!

 

The error message I get when web applications utilising Embperl::Object does not work is : “ERR: 56: : Unknown Provider epcompile” and, when web applications utilising Embperl without Embperl::Object does not work I get error message “Undefined subroutine &HTML::Embperl::handler called.\n”.

 

Any help would be highly appreciated thank you.

 

Below are my perl.conf and startup.pl.

 

Thanks

Ragnar

 

####################### perl.conf ##########################

 

PerlRequire       /etc/httpd/startup.pl

PerlFreshRestart  On

 

SetEnv EMBPERL_DEBUG 1

SetEnv EMBPERL_MAIL_ERRORS_TO [EMAIL PROTECTED]

 

PerlLogHandler Apache::DBILogger

 

PerlSetVar DBILogger_data_source    dbi:Pg:dbname=httpdlog

 

<files *.epl>

SetHandler  perl-script

PerlHandler HTML::Embperl

Options           +ExecCGI

</files>

 

<location /reports>

SetHandler  perl-script

PerlHandler HTML::Embperl

Options           +ExecCGI

</location>

 

<files press.html>

SetHandler      perl-script

PerlHandler     HTML::Embperl

Options         +ExecCGI

</files>

 

AddType text/html .epl

 

# --------- Access directives (inhouse) ----------

<location /protected>

PerlAccessHandler Apache::SubTicketAccess->authenticate

PerlSetVar        TicketRealm protected

</location>

 

<location /loginform>

SetHandler        perl-script

PerlHandler       Apache::SubTicketAccess->login_form

PerlSetVar              TicketRealm protected

</location>

 

<location /login>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->login

PerlSetVar              TicketRealm protected

</location>

 

<location /protected/logout>

SetHandler        perl-script

PerlHandler             Apache::SubTicketAccess->logout

PerlSetVar              TicketRealm protected

</location>

 

# ------------ Access Directives (tracker) ----------

<location /protected_tracker>

PerlAccessHandler       Apache::SubTicketAccess->authenticate

PerlSetVar              TicketRealm protected_tracker

</location>

 

<location /loginform_tracker>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->login_form

PerlSetVar              TicketRealm protected_tracker

</location>

 

<location /login_tracker>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->login

PerlSetVar              TicketRealm protected_tracker

</location>

 

<location /protected_tracker/logout>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->logout

PerlSetVar              TicketRealm protected_tracker 

</location>

 

# ------------ SOLICITOR MATTER MANAGEMENT HANDLER ---------------

 

<location /protected_sol_matter_mngt>

PerlAccessHandler       Apache::SubTicketAccess->authenticate

PerlSetVar              TicketRealm protected_sol_matter_mngt

</location>

 

<location /loginform_sol_matter_mngt>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->login_form

PerlSetVar              TicketRealm protected_sol_matter_mngt

</location>

 

<location /login_sol_matter_mngt>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->login

PerlSetVar              TicketRealm protected_sol_matter_mngt

</location>

 

<location /protected_sol_matter_mngt/logout>

SetHandler              perl-script

PerlHandler             Apache::SubTicketAccess->logout

PerlSetVar              TicketRealm protected_sol_matter_mngt

</location>

 

 

<Location /protected_sol_matter_mngt>

PerlSetEnv EMBPERL_OBJECT_BASE base.oop

PerlSetEnv EMBPERL_FILESMATCH "\.oop$"

PerlSetEnv EMBPERL_OBJECT_STOPDIR /protected_sol_matter_mngt     

SetHandler perl-script

PerlHandler Embperl::Object

Options ExecCGI

</Location>

 

######################## startup.pl ##########################

 

#!/usr/bin/perl

 

 

BEGIN {

   unshift(@INC, "/caseTracking/packages");

}

 

use Apache::DBI;

use DBI;

 

$ENV{EMBPERL_SESSION_HANDLER_CLASS} = 'no';

 

use Apache::Cookie;

use Apache::DBILogger;

use Apache::TicketAccess();

use Apache::SubTicketAccess();

 

 

# -- Access directives for 'protected' area --

  Apache::SubTicketAccess->configure('protected', {

      TicketDB          => 'dbi:Pg(AutoCommit=>0):dbname=transactiondb',

      TicketDBUser            => 'clm',

      TicketUserTable         => 'users:username:passwd',

      TicketTable             => 'tickets:ticket_hash:expires',

      TicketSecretTable       => 'ticketsecrets:sec_data:sec_version',

      TicketDomain            => '.tnsn.com',

      TicketPath              => '/protected',

      TicketSecure            =>  0,

      TicketLoginForm         => '/loginform',

      TicketLoginScript       => '/login',

      TicketExpires           => 30,

      TicketLogoutURI         => '/loginform?logout=1',

      TicketDefaultPage => '/home.epl',

  });

 

# -- Access directive for tracker.tnsn.com --

  Apache::SubTicketAccess->configure('protected_tracker', {

      TicketDB                => 'dbi:Pg(AutoCommit=>0):dbname=transactiondb',

      TicketDBUser            => 'clm',

      TicketUserTable         => 'users_tracker:username:passwd',

      TicketTable             => 'tickets:ticket_hash:expires',

      TicketSecretTable       => 'ticketsecrets:sec_data:sec_version',

      TicketDomain            => '.tnsn.com',

      TicketPath              => '/protected_tracker',

      TicketSecure            =>  0,

      TicketLoginForm         => '/loginform_tracker',

      TicketLoginScript       => '/login_tracker',

      TicketExpires           => 60,

      TicketLogoutURI         => '/',

      TicketDefaultPage       => '/protected_tracker/mainpage.epl?first=true',

  });

 

# -- Access directive for solicitor matter management --

  Apache::SubTicketAccess->configure('protected_sol_matter_mngt', {

        TicketDB                => 'dbi:Pg(AutoCommit=>0):dbname=transactiondb',

        TicketDBUser            => 'clm',

        TicketUserTable         => 'users_solicitors:username:passwd',

        TicketTable             => 'tickets:ticket_hash:expires',

        TicketSecretTable       => 'ticketsecrets:sec_data:sec_version',

        TicketDomain            => '.tnsn.com',

        TicketPath              => '/protected_sol_matter_mngt',

        TicketSecure            =>  0,

        TicketLoginForm         => '/loginform_sol_matter_mngt',

        TicketLoginScript       => '/login_sol_matter_mngt',

        TicketExpires           => 60,

        TicketLogoutURI         => '/',

        TicketDefaultPage       => '/protected_sol_matter_mngt/home.oop',

  });

 

 

1;

 

 

Reply via email to