Re: session management

2002-05-17 Thread Curt Smith


> earlier i did this with loadserver, that was working well, but the
> problem in that , if the server where loadbalancer is running goes
> down , my application will be killed.


I agree that loadbalancer.jar is a great concern!

No one's told me that a product like the Cisco Redirector would'nt work.

What's wrong with DNS round robin is that it does not provide session
sticky routing of a client to the same box.  Redirector and most other
true load balancer boxes do this.

Cisco Redirector and it's equivelants are in theory more reliable than
a CPU/Box running java and loadbalancer.jar.

curt


-- 

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686







Re: EJB Caching

2002-04-13 Thread Curt Smith

Assuming this Q is regarding a stateless session bean, does Orion's 
deployer/bean validator
allow bean's with static attributes to be deployed?   A lightly loaded 
system that did not pool
bean instances after each method call and only occassionally had two+ 
instances active at the
same time who used static variable and ran into concurancy problems 
might exibit behavior
that would cause a question like this??

Else it sounds imposible for a properly designed SLSB method to return 
same state
as a previous method?  Hmmm.  

Perhaps the bean code and more details are necessary here?

curt

Derek Akers wrote:

> Our application running on Orion uses a stateless EJB instance to 
> invoke threads that execute application logic.   We are having a 
> problem with these EJBs chaching themselves and returning values 
> from previously executed calls rather than executing the thread 
> desired by the present call.  This does not happen all the time, but 
> often enough to be worrisome.  Question is, is there any way to stop 
> this behaviour?
>
>  
>
> Derek Akers
>
> Director of Product Development
>
> Eldan Software Limited
>
> (416) 341-0070
>
> www.eldan.com <http://www.eldan.com/>
>
> -----
>
> "We build software for people, not computers"
>

-- 

Curt Smith
[EMAIL PROTECTED]
(h) 404-294-6686
(w) 404-463-0973








Re: How to display a directory using Orion as a webserver?

2002-04-11 Thread Curt Smith

Is there a way to scope the directory listing to particular roots or 
directories?

thanks, curt

Kesav Kumar wrote:

>-BEGIN PGP SIGNED MESSAGE-
>Hash: SHA1
>
>You need to add directory-browsing="allow" attribute to orion-web-app node
>in orion-web.xml.  You can find this orion-web.xml in
>applicationdeployments\\ directory.
>






Re: JDBC try/catch Pitfall ***MUST READ***

2002-04-09 Thread Curt Smith

try {
...
return;
} catch () {}
finally {
  // must always come here per the Java VM spec
  // else it's a bug
  // Not calling the instance obj ref methods is a serious bug IMHO
}

To me this looks like a bug not an odd side effect.

What's your operating environment?  Linux?

curt





Re: CMP 2.0 vs BMP - Which performes better?

2002-04-04 Thread Curt Smith


> There are several constraints to BMP beans which make them almost always
> perform slower than CMP beans.  In particular, the inability to bulk
> load beans from finder methods is a nearly fatal defect.


I'd like to know more of the details?

How does the container deal with the following finder in CMP
differently than BMP?

Collection remoteRefs = home.findSalaryGreaterThan ( "50,000");

Or what was the scenario you where refering to?

To me the finder returns a collection problem is but one of the
damning EJB achilies heals, in that the spec left out setting
the max row count to limit the find collection to.

How does CMP help the huge memory and CPU and JNDI hit that
a boundless findAll() causes?


Thanks, curt








Re: Showing Error Messages

2002-03-12 Thread Curt Smith

You're probably using IE as your browser.

Go to Tools-Internet options-Advanced-
- uncheck Show friendly HTTP error messages

(so nice of IE)

curt

Deniz Bocek wrote:

> Hi all,
> I have Following problem:
> If my jsp files or servlets has a error -sytax error or any java error- it
> shows only
> The page Could not be displayed.
> HTTP 500 Internal Server Error.
> No more than this.
> normally it should say for example syntax error onlie XX in aaa.jsp
> some think like this..
> What could be the problem? or Is this normal for orion?
> Thanxx..
> 
> 


-- 

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686







Re: Performance declines after moving to a faster Server

2002-03-07 Thread Curt Smith

NT offers a near infinate number of causes for slowness.

Start by installing a good defrag'er and defrag all disks.

Your new box may have dog slow disks? Eh?

How about size of L2 Cache?  Do the PIII's have same size L2 cach
as the PII's which I think where all 256Kb... Or maybe there where a
bread of early PII's that had 512Kb?

Your new box may have a slow as molasis NIC or a crapie driver with
your new install of NT.

Here's a set of tools to test:

- Ftp to both boxes from a 3rd box of a large file (50Mb) time it.
This will test both the NIC the LAN and a much lesser extent the
disks.

- find iozone  it's a common tool on unix, I found a copy for NT.
It's great a measuring disk io.

- Check that your NIC is hard set to full or half duplex.  Don't let
it choose via "auto".

* This might be your problem.  *

Good luck, curt

Cugier (extern) wrote:

> Hi, 
> 
> we are running a simple web applications - just servlets - on an older
> Windows NT Server with two Pentium two 233 MHz CPUs. The performance on the
> server was acceptable and pages showed up pretty quickly in the browsers. 
> 
> Now we bought a new server (still Windows NT) with two Pentium III Xeon 8xx
> MHz CPUs (same amount of memory) and moved the application to the new
> server. We expected that the performance would increase because of the
> faster CPUs but the opposite happened. Our first tests showed a dramatic
> increase of response time. Pages that showed up in just one or two seconds
> on the old server, now take ten and more seconds to show up. 
> 
> We start Orion with the same java runtime parameters as on the old server.
> Also the configuration of the Apache server that we use a front end to Orion
> did not change. 
> 
> Does anyone have an idea how this performance decline is possible? Shouldn't
> it be faster on fastes CPUs?
> 
> 


-- 

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686







Re: Many clicks, many request...

2002-02-20 Thread Curt Smith

This is one of the classic problems a thin client app has.
Stale updates is one of the other.

I solve this via a GUID generator for each transactional screen.
The GUID is put in a hidden field and the user's session.  The
transactional logic in your action=url checks the session for GUID
and only forwards the request once to the BL and logs the rest.

How's that work for you?

curt


Tim Endres wrote:

>This is usually handled by wrapping JavaScripts around the clickable object
>to disable it upon the first click, thus eliminating the next 99 clicks.
>tim.
>
>>Hi,
>>If I make 100 clicks fastly from my browser in a servlet, it generates 100
>>requests and 100 processes in the server. One only process is very time
>>consuming.
>>
>>Is there a way to process the fisrt click and avoid the rest 99 clicks.
>>
>>Any alternatives?
>>
>>Thank you.
>>Andres.
>>
>>
>

-- 

Curt Smith
[EMAIL PROTECTED]
(h) 404-294-6686
(w) 404-463-0973









Re: System Date.

2002-02-13 Thread Curt Smith

You might want to add to your startup script (on Unix)
setting var  export TZ=EDT
and set locale too

curt


Geoff Soutter wrote:
> I've had problems with Java timezones before. As I remember, Unix 
> inherits timezone settings from it's environment. Did you run your java 
> test class with the same environment as Orion (eg the same user)?
> 
>  
> 
> geoff
> 
> -Original Message-
> *From:* [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]] *On Behalf Of *Troy Gibson
> *Sent:* Wednesday, 13 February 2002 6:00 AM
> *To:* Orion-Interest
> *Subject:* System Date.
> 
> Having trouble with system Date. In Orion our application converts
> dates based on our users time zone. For some reason our application
> is producing incorrect date times. The same piece of code when ran
> on its own as a Java class produces correct time conversions. Are
> there environment variables that Orion uses that may cause it to
> interprets the system date differently than what the system date
> really is? We use a staging and production instances of Orion
> running on two different Unix boxes. Both boxes have the same system
> date, the application running on staging produces correct dates, the
> one on production does not, further evidence that maybe the problem
> lies with the Orion instance and not the code or the servers.
> 
> Thanks for any ideas you may have.
> 



-- 

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686







Re: [announce] Log4J Appender for Orion's application.log

2002-02-07 Thread Curt Smith


> reports itself in the correct context, so you can see how they happened.


Yes and a nice feature.  To be production quality we'd need file size
roll-over and max-number of log file aging...

Hmmm, this could be externalized in a script IF orion's logger didn't
keep the file descriptor open between writes (probably does).

curt






Re: [announce] Log4J Appender for Orion's application.log

2002-02-07 Thread Curt Smith



Geoff Soutter wrote

>
>
>I've hacked up an Orion Appender to allow you to log to the
>application.log file, via the Logger instance that Orion installs at
>java:comp/Logger. Here it is in all it's glory, use it however you wish.
>
>Cheers
>
>Geoff
>
>PS, did anyone figure out if it's possible to get orion to roll it's log
>files when they get too big? ;-)
>
How about Orion logs to a log4j output device instead of apps logging to 
Orion's log
files?   Or did I miss understand this functionality??

Personally I feel the new log4j 1.3 features that make it easier for 
each application
to have it's xml config file in the .war / .ear so that apps can have 
their own (separate)
log files from each other to be a very useful choice.

My view of the problem of deploying and supporting a j2ee app is the few 
features j2ee
put in the spec (a big zero) to allow debugging and logging of app, 
feature, bean operations.
I feel we need to drill on the debugging problem until we have a 
facility that supports
logging based on session ID, so that we can follow a particular user's 
actions and
failures across a cluster and set of services.

To me, moving to one log file for the universe is the wrong direction? 
 Any opinions?

curt






Re: automatic invocation of servlet as the root-service

2002-02-02 Thread Curt Smith

> How to setup virtual hosting with Orion:
>
> http://kb.atlassian.com/content/orionsupport/articles/vhosts.html


Thanks Scott,  great tutorial on virtual hosting with orion!


Ya gotta love Orion, the orion developers, all the folks from Atlassian,
Elephantwalker and mail list contributors!!Hay, if big Larry E. 
votes with
his pocket book and mouth, Orion's getting the respect it's deserved.
Go Orion, eat WLS, kick Websphere...  -falling off chair dizzy,,...


Thanks guys!

>







Re: automatic invocation of servlet as the root-service

2002-02-01 Thread Curt Smith

>
>
>
>
>The drawback of this method is, that now _only_ the servlet can be
>invoked within this instance of orion - nothing else! But for our
>purposes this is just fine.
>
It would be great if the J2EE /web.xml specs supported virtual hosting. 
 I.E.  URL based
routing at the web container level to an application.   Like Apache 
virtual hosting on the
same IP/Port.

curt

>
>





Re: long sessions

2002-01-31 Thread Curt Smith


> This will be absolutely a minimal impact on memory foot print and work.


I'll correct myself.  It'll definately work for a single VM,
non-clustered architecture and also not be resilient.

I don't believe Orion (or other J2EE containers) distribute
changes to the ServletContext object to other VM/Cluster
members?

To address these requirements, you'd need to persist the user's
access date state on a shared resource in your cluster.
Serialized UserState objects on a shared file system, or a DB table.

curt






Re: long sessions

2002-01-30 Thread Curt Smith

>
>
>
>
>We use this object to check if a visitor has logged into the web site or not
>
Using HttpSession for checking definitatively whether that user has 
logged in or not won't
work.

The HttpSession will still be associated with that user's browser if and 
only if they
use the same browser.  If they use Netscape VS IE, different cookie and 
thus different
HttpSession.  Stop start the same browser, different cookie again.

Use a HashMap/HashTable in the ServletContext object, keyed on userID
instead.  Create an instance of UserAccess object and add to the the 
HashMap in the
ServletContext.

class UserAccess {
Date lastAccessDate;
String userID;
...
}

This will be absolutely a minimal impact on memory foot print and work.

Good luck,

curt

>







Re: Simple question re caching/pooling of BMP Entity Beans

2002-01-10 Thread Curt Smith

My opinion would add;  

if not pooled OR not exclusive owner of data then ejbLoad

exclusive owner is an orion-ejb-jar.xml propert.  The default is,
exclusively owns the data.

curt


Sergey G. Aslanov wrote:

