How are PB Component Instances Created in EAServer?

I am new to using PB Components in EAServer.  We have a Web.PB applicaton 
that I am trying to convert to EAServer using the JAWS servlet.  My 
question is about how component instances get created in EAServer (Jaguar).

I have 1 Powerbuilder package in Jaguar that has 4 components (nvo).  My 
JAWS servelett calls a nvo function in one of the components.  This nvo 
returns a blob so I do NOT have automatic demarkation set.  This nvo then 
creates another nvo that IS set for automatic demarkation and is also set 
for instance pooling.

My question is: When the first function (called by JAWS) creates the second 
user object, is that second user object actually instanciated by jaguar or 
is it processed outside of jaguar by the first instanciated function?

The reason I ask is that the second nvo does not get any performance 
monitoring statistics and does not get pooled after use?  I am wondering if 
it is actually being processed by the first nvo in the same manner as, for 
example, a data store would be (as opposed to being instanciated as it's 
own jaguar object).  If it was being processed by jaguar, shouldn't it have 
performance statistics and be pooled after use?

Also, would it be OK to have components that are processed by the first nvo 
set to AutoInstanciate or is it better to actually code the CREATE and 
DESTROY?

Any help would be greatly appreciated.
0
A
11/1/2001 12:55:12 AM
sybase.easerver.powerbuilder 3902 articles. 0 followers. Follow

2 Replies
461 Views

Similar Articles

[PageSpeed] 34
Get it on Google Play
Get it on Apple App Store

See below.

On Wed, 31 Oct 2001 19:55:12 -0500, A.J._Rodriguez wrote:

>I am new to using PB Components in EAServer.  We have a Web.PB applicaton 
>that I am trying to convert to EAServer using the JAWS servlet.  My 
>question is about how component instances get created in EAServer (Jaguar).
>
>I have 1 Powerbuilder package in Jaguar that has 4 components (nvo).  My 
>JAWS servelett calls a nvo function in one of the components.  This nvo 
>returns a blob so I do NOT have automatic demarkation set.

THis is a non sequitur.  Just because a component method returns a
blob doesn't mean you can't have auto demarcation set.  In fact, in
the web.pb environment you would definitely WANT to set it.

>                                                                                             This nvo then 
>creates another nvo that IS set for automatic demarkation and is also set 
>for instance pooling.
>
>My question is: When the first function (called by JAWS) creates the second 
>user object, is that second user object actually instanciated by jaguar or 
>is it processed outside of jaguar by the first instanciated function?
The second UO is instantiated within the PBVM session established by
the first user object which is instantiated as a Jaguar component.
You can think of the first user object starting a mini-PB application,
so any CREATEs issued within that first user object are all part of
the same component instance.  If the second UO is not being referenced
directly in a URL from your web pages, then it doesn't really need to
be a Jaguar component at all.
>
>The reason I ask is that the second nvo does not get any performance 
>monitoring statistics and does not get pooled after use?  I am wondering if 
>it is actually being processed by the first nvo in the same manner as, for 
>example, a data store would be (as opposed to being instanciated as it's 
>own jaguar object).  If it was being processed by jaguar, shouldn't it have 
>performance statistics and be pooled after use?
It's getting processed by the first nvo,similar to a datastore as you
mentioned.

>Also, would it be OK to have components that are processed by the first nvo 
>set to AutoInstanciate or is it better to actually code the CREATE and 
>DESTROY?
there are no components instantiated by the first NVO, think of them
as 'helper' objects, so the standard CREATE/DESTROY apply.  If these
secondary NVOs are 'important' enough to exist in their own right,
then you might want to make them components as well and instead of
CREATE/DESTROY, you'd use CreateInstance to make intercomponent calls.

>
>Any help would be greatly appreciated.

0
joneil
11/1/2001 4:33:23 AM
Thanks, that helps a lot.
0
A
11/1/2001 7:57:45 PM
Reply: