Hi Loyd,

Trouble is that I guess that this would be very slow as the MAIN program
would have to be initialised every time. Very large quantities of
parameters are passed on the call to MAIN. This could be done another way
but it would be quite a lot of work and I would only do this as a very last
resort.

I think that the MAIN program could be bound to the RPP program but there
are other programs (I will call them EXIT programs) called by MAIN that I
have not yet mentioned. These also could be bound but my design allows new
programs to be called without changing MAIN (the new program name is derived
from the metadata stored in my database) and I would prefer not to lose this
flexibility. There would be some performance issues if all programs were
permanently bound. At present, if an EXIT program is called, the previous
one is freed so the PAG does not change size significantly.

Many thanks

Rob

2009/1/6 <lgoodbar@xxxxxxxxxxxxxx>

Can the MAIN program be a submitted batch job that provides service
requests? Or, less preferable, could the MAIN module be bound to the RPP
program instead of a separate service program?

HTH,
Loyd

-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx]
On Behalf Of Brandon Peterson
Sent: Tuesday, January 06, 2009 9:07 AM
To: Web Enabling the AS400 / iSeries
Subject: Re: [WEB400] Persistent CGIDEV2 problem

Hi Rob,

I doubt this has anything to do with activation groups, but even if it
does you have a larger problem.

CGI is different than 5250. When you are logged in via 5250 you have a
single job that services your session. But with CGI the web server has
a pool of jobs that service users and every time you send a request you
could potentially use a different job.

Basically you could think of it as every time you send a new request
your programs start over from scratch. As far as I know there is no way
to associate a server job with a specific client.

HTH,
Brandon

-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx]
On Behalf Of Rob Dixon
Sent: Tuesday, January 06, 2009 7:44 AM
To: web400@xxxxxxxxxxxx
Subject: [WEB400] Persistent CGIDEV2 problem

I am using CGIDEV2 (in persistent mode) for the first time and thought
that
I was making reasonable progress but have now run against a problem for
which I need help, although I am sure that it has been solved many times
before.

My cgi program is RPGLE and is a request processing program (I will call
it
RPP) that handles 5250 or HTML/Javascript output. It does not have any
direct database access but calls a second program (I will call it MAIN).
This handles business logic and reads records and passes them back to
the
RPP which displays them using 5250 or CGI. In CGI mode, the first call
by
RPP of MAIN works OK and the records are displayed by RPP using
wrtsection.
When I type something on my HTML display, the RPP is reactivated
correctly
so my Handle is presumably OK and I can read what I typed using
ZhbGetInput. However, when RPP calls MAIN again so that that program
can
retrieve the required records, a new instance of MAIN is called. I am
sure
that in the first call of MAIN I did not set on LR and the mechanism
works
fine in 5250 mode I imagine that this has something to do with
activation
groups.

Can anyone help please? I have tried compiling MAIN with the same named
activation group and binding directory as RPP but this did not help.

Many thanks

--
Rob Dixon


--
This is the Web Enabling the AS400 / iSeries (WEB400) mailing list
To post a message email: WEB400@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/web400.





As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.