>Hi Geoff
>
>Loading of beans have these stages:
>1. calling ejbFindBy... to get the primKeys of the entities;
>2. checking if entities with such keys are already pooled;
>3. for every key checking: if not pooled - call ejbLoad, else - get instance
>from pool;
>
>As you see, ejbFindBy... are called always independently of entity
>is pooled or not.
>
>Thursday, January 10, 2002, 2:01:37 AM, you wrote:
>
>GS> Hi there,
>
>GS> I'm teaching myself how to use Orion and I've got a simple question
>GS> about caching/pooling of BMP Entity Bean instances.
>
>GS> I've created a simple app which lets me read a BMP Entity Bean through a
>GS> Session Bean. I would expect that when I call findByPrimaryKey on my
>GS> Entity Bean's home interface, Orion caches the instance it creates so
>GS> that next time I call findByPrimaryKey for the same key, it just returns
>GS> the instance it already has rather than creating a new one. However, it
>GS> appears that it goes to the database (i.e. calls ejbFindByPrimaryKey in
>GS> the Entity Bean's implementation) for every call to findByPrimaryKey,
>GS> regardless of whether it has previously read the instance with the
>GS> specified key before.
>
>GS> I checked the list archive and it appears that someone has reported a
>GS> similar problem a while back but there were no replies
>GS> (http://www.mail-archive.com/orion-interest@orionserver.com/msg17359.htm
>GS> l).
>
>GS> I also checked the documentation and for orion-ejb-jar.xml it states
>GS> that exclusive-write-access is true by default, and since I am not
>GS> setting it I presume it's defaulting to true which should allow Orion to
>GS> cache the entity beans.
>
>GS> So, can anyone shed any light on how whether/how I can get Orion to
>GS> cache BMP entity beans?
>
>GS> Cheers
>
>GS> Geoff
>
>
>--
>Sergey G. Aslanov,
>CBOSS Group,
>Web-technologies department
>mailto:[EMAIL PROTECTED]
>tel: +7 095 7555655
>

-- 

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686









Re: Can't init Log4j...

2001-12-27 Thread Curt Smith

Here's my code that I put into my Servlet.init() and web.xml

web.xml:


  
log/log4jlcfPath
java.lang.String
/WEB-INF/log4j.lcf
  


Servlet.init()

//===
// Initialize log4j logging

try
{
InitialContext ic = new InitialContext();
String lcfResource = (String)
ic.lookup(JNDICommonNames.LOG4J_CONFIG_PATH);

Debug.println(PKGNAME + ".init(): log4j config file at path=" +
lcfResource);

// Init the Log4j singleton

String lcfPath  =
getServletContext().getResource(lcfResource).getFile();

Debug.println(PKGNAME + ".init(): log4j config file at lcfPathURL=" +
lcfPath);

// watch for changes to the config file every 60 secs
 PropertyConfigurator.configureAndWatch (lcfPath);

}
catch (NamingException ne)
{
// Log4j not init'ed
Debug.println(PKGNAME + ".init(): lookup(" +
JNDICommonNames.LOG4J_CONFIG_PATH + "), caught exe=" + ne +
Debug.getStackTraceString(ne));
}
catch (Exception se)
{
//== ERROR=
//
// Down side is that we won't have logging
// - Proceed anyway!
//
// Use the Debug.println() method to log to the container's console

Debug.println(PKGNAME + ".init(): lookup(" +
JNDICommonNames.LOG4J_CONFIG_PATH + "), caught exe=" + se +
Debug.getStackTraceString(se));
}



Paolo Perego wrote:

> Hi orion gurus, it's me again. I properly installed log4j for my logging
> needs. I wrote a little servlet, as explained in log4j docs, to initialize the
> framework when orion boots ( I added a  entry in web.xml of course ).
>
> My application log says:
> 27/12/01 11.46 gestWebApp: Error initializing servlet
> java.lang.NoClassDefFoundError: org/apache/log4j/PropertyConfigurator
> at com.modiano.gest.log4init.init(log4init.java:24)
>
> I guess that orion don't take a look on my $CLASSPATH :( How can teach it to
> make my log4j framework working :(
>
> Ps: In log4j documentation there isn't any reference to start the framework
> using orion :(
>
> Thank you
> --
> $>cd /pub
> $>more beer
>
> (0>
> //\  Perego Paolo <[EMAIL PROTECTED]> - www.sikurezza.org/angel
> V_/_ 'It's seems the hardest life I've never known'
> I'm Linux drow 2.4.16-4GB - SuSE Linux 7.3 (i386) powered.
>
>   
>Part 1.2Type: application/pgp-signature

--

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686






Re: Off-topic: UML Tools...Help!!!

2001-12-07 Thread Curt Smith

I have a team using TogetherJ for our modeler, IDE and deploy tool.
TogetherJ, the first to market with a great all Java UML modeler, round trip
code generator product.  Supports all IDE functions including debugging into
your appserver's VM, deploy, call Ant, JUnit etc etc.  Very feature rich.

togethersoft.com

Curt

Oisin Kim wrote:

> John,
> have a look at Poseidon, the community edition is free and it's 100%
> Java so multi platform, although it runs best with 1.3.1_01 JRE...
> Oisin
>
> On Thu, 2001-12-06 at 15:28, [EMAIL PROTECTED] wrote:
> > Hi,
> >
> > I have been asked by my manager to evaluate some UML modelling tools:
> > Rational Rose and Select. However, I have never really used UML so I
> > probably wasn't the best person to ask :)
> >
> > So, if anyone could tell me any pros and cons of these packages I would
> > appreciate it. Developers are gonna be using JBuilder 5 Enterprise, and the
> > idea would be to farm out classes/beans you have designed and structured in
> > the UML model.
> >
> > Any information or experiences you would like to share would be appreciated
> > as I don't have a clue :)
> >
> > Thanks,
> >
> > Johnny
> >
> >
> > Confidentiality Notice:
> > The information in this e-Mail message is confidential and for the use of
> > the named recipients only. The information may be protected by privilege,
> > work product immunity or other applicable law.
> > If you are not the intended recipient - the retention, dissemination,
> > distribution or copying of this e-Mail message is strictly prohibited. If
> > you receive this e-Mail message in error, please notify me immediately by
> > telephone (44 207 384 8102) or e-Mail ([EMAIL PROTECTED]).
> >
> --
>
> 
> Oisin Kim
> Software Engineer
> Aurium - the new brand for Conceptual Drift
> Clifton House
> Lower Fitzwilliam Street
> Dublin 2
> Web - http://www.aurium.net
> Email - [EMAIL PROTECTED]
> Mobile - +353 86 841 9967
> Telephone - +353 1 661 1132
> 





Re: An object getting null when passed to remote method !

2001-12-06 Thread Curt Smith



[EMAIL PROTECTED]">
  // Creating the second entity bean
  Classification myProducerClassification
=  theClassificationHome.create("myProducerClassification",  theProductManager);
  
  
My opinion is;  a bean's remote interface is not ment to be serialized as
an arg to
another bean.  The home handle yes, the interface no.   Perhaps the interface
is
not serializable, and errantly no exception is raised when it's attempted,
but the
null ref is the end result.
  
Just my thought; passing bean references is not the best design,  try passing
the home 
handle and call create/find from the client bean's context.  Remote interfaces
are
attached to sockets,  in a clustered environment or in some containers, the
remote
bean may be in a different VM, making the socket reference useless.
  
Good luck,
  
curt
  
  
  


Re: Announcement of new doc

2001-11-21 Thread Curt Smith

>
>
>>
>>
>> My 2 cents worth is this is the order of importance of documentation 
>> that is
>> needed right now to do REAL professional deployments and developments 
>> with Orion/OC4J
>>
>>
>> 1) Orion specific deployment settings explained
>> these are not really explained anywhere right now.
>

My configuration challenge that I haven't figured out is; how to support 
multiple
web components.   It would be great if new doc would show how to
configure a typically complex scenario??

I'm preferring the expanded tree deployment where I'd have multiple
web/WEB-INF/web.xml  trees.   All need to be in the same restricted
single-signon scope.  I.E.

root/web1/WEB-INF/web.xml
  /web2/WEB-INF/web.xml



The confusion between default-web-site.xml, orion-web.xml, 
application-name, name
... has not gotten it all to work yet..  Each attempt has one problem or 
another  :-/

Anybody have configuration to share of multiple .ear in one application 
or multiple
web directories??

Thanks and have a great TG holidays,

curt





Re: Announcement of new doc

2001-11-21 Thread Curt Smith

>
>
>>
>>
>> My 2 cents worth is this is the order of importance of documentation 
>> that is
>> needed right now to do REAL professional deployments and developments 
>> with Orion/OC4J
>>
>>
>> 1) Orion specific deployment settings explained
>> these are not really explained anywhere right now.
>

My configuration challeng that I haven't figured out is; how to support 
multiple
web components.

I'm prefering the expanded tree deployment where I'd have multiple
web/WEB-INF/web.xml  trees.   All need to be in the same restricted
single-signon scope.  I.E.

root/web1/WEB-INF/web.xml
  /web2/WEB-INF/web.xml



The confusion between default-web-site.xml, orion-web.xml, 
application-name, name
...  :-/

Anybody have configuration to share of multiple .ear in one application 
or multiple
web directories??

Thanks and have a great TG holidays,

curt





Re: Course Grained Entity Beans...your thoughts....

2001-11-20 Thread Curt Smith

Maybe folks could comment on my thoughts?

- Most client traffic (web site etc) is read only.  I.E. building pages 
showing store
   catalogue, browsing available plane seats etc etc.   Why run read 
only traffic
   through architecture optimized for transactional robustness?   That 
is unless
   you want to buy more hardware and deliver slow response for everyone.

- Given, the reality of traffic read VS write, I feel that highest 
performance,
  scalability and low latency will be from an architecture based on DAO for
  read only operations from the client - business deligate tier.   I.E. 
 from beans
  called from JSP's directly.

- Allow the client tier business deligate methods to direct  read only 
traffic
  to DAO's.  Other methods that are transactional (CRUD), are directed to
  session bean methods to mediate entity business logic.   Local 
interfaces would
  speed these operations greatly!

- EJB 2.0 local interfaces and coarse grained beans will always eat CPU, RAM
  and scalability, latency when compared to DAO for read only operations.

- Coarse grained beans can actually be a serious resource hog if you 
don't implement
  lazy instantiation of the dependant  1:M components.  Else you'll be 
hitting the DB
  and building the 1:M objects when the "M" part isn't accessed.

- Does EJB 2.0 CMP for coarse grained beans implement lazy instantiation 
of the
  dependant compents??  If not, or your container vendor hasn't, watch 
out??...

- The "new" best practice EJB architecture as of EJB 2.0, makes sense if 
you're
  architecting a shrink wrapped product that has to work with customer 
supplied
  DB's and schema's.  I don't believe this is very common, nor will be. 
 So why are
  the  Sun J2EE blueprints showcasing this architecture?  I don't know.

I'll be sticking with the architecture that's based on DAO and EJB for 
transactions
only.  

BTW, my thoughts on QL vs SQL...   QL and CMP is just one more pain that
I see folks sinking bunches of time in.   You need to own your data and 
will end
up spending the same time needed to write DAOs and SQL anyway, so why
not do it?

curt

>
>
>I was reading the J2EE design patterns book and it suggested using a Course
>- grained approach at building your entity beans (dependent tables accessed
>via Data Access Objects). However, after inspecting the new 2.0 specs, and
>considering the inclusion of EJBLocalHome and EJBLocalObject, is it
>necessary to still follow this recommendation? I personally would rather not
>code DAOs, however, if there is a performance gain by doing so, I would.
>
>Thanks for you advice.
>Aaron.
>






Re: loadbalancer.jar: what does it do, really?

2001-11-16 Thread Curt Smith



[EMAIL PROTECTED]">
  the loadbalancer.jar does sticky ip by default itself
and we have had to turn it off when because of the above issues.
  
How did you solve your problem?
  
Looking for thoughts on my problem;  2 boxes available for clustering.
I have a Cisco Director (SP?).   But I don't have a 3rd box in production
to run the loadbalancer.jar on.
It would be a single point of failure anyway so  How would a resilient
architecture be assembled
from what I have available?
  
One option that I see is to NOT cluster, and deploy several instances of
Orion across 2 boxes.  Use
my Cisco Director HW loadbalancer to direct requests across the Orion instances.
 If an instance failes
or locks up, Director is smart enough to stop routing requests to that Orion
instance.
  
This config just drops the customer's requests on that box or instance, and
delivers scalability across
two boxes.   To me, this is preferable to a single box where if it fails
customers won't get service until
support comes in the next morning...  :\
  
thanks, curt
  
  [EMAIL PROTECTED]">
 
 






loadbalancer.jar: what does it do, really?

2001-11-16 Thread Curt Smith

I'd like to use a my Cisco loadbalancer that can do session
sticky affinity based balancing instead of loadbalancer.jar.  
Is there doc or can someone list the functions of loadbalancer.jar 
so that I might safely know if my desire is possible?

I've heard that folks have used other HW based load balancers
successfully or where there issues?

Thanks, curt


Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686 




RE: SQL monitoring

2001-10-24 Thread Curt Smith


A previous poster announced this tool and it works
-- snoops the JDBC wire as a proxy --

There is a free tool at http://www.provision6.com that
intercepts and logs all database statements of any
application that uses JDBC.  This is particularly
useful, for example, for monitoring the SQL generated
by entity beans.

There are no code changes required to your
application, and setup is very easy.  There are
explicit instructions for installing under Orion.

> -Original Message-
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Alberto
> Vilches
> Sent: Wednesday, October 24, 2001 10:18 AM
> To: Orion-Interest
> Subject: SQL monitoring
> 
> 
> Hello Orion-Interest,
> 
>   Anybody knows how to force Orion to show to console all the sql 
> generated by
>   the EJB?
>   Thanks.
> 
> -- 
> Best regards,
>  Alberto  mailto:[EMAIL PROTECTED]
> 
> 




RE: jdbc performance Orion vs. WL

2001-10-24 Thread Curt Smith

> Did you use the ejb-location (this is the best)? Also, did you use the
> latest 9i jdbc drivers from Oracle? You need to repeat the test with
> updating and inserting. Also, create several connections at once 
> to use the
> pooling feature.

ejb-location ??  I'm interested in what you're saying here?

re: your benchmarking; another poster also gave thoughts to configure
a connection pool, data-sources.xml, and set min connections to be
a reasonable number.

- To better stress the container vs just see DB performance or JDBC driver
memory thrashing on the result set performance, why not have a test
fixture that hit your servlet with 100 simultaneous requests.I think
this is where WLS will be much heavier.  WLS would also be at more of
a disadvantage in EJB, especially Entity, performance. 

I believe this test is more of a JDBC / DB performance measure and the
7 sec is due to the 8i thin driver.Lets see if anyone gives perf
comparisons between 9i thick vs thin??

Anybody have subjective comparison between 8i thick/thin  VS 
9i thick/thin drivers??   

How about useful new features in the 9i thick/thin drivers?

Thanks,

curt





RE: what the? ejbStore gets called last???

2001-10-23 Thread Curt Smith



1. loadX

  2. loadX    <== this gets the 
  old copy of X, not the new one since Orion deferred my call to 
  ejbStore
  3. store. 
   
Speaking of out of sequence ejbStore()'s, I have a question 
regarding thrown checked exceptions
from ejbStore/ejbLoad  in my BMP 
system??
 
And if I throw a subclass of RuntimeException, which causes a 
trans roll back, will the only
indication of such to my business method be a 
RemoteException?
 
My style of row version and stale update detection is giving 
me fits.  
 
I'm suspecting that defering stale row update to a 
trigger won't work.  I'm believing 
that
I'll have to detect recordVersion miss-match in my business method 
from bean state 
and passed in value object values VS letting the db 
trigger detect stale updates?
 
Thanks,
 
curt 


RE: Can't get 2nd web module's servlet-map to register

2001-10-23 Thread Curt Smith

An interesting requirement of J2EE is that external clients
need to run in current working directory where there's
a subdirectory and file of: META-INF/application-client.xml

This file has familiar syntax of declaring the beans you'll
bind to, resources and env vars.  You'll need to declare your
resource there.

good luck,

curt


> Hi All,
>   I have created my own DBPool on Orion. I have a startUp class also
> to bind the DBPool object using JNDI. But when I start the orion
> server the
> following is the error I've got :
>
> javax.naming.NamingException: META-INF/application-client.xml resource not
> found
>  (see J2EE spec, application-client chapter for requirements and format of
> the f
> ile)
> at
> com.evermind.server.ApplicationClientInitialContextFactory.getInitial
> Context(Unknown Source)
> at
> javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
> 68)
> at
> javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246
> )
> at javax.naming.InitialContext.init(InitialContext.java:222)
> at javax.naming.InitialContext.(InitialContext.java:198)
>
>   And the code in my startup class to initialize the DBPool is:
>
> try{
>   Hashtable env = new Hashtable();
>   env.put(Context.INITIAL_CONTEXT_FACTORY,"");
>   env.put(Context.PROVIDER_URL,"ormi://localhost");
>   Context ctx = new InitialContext(env);
>   //My DBPool
>   DBPool nPool = new DBPool();
>   ctx.bind("DBPool",nPool);
> } catch (Exception e){
>   e.printStackTrace();
> }
>
>   Any suggestion?
>
> Thanks in advance
> Derek
>
> __
> This transmission and the information it contains including any
> attachment, is confidential and may be subject to legal
> privilege. If you are not the intended recipient, you must not
> peruse, use, disseminate, disclose or copy this transmission. If
> you have received this transmission (or any copy) in error,
> please notify us immediately by reply e-mail to
> [EMAIL PROTECTED] Please delete the original
> transmission(including any attachment) and its contents and
> destroy or return to us any hard copy.
>
> Please note that any electronically transmitted material that
> purports to commit Sun Hung Kai & Co. Ltd., or any of its
> subsidiaries or associates, to any obligation or in any other way
> whatsoever, unless subsequently confirmed by  fax or letter
> signed (in either case) by our duly authorized officer(s) may not
> be relied on. Material transmitted to you should also be checked
> by reference to the hard copy of the material printed directly by us.
>
>





