[Agenda] Team management and Project tracking - Success Story

2002-07-18 Thread BeerBong

Hello!

We just finished writing first version of our system Agenda -
http://agenda.samara.net.

First of all I want to say about our framework - Apache::Site, which
we used in all our current projects (about 20). If you don't
interested just skip to next paragraph.
http://agenda.samara.net/Apache-Site.pm
It provides Framework for Template::Toolkit modules...
Combination of Apache::Site and Temlate::Toolkit is more powerful and
flexible for us than any other solutions on this page
http://www.perl.com/pub/a/2001/08/21/templating.html?page=4
Module parses URI, determine handler from it, has a caching
capabilities... In short word, it is our template for mod_perl
handler, which works with Template::Toolkit.
We wrote about this module here, but didn't recieve any responses... I
think lack of documentation is a problem... or my gruesome english :)

Let's come back to Agenda...
It is pure model-view-controller application. There are Agenda.pm -
Template::Toolkit - Apache::Agenda.pm modules - therefore Agenda is
very flexible.
It works on Linux box now. It has a multi-language kernel. It has 2
languages now - english  russian, but we didn't write english Help
yet :(
Translation to other language or correcting of interface may be
performed from the same WEB interface.
It is in production for my studio (http://www.webzavod.ru/) during 2
months. Productivity rised greatly, president of our companies is
happy - he gets reports when he wants, I'm happy - I do not write
these reports.

And delicate topic... Our chief wants to sell this application...
Strange! :)) Price is $590 for one installation and unlimited licenses
now, but it requires Oracle now - we want to migrate the application
to free database (mySQL). Writing complex systems with powerful
databases such Oracle is much simpler on developer stage.
MSProject 2002 with comparable functionality (I saw MS Project - we
provide all basic functionality, I dont know what I need else from
Agenda now) but better interface :) will costs for our company (50
employees) ---
MSProject Server 2002 - $1500 + 50*$599 for Microsoft Project Standart
= $31500, or
MSProject Server 2002 - $1500 + 50*$170 for Web Access Licenses =
$1
+ price for required MS SQL Server $1500 minimum or $11000 maximum

I want to contribute my work to Open Source Community, but it breaks
my company policy :-/
I have a right to pass sources with my gratitude for free to
contributors of technologies we used (for own usage) - Apache, Perl,
mod_perl, DBI, DBD::mysql, Template::Toolkit, Apache::ASP (we used it
early), AxKit... Sorry if forget someone. May these people advise how
to separate free version of the system for Open Source Community and
not much harm sales of the system?

PS: We're redesigning the interface just now. Some pages are different
from each other :)

Sergey Polyakov   aka BeerBong
Chief of WebZavod http://www.webzavod.ru
Tel. +7 (8462) 43-93-85 | +7 (8462) 43-93-86
mailto:[EMAIL PROTECTED]






Re: [Agenda] Team management and Project tracking - Success Story

2002-07-18 Thread BeerBong

  First of all I want to say about our framework - Apache::Site,
which
  we used in all our current projects (about 20). If you don't
  interested just skip to next paragraph.
  http://agenda.samara.net/Apache-Site.pm

 Did you actually release Apache::Site on CPAN? Couldn't find it
there.

