Re: session management
> 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
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?
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***
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?
> 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
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
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...
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.
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
> 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
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
> 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
> > > > >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
> 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
> > > > >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
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...
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!!!
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 !
[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
> > >> >> >> 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
> > >> >> >> 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....
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?
[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?
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
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
> 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???
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
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
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)
> 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
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?
>> 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"?
> > 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
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
> 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??
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 ??
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?
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??
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
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
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
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??
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????
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
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
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?
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