Can't get 2nd web module's servlet-map to register

2001-10-22 Thread Curt Smith

Hi,

I'm certain everyone has figured out a good way to configure
a multi-web module application??  I'm guessing that any large
app will want to be broken up in smaller units??  I can't get
my best guess to work.

I can't get my 2nd through Nth web module to have requests directed
to the registered servlet for that URL in that module's web.xml...

I have an exploaded deployment tree and one application.xml.


  
ejb
  
  
../otf/ejb
  

  ^
webtest
  
  ^M
../otf/web^M
  


In each of webtest and ../otf/web I have WEB-INF/web.xml and
declare different  as in:

/common/*

/otf/*

In orion's server.xml and default-web-site.xml I have:

server.xml: 
   this points to the above application.xml

default-web-sites.xml:





So in theory when I hit URL:  http://myhost/jscribe-otf/otf/myURL  this
request should be directed
to the servlet registered in ../otf/web

I see that servlet's .init() method called but never doGet/doPost  on a URL
like the
above.

Any thoughts on fixing my DD's or examples of your prefered approach?

Thanks!

curt

Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686





RE: Orion and EJB2.0 (EJB QL)

2001-10-17 Thread Curt Smith


> Is there any information available when Orion will support EJB2.0 
> and EJB QL

My thoughts on CMP vs BMP:
On my project I went with BMP + DAO patterns + business deligates
at the client tier that deligate reads to the much more efficient
DAO's (direct access to the DB) and updates to transactional 
components (entities mediated by session beans).

With CMP you don't have the higher performance choice at the
client business deligate level to go directly to the DB via
DAO's, all reads have to go through the transactional tier
(for no good reason except to boost the stock of your appserver
and hardware vendors).

My personal opinion about CMP, that I'd like to hear other's 
experience on is that you'll spend almost as much time developing and
debugging QL as you would DAO+SQL.  You'll loose the much higher
performance direct access to the DB for read operations.  Given
that most web site pages are doing read, (display of catalogue
pages) use of CMP for reads through entities makes no sense unless
a slow web site is desired.

Any thoughts?

thanks,  curt






Looking for tips on Oracle SQLExceptions

2001-10-16 Thread Curt Smith
Title: CMT and datasources



Sorry 
for an off topic question, but this issue is a problem for 
all
who 
are developing BMP:
 
I'm 
sure everyone who's written JDBC wishes that SQLException
provided more info about the cause of the exception or 
that  DB vendors
bothered to have a hierarchial error number scheme so 
that 
 
sqle.getErrorCode()
 
was 
actually set by the vendor or was a number range or something 
that
you 
could determine if it was a column constraint violation or socket 
error
or 
database crashed etc .
 
Any 
helps for Oracle exceptions these days?  Is use of the 9i oci8 or 
thin
driver 
offering any help to this problem??  Oracle URLs for 
helps?
 
thanks,
 
curt
 


RE: Syntax of tag?

2001-10-12 Thread Curt Smith




  >>    
 should be placed after 
the display name. What errors are you getting? All session context variables 
need to be serielizable  is this the error you are getting? 
 
I've read on this list 
of folks configuring a commercial clustered architecture of  2 instances of 
Orion
on a box (island) and 2 
boxes.  I'm headed the same 
direction.
 
Is there an example of 
the DD's to do this on one of the orion / support sites?   This would 
be very
helpful and of little 
effort for someone to contribute their DD's zipped for folks to reverse 
engineer?
 
Thanks to a great 
support list,
 
curt


RE: Synchronized "session bean"?

2001-10-11 Thread Curt Smith


> > Simply put if there's $5 left in the bank, you wouldn't want to have
> > a user withdraw $5 with two different web browsers if they hit
> > submit at the same time... so we kinda want it to be like there's
> > only one teller window, and the servlets have to wait their
> > turn.

A poster already mentioned that simplistic solutions might not work
in a clustered environment.  I agree that designs that work due
to timing or happen stance that may not remain constant are weak 
designs bound to have problems in deployment.

This problem is the the classic stale update scenario.  Multiple
clients show $5 available to with draw.  They all hit "submit"
at once.  How to guard against an over draft in a robust and 
repeatable in all scenarios way??

The most offered solution that I've heard and I've implemented uses
optimistic concurrancy guarded with a row version number;

- add a version number or modification date to your data base tables.
  I use a sequence number that trigger auto-increaments on update.

- Your Model class (represents a data base table row) returned by 
  DAO's and Entities include the sequence number.

- Your presentation tier has a reference of the model (including the 
  row version number)  and all display $5 and internally held in
  the session is an instance of the Model used to generate the 
  dynamic data by your View (MVC) component.

- All users hit submit.

- The Controller (MVC) processing this event fetches the Model from
  the session and calls the setter to modify withdraw ammount, passes
  this Model to the Business Deligate to access your transactional layer
  (mediated by a Session bean calling Entities).

- The Model instance is serialized and passed as an argument to the
  layers of business components down to the Entity responsible for
  updating the AccountBalance table row for this account.

- I used BMP and DAO objects to package the SQL logic.  My DAO fetches
  the sequence number from the Model and account new balance from the
  model and builds the SQL prepared statement:

  UPDATE account set balance = ? where column_version_num = ? ;

  I call stment.setString (1, model.getNewBalance());
 stment.setString (2, model.getVersionNumber());

  If I get a SQLException on this update, then I know that someone else
  beat me to the $5.

  The key concept is the WHERE clause will only update the row IFF
  the sequence number has not been changed by someone else (meaning
  I had stale data).


This will work in clustered environments at all times and does not
depend on synchronized business delegate methods or any other design
that is likely to be defeated by appserver servlet or object pooling
or use of multiple VMs to host your application. 

Good luck,

curt






I've screwed up a component DD???? NamingException: Cannot lookup java:comp/env attributes, not in a valid component

2001-10-03 Thread Curt Smith



I've 
got two apps deployed as expaned directories.  XML files are similar since 
they're 
similar apps.
 
But 
one does not allow any context lookups and one does?    
orionconsole  can't
access 
the context and EJB's in the broken app but can in the other.  It gets 
these
naming 
exceptions in the orion console log.
 
What 
could be off in my deployment descriptors ???
 
Thanks!!
 
curt
 
 
javax.naming.NamingException: Cannot 
lookup java:comp/env attributes, not in a valid 
component    at 
com.evermind.server.Application.getEnvironmentContext(Application.java:1669)    
at 
com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:104)    
at 
com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:63)    
at 
javax.naming.InitialContext.lookup(InitialContext.java:350)    
at 
gov.ga.gdc.bm.security.dao.ValidateLoginManager.getDatasource(ValidateLoginManager.java:365)    
at 
gov.ga.gdc.bm.security.dao.ValidateLoginManager.getDBConnection(ValidateLoginManager.java:400)    
at 
gov.ga.gdc.bm.security.dao.ValidateLoginManager.checkPassword(ValidateLoginManager.java:227)    
at 
gov.ga.gdc.bm.security.dao.ValidateLoginManager$UserWrapper.authenticate(ValidateLoginManager.java:305)    
at 
com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:346)    
at 
com.evermind.util.ThreadPoolThread.run(ThreadPoolThread.java:64)


RE: orion 1.3.8 on linux - and Memory leaks in general

2001-10-02 Thread Curt Smith

> 3)Leaks,leaks,leaks. Yes there are leaks in Orion. We've run into 
> a very nasty one that no one seems to know why it happens. It's 
> got to do with JMS.
> For some reason Property objects don't get cleaned up. As such, 
> memory usage will keep on going. We are trying one way of dealing 
> with this: usrin the "-Incgc" option with the JVM (incremental 
> garbage collector).

passing on some personal experiences and thoughts I've had with \
leaks in what appears to be correct java;

The nature of heap managers has always allowed for perfect and 
correct java to fragment the heap and cause memory growth.  No
amount of GC will fix some dynamics if the timing of the new this()
is is interleaved with that.finalize() and gc() doesn't create
enough contiguous space for the next new somemore().  Java 2's
smarter gc() did go along way to reducing the heap fragmentation
potential, I believe and have observed.

For some applications that experience intermittant leaks were the
factors are load and use case interactions, the only fix is to
re-think your object creation and gc()'ing.  The solutions that
worked for me (last hope and desparation) was the general 
strategy of object pooling (re-use and not destruction).

I.E. most objects have a MyClass.clear() and it's ready for re-use.
By reducing the amount of load on the heap, I've fixed or reduced
leakage to tolerable levels...  Yes it does make sense that 
more frequent increamental gc()ing might reduce the orion/JMS
problem from my obervations too...

As the previous poster said;  good luck!

A thought on Linux VM threading and process creation;
The Linux kernel does not have the concept of a light weight thread/process
(LWP) as does Solaris and win32.  This means that all VM threads
are mapped to Linux processes which are more effort for the Linux
kernel to manage due to larger kernel data structures and scheduler
effort to task switch a full task as apposed to a LWP in Solaris or
win32.  Until Linux addes this more efficient structure into the
kernel we'll see somewhat lower perfs for java apps on Linux
vs Solaris x86 or win32 on the same HW.   The design of the Linux
VM in no way causes the runaway tasks or task memory growth as was
observed.  A java Thread spinning or new yetMoreObjects() is likely caused
by java program issues and not the Linux VM or linux kernel... IMHO. :)

curt

J2EE / EJB Architect
Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686 
 winmail.dat


Orion caches http responses and never hits the jsp??

2001-09-27 Thread Curt Smith

I had marveled at Orion's great JSP performance stats
vs WLS and others.

While pulling my hair out debugging my MVC web tier (type 2)
I noticed that when my request was the same (same values on
a submit page) the jsp was never hit, where if I always changed
my form values it would proceed to hit my MVC controller component
and thus excersize my machinery.

For static pages this is a wonderful feature. 

For debugging and dynamic content and scenarios this is either
agravating for debugging or plain wrong if my MVC will generate
different response for the same request dependant on context that
the Orion cache can't know about.

How do I turn off this cache behavior?


Very nice J2EE container Orion!

thanks,

curt





More doc on global app: object/bean visability accross many apps ??

2001-09-13 Thread Curt Smith

I'm looking at the doc for server.xml / web-site.xml
and it's a bit terse (for me anyway).  :) 

I'm wanting to understand how to configure a group of 
applications that all can see each other's classes and
access each other beans.  This need seems to fit what's
being described for the server.xml tag; 

I'd like to have a set of applications that are all global???
As class dependancies go, it would be hard to have just one
common (global) app and N dependant apps.

The purpose is to break up a large app into separate deployment
units for code/feature upgrade granularity.

Any more helps? or example xml files to share?

Thanks,

curt


Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686 




Dependant Entity uses DAO: shared Connection with all DAO's?

2001-09-11 Thread Curt Smith

Just re-validating a design requirement for BMP that I think
I read somewhere:

Dependant objects behind an Entity that uses DAOs for each
parent and child objects.

- for container managed transactions to work, must all DAOs
  use the same Connection?

I.E.

myBeanMethod (,,,)
{
Connection con = null;

try {
// conn pool managed by J2EE container
// and data-sources.xml

Connection con = getDBcon();

doDAOforTableA ( ,,, con);

doDAOforTableB (,,, con);

} finally {
freeDBcon (con);
}
}

Thanks,

curt




RE: Shared SB reference in Web tier business delegate??

2001-09-04 Thread Curt Smith

I didn't clearly state my architectural question:

What's the view on sharing a single remote SB interface among
all servlet threads?  I.E. a single Business Delegate in the 
ServletContext (as apposed to bloating out the Session).

I've not read clear EJB spec / book statements regarding sharing SB or 
Entity remote interfaces?

For SB's this should be perfectly ok since the container delagates
methods to bean instances, it should not mater whether it's via a 
single remote interface or separate?

Threaded access to a single Entity might be a problem if reentrant
is set to false.  I would still believe that the container should
simply queue methods against the Entity in that case.

Thanks for you opinions on the shared reference issue.

curt


> > I'm concerned about sharing a single SB remote interface amoung all 
> > sessions (Threads)???
> 
> Why not let the container manage the actual number of instances created?
> That would lead to 3000 proxy instances, but just a handful of SLSB.
> 
> > 
> > Of course SSB remote interfaces will need to be tied to that session!!
> 
> I can't quite follow you here. Do you meaqn the http session?
> 
> > 
> > What about the few Entities that might be accessed from the web tier?
> >  vs not reentrant Entities??
> 
> Entities that are reentrant, by the EJB 1.1 spec (section 
> 9.1.12), are those
> that can be called in a loopback WITHIN the same
> transaction. Different transactional contexts calling the same Entity(by
> this I mean an entity with equal PK) are not reentrant calls. Basically,
> this allows for loopbacks in a call thread, but its use is discouraged by
> the spec.
> 
> > 
> > I wish the EJB spec was clearer about reentrancy of the remote
> > interface or maybe someone can shed some light??
> 
> Again, check out the same section on the spec; transactional context
> (sometimes called activity) plays an important role in 
> determining if a call
> is reentrant.
> > 
> > Thanks alot to the orion mail list.
> > 
> > curt
> > 
> > 
> > Curt Smith
> > [EMAIL PROTECTED]
> > (w) 404-463-0973
> > (h) 404-294-6686 
> > 




RE: Additional invocations to the UserManager

2001-09-03 Thread Curt Smith

I bounced the client, deleted cache/cookies and still saw the auto-login
behavior on every request to my UserManager without seeing the login
dialogue
the 2nd--Nth time.  So how could the client be silently supplying the
user/pass on every request???  Still looks like the container is calling
UserManager with it's cached copy of user/passwd

I could have run my client through a logging proxy to tattle-tail whether
the container was issuing an HTTP challenge on every get/post or not??

Given that I bounced my client and deleted cookies/cache I'm still
mystified about HTTP challenge issues???   Regardless I've moved on to
FORM authentication and folks on this list find value in the current HTTP
challenge behavior for their development cycle not pestering them for
re-login  :-/

curt


>Nope. This is browser, not orion behavior. It complies to the HTTP specs.

>>>
>
> I saw this too and went to FORM authentication and don't see this
> anymore.
>
> I still use UserManager to receive the user/passwd from the FORM
> via the Container, but I don't see the UserManager calls on every
> request.
>
> Based on this, I feel it's a bug in orion that BASIC behaves this
> way.
>
> curt
>





RE: Additional invocations to the UserManager

2001-09-01 Thread Curt Smith

I saw this too and went to FORM authentication and don't see this
anymore.

I still use UserManager to receive the user/passwd from the FORM
via the Container, but I don't see the UserManager calls on every
request.

Based on this, I feel it's a bug in orion that BASIC behaves this
way.

curt


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Trujillo, Kris
Sent: Friday, August 31, 2001 6:11 PM
To: Orion-Interest
Subject: Additional invocations to the UserManager



I have written a custom UserManager and have setup security-constraints
against several JSPs in my application...everything works great..almost.
I'm noticing that after the user has successfully been authenticated that my
UserManager is being recalled for every page request made by the user.  The
difference being that the user is not reprompted to enter a username and
password.  The problem with this is that it causes a lot of additional
overhead because the user is reauthenticated and has the group checking
revalidated for every request.  Is it possible to setup Orion so it won't
behave this way?  It seems like once the user has been authenticated once
that they should not be reauthenticated until their session has expired.

Thanks





RE: Limiting no of Entity Instances in the container

2001-08-31 Thread Curt Smith



I 
disagree with any assertion that running multiple VMs on a large SMP box is a 
waste.
 
I've 
corroborated advise given from many places (other J2EE vendors who support 
multi-VM)
that 
tuning a VM for less than 500 threads and 512Mb max memory is desirable.  
Split into
many 
VMs as these limits are approached.  I.E. a 6 fast CPU box with 12GB RAM 
should
run 
around 6-12 VMs.   Some sophisticated J2EE vendors support 
auto-spinning up new
VMs as 
needed.  This list does not included WLS.
 
Why?  The VM becomes inefficient at it's own 
internal thread management as # of threads goes
up.  Experimental determination has found that 
>200 threads and the VM starts slowing. >512
and 
it's really getting inefficient.  Same goes for heap size management 
>512Mb of RAM.
 
curt
 

  -Original Message-From: 
  [EMAIL PROTECTED] 
  [mailto:[EMAIL PROTECTED]]On Behalf Of 
  ManuelSent: Friday, August 31, 2001 6:55 AMTo: 
  Orion-InterestSubject: RE: Limiting no of Entity Instances in the 
  container
  To 
  run the two instances on the same machine is going to be a waiste - you are 
  going be kicking up two JVM's etc or at least double amount of management 
  overhead on the same machine for no reason. Your problem looks more like 
  a software issue, either there is a bug in the orion software or chances 
  are you are not synchronizing something properly, when you simulate the larger 
  number of users the error becomes apparent. Rather try to solve the software 
  problem than work around it ... kicking up two instance of the same 
  application to get around a potential bug is only going to make your final 
  system less predicable and unstable.
   
  
-Original Message-From: 
[EMAIL PROTECTED] 
[mailto:[EMAIL PROTECTED]]On Behalf Of Paolo 
RamassoSent: Friday, August 31, 2001 8:13 AMTo: 
Orion-InterestSubject: Re: Limiting no of Entity Instances in the 
containerciao Biswajit i use more than one oc4j 
istance on the same box, did you update the http,jms,rmi listening ports? 
files: http:default-web-site.xml, jms:jms.xml, 
rmi:rmi.xml ciao Paolo 
Biswajit Nayak wrote: 

    
  Hi Gurus 
    I want to configure two OC4J instances 
  in one node for load balancing . I have a 4CPU E420 solaris box . With one 
  OC4J I can support only 50 users . When I am simulating 100 users I am 
  getting the following error messages . So I think mulitple OC4J instances 
  will help . 
  Thanks 
  Biswajit     
  Errors on OC4J Console    
      
  java.lang.NullPointerException 
      at 
  com.evermind.server.jms.JMSServer.removeClient(JMSServer.java:712) 
      at 
  com.evermind.server.jms.JMSRequestHandler.run(Compiled Code) 
      at 
  com.evermind.util.ThreadPoolThread.run(Compiled Code)  Failed to 
  bind Launcher to port 9127 
    Errors in global-application.log   
  *  12:26 PM defaultWebApp: 
  Servlet error  javax.servlet.ServletException: No HTTP headers 
  received from runform     at 
  java.lang.Throwable.fillInStackTrace(Native Method) 
      at 
  java.lang.Throwable.fillInStackTrace(Compiled Code) 
      at 
  java.lang.Throwable.(Compiled Code) 
      at 
  java.lang.Exception.(Compiled Code) 
      at 
  javax.servlet.ServletException.(ServletException.java:16) 
      at 
  oracle.forms.servlet.ListenerServlet.forwardResponseFromRunform(Compi 
   led Code)     at 
  oracle.forms.servlet.ListenerServlet.doPost(Compiled Code) 
      at 
  javax.servlet.http.HttpServlet.service(Compiled Code) 
      at 
  javax.servlet.http.HttpServlet.service(Compiled Code) 
      at 
  javax.servlet.http.HttpServlet.service(Compiled Code) 
      at com.evermind[Oracle9iAS 
  (1.0.2.2) Containers for J2EE].server.http.Se 
   rvletRequestDispatcher.invoke(Compiled Code) 
      at com.evermind[Oracle9iAS 
  (1.0.2.2) Containers for J2EE].server.http.Se 
   rvletRequestDispatcher.forwardInternal(Compiled Code) 
      at com.evermind[Oracle9iAS 
  (1.0.2.2) Containers for J2EE].server.http.Ht 
   tpRequestHandler.processRequest(Compiled Code) 
      at com.evermind[Oracle9iAS 
  (1.0.2.2) Containers for J2EE].server.http.Ht 
   tpRequestHandler.run(Compiled Code) 
      at com.evermind[Oracle9iAS 
  (1.0.2.2) Containers for J2EE].util.ThreadPoo 
   lThread.run(Compiled Code) ***
  
  
  Get your FREE download of MSN Explorer at http://explorer.msn.com


Shared SB reference in Web tier business delegate??

2001-08-31 Thread Curt Smith

Greetings,

My app is a thick client replacement with J2EE web-ified functionality
where 3000+ clients will login and stay logged in all day.

I'm wanting to reduce the number of session objects as a result of so
many concurrent sessions.  I plan on keeping a per session business
deligate manager, but make the DAO instances static thus shared amoung
all sessions since my DAO's are re-entrant.

I'm concerned about sharing a single SB remote interface amoung all 
sessions (Threads)???

Of course SSB remote interfaces will need to be tied to that session!!

What about the few Entities that might be accessed from the web tier?
 vs not reentrant Entities??

I wish the EJB spec was clearer about reentrancy of the remote
interface or maybe someone can shed some light??

Thanks alot to the orion mail list.

curt


Curt Smith
[EMAIL PROTECTED]
(w) 404-463-0973
(h) 404-294-6686 




UserManager / BASIC auth; orion caching username/password????

2001-08-28 Thread Curt Smith

I've got a confusing issue that I'm observing:

I'm using BASIC authorization and installed my subclass of AbstractUserManger into
orion-application.xml.

I get the HTTP challeng login dialogue the first time, and get into the protected site
when my um.checkPassword ( user, pw ) returns true.

Problems are:

- After 3 failures I get sent to the 401 screen.   I'd like to loop forever in the
 login dialog.

  ???

- The Security context seems to be cached and survives re-starts of orion  ??

  I see the um.checkPassword () method being called with the successful username
  password in my log4j logs.  Is the container supplying the user/passwd without 
challenging
  client   This works for both IE and NS and I've turned the auto-loggin features 
off for
  IE.

   On one hand this is great for resilience, especially if the session object is 
serialized too.
   I haven't found any files that might be performing this feature though???

   On the down side, I can't force a session / Security Context invalidation to force 
a new
   login for debugging purposes.   Stopping IE / NS and restarting the client even 
jumps
   back into the session without a HTTP challeng ???   I've never seen this before?

Why can't I find how to flush cookies in IE and NS...  ;<  but this appears to be 
solely
an orion behavior and not using cookies to persist the Security context???


Anybody have an explanation of what's going on with this appearance of
auto-login behavior via my UserManager.checkPassword() method?

very confused,

curt






-verbosity 10

2001-08-14 Thread Curt Smith

I searched the orion doc for this argument as well as the recently offered

-out   -err 

Is there a place where these orion cmd line args are at least listed ?

The -verbosity 10 is the type of debug logging switches that would be 
very helpful in seeing what's going on.

BTW, my area of hair pullin has to do with 

 ...   getRequestDispatcher ( "somePath.jsp" ).forward (request, response);

And getting no logging that the somePath.jsp was not found, just a 500 error.
Very frustrating to debug other than using monkey testing; try all combinations.

:))

curt


>>> Jason Westra <[EMAIL PROTECTED]> 08/14/01 09:34AM >>>
Hi Tom,

Try turning "-verbosity 10" in the java -jar orion.jar commandline. 
Orion console output should say something like "Binding xyxEJB to
xyzJNDIName" and indicating the EJB(s) is deployed.

Jason

--- Tom Jordan <[EMAIL PROTECTED]> wrote:
> Is there anyway to determine that a set of EJBs that are in an ear
> have been 
> deployed onto that server. I just want to know if an ear that was
> suppose to 
> autodeploy has infact deployed.
> 
> Thanks
> Tom
> 
> _
> Get your FREE download of MSN Explorer at
> http://explorer.msn.com/intl.asp 
> 
> 
> 
> 


__
Do You Yahoo!?
Make international calls for as low as $.04/minute with Yahoo! Messenger
http://phonecard.yahoo.com/ 






and orion needs more debug output

2001-08-08 Thread Curt Smith

I can't get the error page to be processed per my web.xml config.

I have a tag:


  
OTFwebTierEntryPoint
/OTF/*
  

  
404
jscribeSysError.jsp
  

  
500
jscribeSysError.jsp
  

  
java.lang.Throwable
jscribeSysError.jsp
  


When I add the   all exception traces to the browser stop, but
I'm getting null responses instead and no orion logging.

I've tried:

/OTF/jscribeSysError.jsp

No different.

I've set development="true" in oron-web.xml and see that this jsp is being
compiled.  I wittled the jsp down to a dirt simple html only 


this is an error


No response sent from orion.

I WISH I COULD TURN ON DEBUG TRACING FOR ORION???

How about anyone else??  This is the most silent application I've ever worked with.

Here's the compiled jsp that is confirming it's dirt simple and is being hit as my 
web.xml
above does work??

Thanks for any thoughts.

curt


—---


import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;

public class __jspPage0_jscribeSysError_jsp extends 
com.orionserver.http.OrionHttpJspPage
{

public void _jspService(HttpServletRequest request, HttpServletResponse 
response) throws java.io.IOException, ServletException
{
String _tempString;
Object __tempVar;
response.setContentType("text/html");
HttpSession session;
__jspPage0_jscribeSysError_jsp page = this;
session = request.getSession(true);
PageContext pageContext = 
JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true, 
8192, true);
JspWriter out = pageContext.getOut();
int __tempInt;
try
{

out.write("\n   \n\n\n\n\nJScribe System 
Error\n\n\n\n\n");
}
catch(Exception __jspE2)
{
out.clearBuffer();
pageContext.handlePageException(__jspE2);
}
finally
{
out.close();
JspFactory.getDefaultFactory().releasePageContext(pageContext);
}
}






Re: Too Many Open Files?

2001-08-08 Thread Curt Smith

What about being able to open port 80 as non-root?

curt


>>> "Eddie Post" <[EMAIL PROTECTED]> 08/08/01 11:38AM >>>
My experience to overcome this problem:
Make absolutely sure you don't run Orion as root, such that all java processes are 
killed nicely and they don't keep on running.
They told me that even with su -, java sees the real owner the initiated this (I still 
have to get deeper into this).

After I just started Orion from the command prompt as normal user, this problem 
disappeared. I used to start Orion with su - in a start-up script.

Eddie