Hi, I've been trying to include some java-code in an existing Catalyst app, which has caused me some trouble. I've tracked it down to a simple mod_perl issue, the reason for which escapes me.
The following module, based on the documentation example: -----------LBR.pm------------------------------------------ package LBR; use Apache2::RequestRec (); use Apache2::RequestIO (); use Apache2::Const; use Inline ( Java => <<'END', public class JAxH { private String myx; public JAxH(String x) { myx = x; } public String foo() { return "Just Another " + myx + " Hacker"; } } END DEBUG => 0, AUTOSTUDY => 1, SHARED_JVM => 1, START_JVM => 1, DIRECTORY => '/tmp/inline', PACKAGE => 'main', ); sub handler { my $r = shift; my $j = new JAxH('Inline') ; $r->content_type("text/html"); $r->print("<html><body>", $j->foo(), "</body></html>"); return Apache2::Const::OK; } 1; ------------------------------------------------------------ Configured with the following httpd.conf snippet: ------------------------------------------------------------ <VirtualHost *:80> ServerName aberlour.balker.dk DocumentRoot /home/lbr/www <Location /> SetHandler modperl PerlResponseHandler LBR </Location> </VirtualHost> ------------------------------------------------------------ This works. But if I add "PerlLoadModule LBR" to the VirtualHost, the httpd doesn't come back up after the second restart (it often works the first time!) Software versions: FreeBSD 6.0 perl-5.8.7_2 Practical Extraction and Report Language apache-2.2.0_5 Version 2.2 of Apache web server with prefork MPM. mod_perl2-2.0.2,3 Embeds a Perl interpreter in the Apache2 server jdk-1.5.0p2_3 Java Development Kit 1.5.0 p5-Inline-0.44 Write Perl subroutines in other programming languages p5-Inline-Java-0.50.91 Write Perl subroutines and classes in Java Rest of the configuration is fairly standard - I haven't changed the Apache MPM or anything. Any ideas? I'd really hate not using PerlLoadModule on production systems. -- Lars Balker Rasmussen Consult::Perl