We did not release it on CPAN. We announced it in mod_perl list first
and wanted to get offers for naming the Module
(Apache::Site sounds too much pretentious :) ). We consider that code
is not good as possible and thought gurus will point to weak parts of
code.
After all, gurus can say - it is comletely useless module, because
there are better solutions and ... bla bla bla... :) We don't want to
publish JustAnotherSillyApacheFramework :)
And another, main trouble - permanent lack of time for documenting :((


  Let's come back to Agenda...
  It is pure model-view-controller application. There are
Agenda.pm -
  Template::Toolkit - Apache::Agenda.pm modules - therefore Agenda
is
  very flexible.
  It works on Linux box now. It has a multi-language kernel. It has
2
  languages now - english  russian, but we didn't write english
Help
  yet :(
  Translation to other language or correcting of interface may be
  performed from the same WEB interface.
  It is in production for my studio (http://www.webzavod.ru/) during
2
  months. Productivity rised greatly, president of our companies is
  happy - he gets reports when he wants, I'm happy - I do not write
  these reports.

 This looks quite interesting. The company I work for is constantly
looking
 for some useable workflow-, ressource- and processmananagement, erm.
 whatever you call it :)

  And delicate topic... Our chief wants to sell this application...
  Strange! :)) Price is $590 for one installation and unlimited
licenses
  now, but it requires Oracle now - we want to migrate the
application
  to free database (mySQL). Writing complex systems with powerful
  databases such Oracle is much simpler on developer stage.

 I think the price is reasonable - but the requirment of an oracle
 installation isn't really a good point for us. :)

 Btw, I would beg you to give PostgreSQL a shot before you port
Agenda to
 MySQL, as PostgreSQL is far nearer - in terms of features and warm
fuzzy
 feelings - to Oracle as MySQL is (I don't want to get into advocacy
here,
 but I wouldn't say that MySQL is a RDMBS at all).

Agreed, realization of all business logic outside database is real
PITA, just mySQL is more popular...

PS: Forgot to say that there is another way - Application Service
Providing. Just now 3 independent system works on
http://agenda.samara.net -
Demo Russian, Demo English and Production version of Company... It
should be mch cheaper, but there is another bottleneck - not all
companies will agree to post payments for projects and other
confidential information to Application which hosted somewhere in
snowy Russia with bears on the streets :


Sergey Polyakov   aka BeerBong
Chief of WebZavod http://www.webzavod.ru
Tel. +7 (8462) 43-93-85 | +7 (8462) 43-93-86
mailto:[EMAIL PROTECTED]






RE: List files from a share of a windows client

2002-07-18 Thread Alessandro Forghieri

Greetings.

on my machine:

C:\ perl - e 42 -d
Default die handler restored.

Loading DB routines from perl5db.pl version 1.07
Editor support available.

Enter h or `h h' for help, or `perldoc perldebug' for more help.

main::(-e:1):   42
  DB1 opendir(DIR,'//webteam/') || warn($!)
No such file or directory at (eval 4)[D:/Perl/lib/perl5db.pl:1521] line 2.

  DB2 opendir(DIR,'//webteam/discoc/') || warn($!)

  DB3 x readdir(DIR)
0  'AUTOEXEC.BAT'
1  'baseclasses.log'
2  'bin'
3  'boot.ini'
[...]

//webteam is a machine name, //webteam/discoc a share name.
So it should work (except if you want the share list of a machine, which you
can get by using
capabilities from the Win32:: namespace - or even from parsing  `net view
machine`...)

Also if you are running apache as a service, be warned that the default
impersonating user (LocalSystem) does not typically have access permissions
to net share (this is especially true under NT Domain) - therefore you have
to change the impersonating user of the service.
(iven you have a working example this should not be your situation, however)

Cheers,
alf

P.S: I have a feeling this may be OT, on the mod_perl list...



make test problem error 111

2002-07-18 Thread Padraic Woods



Hi,
I'm trying to install apache + mod_perl + mod_ssl 
but get aerror after running make test, I've tried skiping the make test 
butget a segmentation faultwhen I try starting apache.


Heres what I did,
#configure% cd mod_ssl-2.8.10-1.3.26% 
./configure --with-apache=../apache_1.3.26% cd ../mod_perl-1.27% perl 
Makefile.PL USE_APACI=1 EVERYTHING=1 SSL_BASE=/usr/local/ssl 
APACHE_PREFIX=/usr/local/apache 
APACI_ARGS=--enable-module=ssl,--enable-module=rewrite
# build/test/install Apache/mod_ssl/mod_perl% 
make test  make install

My setup,
Red Hat 7.2
Perl 5.6.1
mod_perl-1.27
openssl-0.9.6b
apache_1.3.26
mod_ssl-2.8.10-1.3.26

Heres the output from make test

(cd ../apache_1.3.26  PERL5LIB=/usr/local/src/mod_perl-1.27/lib: 
make)
make[1]: Entering directory `/usr/local/src/apache_1.3.26'
=== src
make[2]: Entering directory `/usr/local/src/apache_1.3.26'
make[3]: Entering directory `/usr/local/src/apache_1.3.26/src'
=== src/regex
make[4]: Nothing to be done for `all'.
=== src/regex
=== src/os/unix
make[4]: Nothing to be done for `all'.
=== src/os/unix
=== src/ap
make[4]: Nothing to be done for `all'.
=== src/ap
=== src/main
make[4]: Nothing to be done for `all'.
=== src/main
=== src/lib
=== src/lib
=== src/modules
=== src/modules/standard
make[5]: Nothing to be done for `all'.
=== src/modules/standard
=== src/modules/ssl
make[5]: Nothing to be done for `all'.
=== src/modules/ssl
=== src/modules/perl
make[5]: Nothing to be done for `all'.
=== src/modules/perl
=== src/modules
gcc -c -I. -I/usr/lib/perl5/5.6.1/i386-linux/CORE -I./os/unix -I./include 
-DLINUX=22 -I/usr/include/db1 -DMOD_SSL=208110 -DMOD_PERL -DUSE_PERL_SSI 
-fno-strict-aliasing -I/usr/local/include -DUSE_HSREGEX -DEAPI -DNO_DL_NEEDED 
-fno-strict-aliasing -I/usr/local/include `./apaci` modules.c
gcc -c -I. -I/usr/lib/perl5/5.6.1/i386-linux/CORE -I./os/unix -I./include 
-DLINUX=22 -I/usr/include/db1 -DMOD_SSL=208110 -DMOD_PERL -DUSE_PERL_SSI 
-fno-strict-aliasing -I/usr/local/include -DUSE_HSREGEX -DEAPI -DNO_DL_NEEDED 
-fno-strict-aliasing -I/usr/local/include `./apaci` buildmark.c
gcc -DLINUX=22 -I/usr/include/db1 -DMOD_SSL=208110 -DMOD_PERL -DUSE_PERL_SSI 
-fno-strict-aliasing -I/usr/local/include -DUSE_HSREGEX -DEAPI -DNO_DL_NEEDED 
-fno-strict-aliasing -I/usr/local/include `./apaci` -L/usr/local/ssl/lib \
-o httpd buildmark.o modules.o modules/standard/libstandard.a 
modules/ssl/libssl.a modules/perl/libperl.a main/libmain.a ./os/unix/libos.a 
ap/libap.a regex/libregex.a -lm -lcrypt -lndbm -lssl -lcrypto -rdynamic 
-L/usr/local/lib /usr/lib/perl5/5.6.1/i386-linux/auto/DynaLoader/DynaLoader.a 
-L/usr/lib/perl5/5.6.1/i386-linux/CORE -lperl -lnsl -ldl -lm -lc -lcrypt -lutil 

make[3]: Leaving directory `/usr/local/src/apache_1.3.26/src'
make[2]: Leaving directory `/usr/local/src/apache_1.3.26'
make[2]: Entering directory `/usr/local/src/apache_1.3.26'
=== src/support
make[3]: Entering directory `/usr/local/src/apache_1.3.26/src/support'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/usr/local/src/apache_1.3.26/src/support'
=== src/support
make[2]: Leaving directory `/usr/local/src/apache_1.3.26'
make[2]: Entering directory `/usr/local/src/apache_1.3.26'
+-+
| Before you install the package you now should prepare the SSL |
| certificate system by running the 'make certificate' command. |
| For different situations the following variants are provided: |
| |
| % make certificate TYPE=dummy (dummy self-signed Snake Oil cert) |
| % make certificate TYPE=test (test cert signed by Snake Oil CA) |
| % make certificate TYPE=custom (custom cert signed by own CA) |
| % make certificate TYPE=existing (existing cert) |
| CRT=/path/to/your.crt [KEY=/path/to/your.key] |
| |
| Use TYPE=dummy when you're a vendor package maintainer, |
| the TYPE=test when you're an admin but want to do tests only, |
| the TYPE=custom when you're an admin willing to run a real server |
| and TYPE=existing when you're an admin who upgrades a server. |
| (The default is TYPE=test) |
| |
| Additionally add ALGO=RSA (default) or ALGO=DSA to select |
| the signature algorithm used for the generated certificate. |
| |
| Use 'make certificate VIEW=1' to display the generated data. |
| |
| Thanks for using Apache  mod_ssl. Ralf S. Engelschall |
| [EMAIL PROTECTED] |
| www.engelschall.com |
+-+
make[2]: Leaving directory `/usr/local/src/apache_1.3.26'
=== src
make[1]: Leaving directory `/usr/local/src/apache_1.3.26'
make[1]: Entering directory `/usr/local/src/mod_perl-1.27/Apache'
make[1]: Leaving directory `/usr/local/src/mod_perl-1.27/Apache'
make[1]: Entering directory `/usr/local/src/mod_perl-1.27/Connection'
make[1]: Leaving directory `/usr/local/src/mod_perl-1.27/Connection'
make[1]: Entering directory `/usr/local/src/mod_perl-1.27/Constants'
make[1]: Leaving directory `/usr/local/src/mod_perl-1.27/Constants'
make[1]: 

RE: while - modperl 2.0/Apache 2.0

2002-07-18 Thread Alessandro Forghieri

Greetings.

I have observed the same behavior (on win32).

Scripts that are invoked from the same browser through the same URL appear
to bind to the same 
perl thread and are therefore serialized. Changing the URL appears to bind
the request to a different thread. (My observation regarded access from a
different Location: Udei's experience shows that a URL change suffices).

I have often wondered wether  this is incidental or specified behaviour.

Cheers,
alf



RE: New mod_perl site and oddness with IE

2002-07-18 Thread Allan Juul

before the mails comes tumbling in ...

please check this url [tested on winXP/IE6.0] as already send to the docs
list and original poster

http://www.bullitt.suite.dk/clean3/dst_html/docs/1.0/guide/performance.html



thanks
./allan




 (There was no reason *why* taking out the 'position: relative's should
 work - it just struck me as the first thing that wasn't 
 necessary in the
 style sheet. Possibly irritating an IE bug just a little too much)

not sure which rule of position you were talking about. the above url
specify no position for the rightbox div



perl section: Files under Directory - whats wrong here?

2002-07-18 Thread PVM

Hi,

In a regular Apache configuration style, this works for me:

Directory /usr/local/httpd/htdocs/capmon/
Files '_*.mod'
  PerlSetEnv PERL5LIB /opt/capmon/inc:/usr/local/httpd/htdocs/capmon/cgi
  PerlSendHeader On
SetHandler perl-script
PerlHandler Apache::Registry
/Files
/Directory

Now why doesn't this work in a perl /perl section, :

$Directory = {
  '/usr/local/httpd/htdocs/capmon/' = {
'Files' = {
  '_*.mod' = {
'PerlHandler' = 'Apache::Registry',
'PerlSendHeader' = 'On',
'PerlSetEnv' = [
  'PERL5LIB',
  '/opt/capmon/inc:/usr/local/httpd/htdocs/capmon/cgi'
],
'SetHandler' = 'perl-script'
  }
}
  }
};

It gives no errors, but just doesn't treat it as CGI. As far as I can see,
it is *exactly* equivalent to the Directory section at the top, isn't it?

In a perl /perl section, this works *does* work:

$Files = {
  '_*.mod' = {
'PerlHandler' = 'Apache::Registry',
'PerlSendHeader' = 'On',
'PerlSetEnv' = [
  'PERL5LIB',
  '/opt/capmon/inc:/usr/local/httpd/htdocs/capmon/cgi'
],
'SetHandler' = 'perl-script'
  }
};

But it isn't limited to the /usr/local/httpd/htdocs/capmon/ directory.

How do I restrict it to a particular directory?

I've read the
http://perl.apache.org/docs/1.0/guide/config.html#Apache_Configuration_in_Perl

section
 and
http://modperl.com:9000/book/chapters/ch8.html#Configuring_Apache_with_Perl
and especially from the last reference, I've tried to follow the Directive
is a Nested Block  section exactly. Are there any other pointers?

I'm running on SuSE Linux 7.2:

pvm@lyta:~/capmon rpm -qa | egrep -i 'apache|mod_perl'
apache-1.3.19-48
mod_perl-1.25-30
perl-Apache-SSI-2.16-28

It's also 28C in this room, so maybe that is the root cause!! :-)

Thanks for your attention thus far,

Peter

P.S: When you subscribe to this mailing list, or when you look for the FAQ
on Google, you are pointed towards:
http://perl.apache.org/faq/
But this is a 404...





[OT] bOP (was: Re: [ANNOUNCE] Petal 0.1)

2002-07-18 Thread Jean-Michel Hiver

  and on top of that I want people to be able to edit
  templates easily in dreamweaver, frontpage, etc
  and send templates thru
  HTML tidy to be able to always output valid XHTML.
 
 If you are an OO-advocate, you would hide the presentation format in
 objects, e.g. Table, String, and Link.  This ensures the output is
 valid through the (re)use of independently tested objects.  Objects
 also provide a mechanism for overriding behavior.

Well, there is an interesting example on this page:

input type=text name=username size=25

And the question which is raised is: How does the graphic designer know
that the display size of a username is 25?.

Here is what you'd write with Petal:

input type=text name=username size=25
   petal:attributes=size user.login_preferred_length;
 maxsize user.login_maxlength /

Then no matter what, the display size of a username would be OK. And the
graphic designer could still move this tag around or change the 'size'
attribute. Better, you could do the following:

span style=border-style:solid; border-color: blue
  petal:attributes=style default_style

  input type=text name=username size=25
 petal:attributes=size user.login_preferred_length;
   maxsize user.login_maxlength /

/span

And then the dynamic component would have a blue border when it is
edited (so that the graphic designers knows that this bit of the page is
subject to change) but which would be set to default_style when the page
is processed...

I find it really really horrible to mix HTML and Perl code. So let's say
that some different kind of HTML is needed, it means that I have to
create a new object, subclass an existing widget, etc...

With a templating system, this can all be done by someone who has
knowledge of HTML. Better, with Petal, all the presentational stuff can
be done with a WYSIWYG editor a la frontpage. No need to go and tweak
some strange declarative language.

Actually I don't think these two things are incompatible. After all you
could have 'independently tested objects' which would themselves use
templates... Then you could organize your templates into two kinds:

'system / admin' templates which are related to the 'web application',
you the programmer, would be in charge of maintaining these templates.

'presentational' templates which would just delegate method calls to
your template driven widget library. You'd give these templates for your
graphic designers to play with...


 And here is the HTML-less source:
 http://petshop.bivio.biz/src?s=View.items

Well, sorry, I find it really, really horrible :-)

For example:

image = 'add_to_cart',
field = 'add_to_cart',
alt = 'Add Item to Your Shopping Cart',

or:

cellpadding = 2,
cellspacing = 2,

You are definitely tying your objects with HTML. 'cellpadding' or 'alt'
are _definitely_ HTML-specific, and I don't see why they should be
polluting your business logic.

I see that all the code which you output is html 4.0 transitional. What
if you want to make everything XHTML 1.1 strict? Or if you want to get
rid of all the 'font face' tags?

You want to rewrite all your widget library? Wouldn't it be easier to
have templates which you can send through some kind of HTML fixed /
validator such as tidy?


 Apologies to those who are tired of the *ML vs. Perl debate.

Well, as long as we don't start trolling and that we agree to disagree
we'll be fine :-)

Best regards,
-- 
IT'S TIME FOR A DIFFERENT KIND OF WEB

  Jean-Michel Hiver - Software Director
  [EMAIL PROTECTED]
  +44 (0)114 255 8097

  VISIT HTTP://WWW.MKDOC.COM



mod_perl-Apache server error problem

2002-07-18 Thread Sophokles Zafeiris








Hi,

I have installed apache 1.3.26, mod_perl
1.27 and php 4.1.2 on a Sun Sparc
running solaris 7

All the installation process went ok,
apache works fine and all my php scripts run without
any problem.

I wrote a very simple asp (perlscript)
page in the servers home directory and I had no problem.

But when I copied the same script in a subdirectory a 500
internal srver error came out and in the servers
error log was written the following message:



[Thu Jul 18 16:12:50 2002] [error]
sdbm store returned -1, errno
2, key 0ed942d

cb620f8a58886fae502846034 at /usr/local/lib/perl5/site_perl/5.6.1/MLDBM.pm
line

161.


MLDBM::STORE('MLDBM=HASH(0x672f98)',
'0ed942dcb620f8a58886fae502846034',

'HASH(0x675450)') called at
/usr/local/lib/perl5/site_perl/5.6.1/MLDBM/Sync.pm

line 87

 MLDBM::Sync::AUTOLOAD('MLDBM::Sync=HASH(0x448b10)', '0ed942dcb620f8a5888

6fae502846034', 'HASH(0x675450)')
called at /usr/local/lib/perl5/site_perl/5.6.1

/Apache/ASP/State.pm line 350

 Apache::ASP::State::STORE('Apache::ASP::State=HASH(0x492124)',
'0ed942dc

b620f8a58886fae502846034', 'HASH(0x675450)')
called at /usr/local/lib/perl5/site

_perl/5.6.1/Apache/ASP/StateManager.pm line 518

 Apache::ASP::RefreshSessionId('Apache::ASP=HASH(0x53fa2c)', '0ed942dcb62

0f8a58886fae502846034', 'HASH(0x67542c)')
called at /usr/local/lib/perl5/site_pe

rl/5.6.1/Apache/ASP/Session.pm line 117

 Apache::ASP::Session::new('Apache::ASP=HASH(0x53fa2c)')
called at 

/usr/local/lib/perl5/site_perl/5.6.1/Apache/ASP/StateManager.pm
line 113

 Apache::ASP::InitState('Apache::ASP=HASH(0x53fa2c)') called at

/usr/local/lib/perl5/site_perl/5.6.1/Apache/ASP.pm
line 382

 Apache::ASP::new('Apache::ASP', 'Apache=SCALAR(0x3f6274)') called at 

/usr/local/lib/perl5/site_perl/5.6.1/Apache/ASP.pm line 164

 Apache::ASP::handler('Apache=SCALAR(0x3f6274)')
called at /dev/null line0



 eval {...} called at /dev/null
line 0



Anyone can help with that?



Sophokles








Re: Apache-print Timed Out

2002-07-18 Thread Chris Newman

This may be a long shot but the circumstances sound familiar. I had a problem
where an HTTP connection was simply not being properly closed and Netscape4
was just hanging around waiting for the response to finish whereas other
browsers/platforms had no problem, ie. the other browsers were
auto-cancelling the delayed response. Connecting to port 80 over telnet also
clearly showed the connection was simply not closing and I modified the java
proxy server source in an attempt to hammer blow the connection. Turns out
that the JRE needed upgrading on the proxy and the I/O worked properly.
My point is it may well be nothing at all to do with Apache/mod_perl. I had
been trying to debug the PHP engine on the server but telnetting from the
proxy to the server showed the connection was closing correctly so it had to
be the proxy's fault.

as I said, this may be a long shot.

chris

On Thursday 18 Jul 2002 3:21 pm, you wrote:
 On 7/10/02 10:37 AM, David Wheeler [EMAIL PROTECTED] claimed:
  I have a couple of strange bugs showing up in Bricolage that have
  something to do with Apache-print timing out (with Win 95 and Mac OS 9
  -- yes, these folks need to join the new millennium), and have no idea
  how or under what circumstances print times out.

 Okay, I've got the output of some tcpdump runs in Bricolage Bugzilla.


 http://bricolage-bugzilla.thepirtgroup.com/showattachment.cgi?attach_id=35

 All they demonstrate, however, is that Apache/mod_perl never finishes
 sending the page to the browser. One page is 32120 bytes, and the other is
 36500 bytes. I really have no clue what could be causing this. Why should
 Apache-print ever time out?  I didn't even know that timing out was
 something that a print method could do. And why does it only happen for
 some browser/platform combinations?

 Anyone who has some ideas, or who can suggest other approaches to
 diagnosing the problem, will get a great deal of gratitude from me and many
 Bricolage users.

 Thanks,

 David

---



Re: Apache-print Timed Out

2002-07-18 Thread Perrin Harkins

David Wheeler wrote:
  Why should Apache-print ever time out?

One reason could be a web client that disconnects.  There could also be 
a dropped network connection or one that's too slow.  I think you can 
adjust this behavior with the TimeOut directive in httpd.conf.

 I didn't even know that timing out was
 something that a print method could do.

This isn't the same thing as CORE::print.  It's overriden for mod_perl 
to send to the network.  Even CORE::print can return false in certain 
conditions, like when writing a file when the disk is full.

 And why does it only happen for some
 browser/platform combinations?

Probably buggy browsers or TCP stacks.

- Perrin




Win32, Libapreq, mod_perl-2 trouble

2002-07-18 Thread Levon Barker

Hello,

For mod_perl 1.x I used: 

ppm install http://theoryx5.uwinnipeg.ca/ppmpackages/libapreq.ppd

However, it doesn't seem to work for 2.0 as I get this error message in the
Apache error log:

[Thu Jul 18 14:54:07 2002] [error] 248: ModPerl::Registry: `Can't locate
object method boot via package mod_perl::boot at
C:/Perl/site/lib/Apache/Request.pm line 11.
Compilation failed in require at (eval 3) line 7.
BEGIN failed--compilation aborted at (eval 3) line 7.
'

Can someone point me in the right direction?

Levon Barker



Cleanup handlers and internal redirects

2002-07-18 Thread Joachim Zobel


Hi.

If I do an internal redirect, will there be a call to the initial requests 
cleanup handler?

Of course I could test this but I would prefer documented behaviour. Is 
this written anywhere?

Thanx,
Joachim

--
... ein Geschlecht erfinderischer Zwerge, die fuer alles gemietet werden
koennen.- Bertolt Brecht - Leben des Galilei




Unable to build Apache::ePerl

2002-07-18 Thread Gregg Casillo

My company recently took ownership of a project/website that was 
utilizes Apache, mod_perl, and Apache::ePerl on a Linux box. While I'm 
familiar with Apache, mod_perl, and other embedding methods (Embperl to 
name one), I'm new to ePerl.

I don't have access to the original server, and I've been asked to build 
a Linux/Apache/mod_perl/ePerl box from scratch. After a very basic 
RedHat install (to avoid RPM dependancy hell), I successfully built Perl 
5.6.1 and Apache 1.3.26 with mod_perl 1.27 and mod_ssl 2.8.10 all from 
source tarballs. Unfortunately on my last step, I'm having trouble 
building ePerl from the 2.2.14 or 2.2.13 tarballs.

I'm attempting to build the integrated Perl 5 modules (Parse::* and 
Apache::ePerl, etc.). The first step, perl Makefile.PL works fine. 
However, I get the following error when doing make:

[gregg@litlink eperl-2.2.14]$ perl Makefile.PL
Configuring for ePerl 2.2.14 (02-08-1998)
Now please type 'make' to compile. Good luck.
[gregg@litlink eperl-2.2.14]$ make
./configure --with-perl=/usr/local/bin/perl
Configuring for ePerl 2.2.14 (02-08-1998)
creating cache ./config.cache

__ CHECK: Configuration of Perl Language __
checking for Perl language... /usr/local/bin/perl v

Latest Perl found on your system is ,
but at least Perl version 5.003 is required.
In case the newer one is not in PATH, just use
the option --with-perl=/path/to/bin/perl to
provide the correct executable.

configure: error: Perl version too old
make[1]: Entering directory `/home/gregg/eperl-2.2.14'
make[1]: *** No rule to make target `libeperl.a'.  Stop.
make[1]: Leaving directory `/home/gregg/eperl-2.2.14'
make: *** [all] Error 2


I came to the conclusion that Perl 5.6.1 produces a different output 
from its perl -v argument than version 5.003 for example. So I went 
into the configure file, and I edited line 574 to read 
'perlvers=5.6.1'. That didn't work, and produced a similar error to 
the one described above, so I edited the line to read 'perlvers=5.003'.

This time, it began making the files, but it stoped with a compiler error:

cd mod  make
make[1]: Entering directory `/home/gregg/eperl-2.2.14/mod'
make[2]: Entering directory `/home/gregg/eperl-2.2.14/mod/Parse'
cp ePerl.pm ../blib/lib/Parse/ePerl.pm
AutoSplitting ../blib/lib/Parse/ePerl.pm (../blib/lib/auto/Parse/ePerl)
/usr/local/bin/perl -I/usr/local/lib/perl5/5.6.1/i686-linux 
-I/usr/local/lib/perl5/5.6.1 /usr/local/lib/perl5/5.6.1/ExtUtils/xsubpp 
  -typemap /usr/local/lib/perl5/5.6.1/ExtUtils/typemap ePerl.xs  
ePerl.xsc  mv ePerl.xsc ePerl.c
cc -c -I/home/gregg/eperl-2.2.14 -fno-strict-aliasing 
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 
-DVERSION=\2.0214\ -DXS_VERSION=\2.0214\ -fpic 
-I/usr/local/lib/perl5/5.6.1/i686-linux/CORE  ePerl.c
In file included from ePerl.xs:49:
/home/gregg/eperl-2.2.14/eperl_proto.h:84: parse error before 
`__extension__'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: parse error before `n'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: parse error before `if'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: conflicting types for `__retval'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: previous declaration of 
`__retval'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: `__len' undeclared here (not 
in a function)
/home/gregg/eperl-2.2.14/eperl_proto.h:84: warning: initialization makes 
integer from pointer without a cast
/home/gregg/eperl-2.2.14/eperl_proto.h:84: initializer element is not 
constant
/home/gregg/eperl-2.2.14/eperl_proto.h:84: warning: data definition has 
no type or storage class
/home/gregg/eperl-2.2.14/eperl_proto.h:84: parse error before `if'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: redefinition of `__retval'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: `__retval' previously defined 
here
/home/gregg/eperl-2.2.14/eperl_proto.h:84: parse error before `char'
/home/gregg/eperl-2.2.14/eperl_proto.h:84: warning: data definition has 
no type or storage class
/home/gregg/eperl-2.2.14/eperl_proto.h:84: warning: data definition has 
no type or storage class
/home/gregg/eperl-2.2.14/eperl_proto.h:84: parse error before `}'
make[2]: *** [ePerl.o] Error 1
make[2]: Leaving directory `/home/gregg/eperl-2.2.14/mod/Parse'
make[1]: *** [subdirs] Error 2
make[1]: Leaving directory `/home/gregg/eperl-2.2.14/mod'
make: *** [all] Error 2


I'm using gcc version 2.96 2731 (Red Hat Linux 7.3 2.96-110). While 
I can hack Perl, I know little of C. I know ePerl-2.2.14 was released in 
1998, so it wasn't written with version 5.6.1 of Perl or gcc 2.96 in 
mind. Is there a way to build ePerl with a modern Linux distro? Am I 
doing something wrong, or must I use an older version of Perl and/or gcc?

Many thanks,
Gregg Casillo




[QUESTION] mod_perl skipping phases

2002-07-18 Thread Graham Barr

I am not subscribed to the list, so please copy me on any replies.

We have recently upgraded to the latest 1.3.x apache and mod_perl
and our code is flagging a warning that it did not before.

I am hoping it is the result of a bug fixed in Apache or mod_perl
and that I can change our code to detect and ignore it.

It seems that sometimes some phases of a request are skipped and
the cleanup handler is called.

We have a PerlHeaderParserHandler which gathers all sorts of
information and stores it in pnotes, and later handlers use this
information.

However after the upgrade we occasionally, and it is rare, get a
warning from the cleanup handler that the data structure is not
present in pnotes, which makes me think that the PerlHeaderParserHandler
is not being called.

In an attempt to see what was causing this I added a
  warn $r-as_string
into the cleanup handler. The request looked valid enough, but
there were two things I noticed.

1. This only ever happens on a POST request

2. The response section was always 

  HTTP/1.1 (null)

This make me think that the content handler is not being called
either.

Our system is setup with a lightweight front end apache which proxies
requests to a backend mod_perl server.

Does anyone know of a circumstance that this can happen ?

Thanks,
Graham.