RE: www.elephantwalker.com
I think I started that thread... I have done everything I can to make this work, and still can't seem to get sessions to fail over. I am even using the SessionServlet, which is written specifically to properly fail over, and it does not work. Others have it working, so I must be missing something! -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Greg Matthews Sent: Saturday, August 25, 2001 4:15 PM To: Orion-Interest Subject: Re: www.elephantwalker.com EW, did you have to do anything special to get sessions to be replicated across the cluster? there have been several posts recently about people having trouble with this specifically. do you just have to make sure that all boxes in the cluster have the same cluster-island id or is something else required? thanks, greg/ - Original Message - From: The elephantwalker [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Saturday, August 25, 2001 4:03 AM Subject: www.elephantwalker.com Dear Group, snip 3. The enterprise application is a distributable forum application so that if one server goes down, the other server will continue to serve up web pages. The users will never know that their server has gone done, since the session are shared across the cluster. This is unlike another well known snip
RE: Ant to compile and deploy one file
Title: Ant to compile and deploy one file worked with the 1.2 that I used as well. I recall having this problem too. I forget the reason. I tried using the tstmp/ as well and that didn't work. What should happen is the compiling should only compile classes that have changed. Check out your source file-date times and see if they are out of the ordinary. Also, you may want to post this to the ANT list..they can probably help you better. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Juan Lorandi (Chile)Sent: Thursday, August 23, 2001 12:21 PMTo: Orion-InterestSubject: RE: Ant to compile and deploy one file I have ant and it recompiles only modified .java files (only one). Are you using the latest ant(I think it's 1.3)?. -Original Message-From: Nusairat, Joseph F. [mailto:[EMAIL PROTECTED]]Sent: Jueves, 23 de Agosto de 2001 13:35To: Orion-InterestSubject: Ant to compile and deploy one file Hey if i have one file to update is there an easier way to compile it and re jar it??? I am using ant ... and if i have one i can only seem to recompile them alll which takes some time. Joseph Faisal Nusairat, Sr. Project Manager WorldCom tel: 614-723-4232 pager: 888-452-0399 textmsg: [EMAIL PROTECTED]
RE: When user hits STOP..any way to trap that and terminate an ongoin g request..
You make it sound so simple..yet its not quite that easy. I do keep the state of the user on the server, of course. But that still wont prevent the user from stopping a query that could potentially take a long time, then submitting again, while the original one is still going on. I would love for you to explain to me what you mean, and how it works, because frankly your reply was a little vague for me to come up with a resolution out of. Thanks. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Magnus Rydin Sent: Wednesday, August 15, 2001 11:23 PM To: Orion-Interest Subject: SV: When user hits STOP..any way to trap that and terminate an ongoin g request.. Just keep the users state server side and you're home. WR -Ursprungligt meddelande- Från: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]För Aaron Tavistock Skickat: den 14 augusti 2001 02:50 Till: Orion-Interest Ämne: RE: When user hits STOP..any way to trap that and terminate an ongoin g request.. This is a fairly classic web issue and unfortunately there is simply no way to tell if the client has hit the stop button. No matter what happens your going to be stuck running that long query no way out... But on the resubmit issue and using the session to flag a large transaction, I would worry about this alot. For one, what if the user really didn't want that massive query, now they are being penalized until their query is completed. Personally I think the Jakarta Struts folks came up with a fairly decent way of curbing reposters. Basically they add a hidden field to every form with a unique token, that token is recorded when the form is submitted, and thereafter the same form will not be accepted. So the user can't just hit back and then OK, but they can go through the normal route to search again. -Original Message- From: Duffey, Kevin [mailto:[EMAIL PROTECTED]] Sent: Monday, August 13, 2001 1:23 PM To: Orion-Interest Subject: When user hits STOP..any way to trap that and terminate an ongoin g request.. Hi al, I am almost positive the answer is no, but I thought I'd see if anyone has come up with a solution. All too often, we have some users that submit a large query, then hit the STOP button on the browser, then change something and submit again. In the meantime, their original query is still executing on the server-side. Sure..Orion throws an exception when it tries to send the response back and the connection to the browser is gone. But I am wondering if there is any way at all to just kill that particular request. Like..is there some way the app server or web server can send pings every say, 100ms to the browser to make sure its connection is still alive..and if not, just kill the request in some manner. Perhaps by having a special interface that an application can implement, so that a particular method can be called if the server detects that the connection to the browser is dead before the response has gone back. In this way, that method call can get ahold of the session, and perhaps get ahold of a connection being used, close it, etc. Ofcourse, you can use some client-side javascript to disable a button after its been clicked. We have done this, and we also inserted a transition page in particular areas where long queries might occur. In this case, the user sees an animated gif and a message that tells them not to hit stop or back. Ofcourse..you're still going to get those users that do this. My personal opinion is that if they call in, we tell them they are stupid, they should unplug their computer and quit their job because they can't follow instructions. Ofcourse..that wont fly, especially if they are a big money client. Besides, its ethically wrong to screw your clients over. ;) So, one possible idea I have had is to do the following. Each user has a session when they log in. Upon any request, a flag is set in the session of that user, indicating a transaction is starting. If the user hits STOP, then submits while that transaction is still going on, the server will see the flag is set, and send back a response indicating that a transaction is currently happening and they have to wait for it to be done before another submit can occur. There is a plus side to this..it prevents any user to doing more than one thing. The down side is, it is possible using the File - New - Window to open up another window with the same cookie/sessionID and the user could actually go to a different module and do MORE work at the same time. This would allow, for example a large query to be performing in one module and they could go do some work in another module. My method of a flag would prevent this type of multiple-module capability. The solution, ofcourse is to allow one flag per module, thus only one transaction per module could be performed, which is what I intend to implement to at least keep
Finding an entity in a Collection returned by findAll()
Ok..still new to this EJB thing. Got my entity bean stored in the hSQL table, I am able to iterate over the Collection returned by the findAll() method. Now the question is, how do I find my one object? More specifically, I created a simple entity that has a name (primary key), login, and password. I added a couple of items to the table. Now, like I said I can see all the items added..so they are being stored. Now I want to search for the login and password that someone types in. I see the findByPrimaryKey() method, which would find one item via the primary key of name. But how do I search by the login and password for one item to see if it exists, or by those fields to get say..a series of items with the same criteria (for example, all rows that contain the same login name..assuming its not a not null column which if I am correct, CMP only makes NOT NULL out of primary keys). Thanks.
RE: deploying a war file
Sure. First..I will assume your dir is correctly formatted (that is, web-app dir, WEB-INF/classes, WEB-INF/lib, WEB/INF/web.xml, and what ever classes, lib files, jsp, html, images, etc). So I am assuming you have the .war file. Now, I don't deploy in the Orion install dir. So I set up my own folder outside. Lets call this c:\myapps. So I have this: c:\myapps\META-INF\application.xml c:\myapps\myapp\www\WEB-INF c:\myapps\myapp\www\WEB-INF\classes c:\myapps\myapp\www\WEB-INF\lib c:\myapps\myapp\www\WEB-INF\web.xml In the /orion/config/server.xml file add this at the end: application name="myapp" path="c:\myapps\myapp" / web-site path="./myapp.xml"/ In the /orion/config/myapp.xml file you'll have: ?xml version="1.0"?!DOCTYPE web-site PUBLIC "Orion Web-site" "http://www.orionserver.com/dtds/web-site.dtd" web-site host="[ALL]" port="80" display-name="My Web Site"default-web-app application="myapp" name="www" / access-log path="../log/myapp-web-access.log" //web-site Finally, in the c:\myapps\META-INF\application.xml file, you'll have: ?xml version="1.0"?!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN" "http://java.sun.com/j2ee/dtds/application_1_2.dtd" application display-nameMy App/display-name module web web-uriwww.war/web-uri context-root//context-root /web /module security-role role-nameadministrators/role-name /security-role security-role role-nameusers/role-name /security-role/application As far as I know..this is all you need to do. There is one thing I have to explain. In the above application.xml, you'll see that it says www.war. This would be located in the c:\myapps\myapp\www.war But also notice that the www.war has the same name as the www dir in the myapp dir. This isn't necessary..just what I do. I generally give the same name to the war file as the dir name the web-app is in. This way, I can change the application.xml file above like so: module web web-uriwww/web-uri context-root//context-root /web /module This little change will now allow me to use the myapp\www folder in expanded form for development purposes. With Orion, if you turn on the development="true", your WEB-INF\classes\*.class files will auto-reload if any changes to the corresponding .java files occur while you edit. I think you have to specify the source dir too for that to work. What I do, instead, is use ANT to do all my builds and the last target in the build.xml file is touch file="c:\myapps\myapp\META-INF\application.xml"/ which Orion notices and auto-reloads the application. Just make sure ALL classes that may be stored as attributes in the HttpSession implement Serializable correctly including having the static final long serialVersionUID = L; in it! Got any questions..feel free to ask. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of John MillerSent: Thursday, August 16, 2001 12:31 AMTo: Orion-InterestSubject: deploying a war file Has anyone done this in Orion before? If so could you tell me how. Any advice, tips, info would be appreciated. Regards, Johnny http://www.iii.co.uk Interactive Investor International is a leading UK Internet personal finance service that provides individuals with the capability to identify, compare, monitor and buy online a number of financial products and services. Interactive Investor Trading Limited, a subsidiary of Interactive Investor International plc, is regulated by the SFA.
RE: Automatic reloading of new class files.
In terms of reloading an app..none probably. But since I use ANT for all compile, build, ejb, war, ear, etc, I use it to automatically reload the app. Just make sure your app is written so that sessions are persistent as well. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Martin J. Wells Sent: Sunday, August 12, 2001 8:55 PM To: Orion-Interest Subject: RE: Automatic reloading of new class files. Second, what I prefer, is to leave development=false in place, and use ANT to do all my builds. At the end of a target, I specifically tell it to touch the META-INF/application.xml file. Orion automatically redploys your site when this file is touched. Is there any clear advantage to using ANT to build projects instead of having development=true? Regards, Martin Wells
RE: multiple instances of a servlet?
You are correct..I didn't even consider instance variables such as used for a request counter to any given servlet. Good point. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Joel Shellman Sent: Tuesday, August 07, 2001 2:43 PM To: Orion-Interest Subject: RE: multiple instances of a servlet? Not true. Since the spec says only one instance, the programmer could assume this and utilize instance variables. This would not work as expected (per spec) if there were multiple instances handling requests. It is arguably a bad idea, but there are situations where it might be useful and would work according to spec but multiple instances would break it. -- Joel Shellman Full Service Internet Solutions -- Contact us today for a free consultation! [Design | Flash | eCommerce | Backend | Database | Marketing] iKestrel, Inc. http://www.ikestrel.com/ On 07 Aug 2001 12:28:17 -0700, Duffey, Kevin wrote: Even so, an app server utilizing more instances wont break the spec per se...meaning, a spec built application will still run just fine. I can't imagine that Sun dictates how a vendor must specifical handle instances..that wouldn't break any application.
RE: Test
Got it. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Michael J. Cannon Sent: Sunday, August 05, 2001 12:55 PM To: Orion-Interest Cc: Magnus Rydin; [EMAIL PROTECTED] Subject: Re: Test Test received... Chicago, IL USA RCN is the ISP Also at 3rd level from Kattare Internet Michael J. Cannon hsqldb.org, Inc. mailto:[EMAIL PROTECTED] - Original Message - From: Magnus Rydin [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Sunday, August 05, 2001 12:36 PM Subject: Re: Test Another test - Original Message - From: Karl Avedal [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Sunday, August 05, 2001 12:21 PM Subject: Test Another test mail, please ignore. -Karl
RE: Orion Performance Tuning
Question..is the HotSpot 2.0 Server JVM the same thing that comes with the JDK 1.3.1 in the /bin/server folder? If I install the full JDK 1.3.1, and not JRE 1.3.1, do I need the HotSpot 2.0? I know this isn't Orion specific, but since we are on the topic of performance tuning Orion and using the -server option, I thought I'd ask. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Adam Cassar Sent: Wednesday, July 25, 2001 10:44 PM To: Orion-Interest Subject: Re: Orion Performance Tuning Enable the undocumented option: -Xconcurrentio You will find that with a large number of simultaneous connections you will gain a large performance increase. (The sun site claim up to 40%, but I have only found a 20-30% depending on the app). Read http://java.sun.com/docs/hotspot/VMOptions.html and http://java.sun.com/docs/hotspot/PerformanceFAQ.html and http://java.sun.com/docs/hotspot/gc/index.html for a good overview. On Wed, Jul 25, 2001 at 10:51:27AM -0700, Robert S. Sfeir wrote: Hello all, I've gone through and read most of the information posted from this list about improving the performance of Orion, and increasing the number of threads Orion uses to improve its overall performance under load. What I've been able to do so far, and it's helped a lot, is: 1- Added the -Xms and -Xmx switches to make sure Orion starts and uses more memory, they're set at 100MB and 300MB respectively, and Orion uses 175MB as soon as I start it up, and doesn't seem to grow past 177MB as the day goes one and it gets used. 2- I added the -server switch in front of the java command so we make sure we use the Server version of the HotSpot VM. (Boy does this thing pick up speed when using the -server switch!) Is there anything else that can be done, short of clustering, to further increase Orion's performance? My main objective is to make sure we don't get any more weird hangs and long wait times in Orion for no apparent reason. Perhaps increasing the number of threads Orion uses? I can't seem to find any definite answer on that. Our servlet seems to be fine, but sometimes when clicking through a test web site, one url request seemed to just sit there and hang, as if Orion was dead, but I could click and request a different URL and get immediate response. So I assumed it was threads in Orion which were not being managed properly. After making reading the posts to the list and making the the 2 changes above, the problem seemed to have gone away for the most part, except it still happens from time to time in Netscape, IE doesn't seem to have this problem. I can quit Netscape and go back in and the problem is gone for a while. There is no specific time frame for it to happen. It does happen consistently when I click, then stop for about 30-60 seconds, then click again or reload, and it just sits there and waits for the world to come to an end of something. Very bizarre. Any ideas you may have would be of great help. Thanks R Robert S. Sfeir Director of Software Development PERCEPTICON corporation, in Joint Venture With JTransit San Francisco, CA 94123 pw - http://www.percepticon.com/ jw - http://jtransit.com e- [EMAIL PROTECTED] -- Adam Cassar Technical Development Manager ___ NetRegistry http://www.netregistry.net D: +61 2 9641 8609 | F: +61 2 9699 6088 PO Box 270 Broadway NSW 2007 Australia
RE: Orion's JSP generated code
I have noticed the same thing. There seems to be no way to avoid this. I have no idea why they do it too..it does add tons of empty lines throughout the html. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Sergei BatiukSent: Friday, July 20, 2001 3:25 AMTo: Orion-InterestSubject: Orion's JSP generated code Hi forum, I have noticed that when I use scriplets or tags in my JSPs, orion puts "\r\n" into the outputstream code for each tag. This results in many blank lines in the generated HTML code. In comparison,PHPscripletsdo not produce these blank lines. Does anyone know how to "beautify" the generated code? Thanks in advance, Sergei.
RE: Please remove me from the mailing list!
Why? You no longer want to use Orion? Maybe your having some complications I can help with? Don't leave..stick around. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Uwe Sent: Saturday, July 21, 2001 5:03 AM To: Orion-Interest Subject: Please remove me from the mailing list!
RE: Session timeout ?
session timeout is set in the /WEB-INF/web.xml file of each web application. session-timeout30/session-timeout is the default. 30 minutes. Set it to 60 for one hour, try the file and see if that works. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Kai KramhoeftSent: Thursday, July 19, 2001 1:10 AMTo: Orion-InterestSubject: Session timeout ? Hi, I am uploading File using a Form-File. It works fine with files which are smaller than 2 mb. If I upload 5 mb files, my application does not work anymore. I guess the problem is that the session times out. Where can I set the session outtime ? Kind Regards, Kai.
RE: Has anyone yet figured out how to use TopLink with Orion?
What about SmartMode? www.smartmode.com. It got a lot of attention at JavaOne and looks powerful including EJB 2.0 support. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Montebove Luciano Sent: Tuesday, July 17, 2001 1:19 AM To: Orion-Interest Subject: RE: Has anyone yet figured out how to use TopLink with Orion? I asked to Webgain on May and they said there is no plan to integrate with Orion (and JBoss). I evaluated the TopLink for Java but wasn't able to integrate it with Orion. If you can't use the CMP offered by Orion for any good reason (portability?) I can recommend VisualBSF from ObjectMatter. It works fine with Orion (I used it in Session Beans with CMT), is simple to use and is cheaper than TopLink or CocoBase. Luciano -Original Message- From: Alex Paransky [mailto:[EMAIL PROTECTED]] Sent: martedì 17 luglio 2001 8.23 To: Orion-Interest Subject: Has anyone yet figured out how to use TopLink with Orion? I searched the archive for any references to TopLink, however, most of the people are asking as to how they can use TopLink with Orion. Has any one been able to do this? Would you kindly post your solution? Thanks. -AP_
Does Orion root .jar files interfere with my web-app WEB-INF/lib jar files?
Hey all, I am wondering..Orion comes with xerces, parser, jaxp and so on in the root dir. If I put the latest xerces (1.4.1) into my web-inf/lib dir, put the soap.jar in there, put parser.jar in there, jaxp.jar, etc..will Orion load my web-inf/lib versions, the root-dir versions, or both..and in what order? Should I remove the xerces.jar from orion root, or copy the latest over the top of the root dir version? Probably stupid questions, but I have read alot on the soap list about people using the wrong version of the xerces.jar, putting it in a certain order in the classpath, etc. I'd like to make sure I am aware of how the .jar files in Orion interfere or load in what order compared to anything duplicated in any web application or enterprise application. Thanks.
RE: Some questions on Orion
I can answer a phew. Orion works with any JDBC driver. OODBMS most likely use a JDBC driver. If they don't..I imagine any use of OODBMS requires proprietary coding..which I can't imagine in the world of Java standards would be accepted too well..especially since OODBMS are not widely adopted at this point. I believe Orion has a simple O/R tool with it, but most O/R tools shouldn't have any problems deploying to any J2EE compliant app server. There might be some special tweaking required. Personally, I use ANT to do all my builds and deploys..which has nothing to dow ith O/R, but some tools may usually touch a file after deploying O/R created beans to auto-reload the beans in the app server. They may be specific to a couple of big-name app servers. Oracle licensed Orions code..I doubt they will be buying it. I believe Orion will continue selling its product as is for the same $1500 per server and continue making it better, support J2EE 1.3 and so on. I am sure you'll start seeing more tools (like O/R) that work with Orion since Oracle is a big name and licensed their code. If you download the OC4J components of Oracle, its almost 100% Orion. The only thing I noticed is that a few .jar files are different (did a compare on the 1.5.2 branch of Orion with the OC4J branch). Orion.jar is the main difference with the OC4J being 380K or so while the Orion is 200K or so. Not sure why the Oracle is so much larger..I do know that it has its Oracle 9i name in it instead of Orion however. I will get my try at LDAP soon and I recall seeing some posts here on LDAP, so I would imagine it works with LDAP..of what company I have no idea. Orion is extremly easy to set up, VERY fast (infact..I think Oracle is touting 2 to 3 times faster than anyone else including Bea, IBM, iPlanet...it will be nice to see some performance tests on static pages, dynamic pages, ejb access, clustering, etc). Orion is very easy to cluster..although I am not sure how good it is yet. I know the concept of using islands is a good one. Thus far I am not aware if any hardware load balancers have any issues with Orion islands, making sure the right session goes to the right island and properly load balances between islands. When setting up a cluster, I would want a load balancer that can handle proper load balancing between ALL islands, and then proper load balancing between each server in an island, all while maintaining the right session ids going to the right island. In this way, you can set up one (or more) islands each only needing two servers. If one server fails, the other one continues, you are alerted and you replace/fix the server. If you need high up-time, you keep two islands going, each with two servers. Should you get a lot of hits, you add one (or more) extra islands of servers. From what I tried (only a single island of two servers) it took mere minutes to configure Orion. I have not tried it with hardware load balancers though. Also, on a side note..I recommend hardware ssl devices in front of the server farm. First, they cost about $5K or so, and they can allow you to handle 1000's of SSL transactions per second by decoding/encoding the SSL in hardware. Even nicer, you never have to worry about setting up Orion (or any web/app server) with any SSL stuff, therefore you never need to worry about special SSL sessions, loss of session when going form SSL to normal or vice versa, etc. Not that Orion has this problem..I don't know. But I have seen some of these problems posted here in the past year or so. Hope that helps. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Florian Werner Sent: Saturday, July 14, 2001 6:51 AM To: Orion-Interest Subject: Some questions on Orion Hi! I'm currently evaluating Orion for internal use and a customer. Does Orion support/include: RMI over JRMP ? any OODBMS ? any ORMapping Tools ? Realm-Integration like LDAP, RDBMS ? Are the any IDEs supporting Orion (beside Kawa from Macromedia) ? Is ORACLE going to by Orion ? Regards Florian Werner
RE: debug jsp pages and where is the source
Hi Melissa, I didn't get the size for him. To be honest..I cam was working on content and part of my front-end framework the last few times. I will figure this out soon for him and let him know. Next weekend is bad for me to meet too..got two graduations and a special mothers-day/fathers-day dinner for my parents who are in from Florida. But sometime during the week, especially Wednesday night or Thursday would be fine. Site is up. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Scot Weber Sent: Thursday, June 14, 2001 5:27 PM To: Orion-Interest Subject: Re: debug jsp pages and where is the source Wendell, orion-web-app jsp-cache-directory=./persistence servlet-webdir=/servlet development=false-- Change this to true persistence-path=./persistence/state.ser Then . . . Assuming all things are equal and you have a default web app called 'devel-default-web-app' bound to the server you're working with, the persistence (and subsequently the .java files for the .jsp's) will be in the path: /u/orion/application-deployments/default/devel-default-web-app/persistence http://www.mydomain.com/index.jsp will produce the files /u/orion/application-deployments/default/devel-default-web-app/per sistence/index.jsp.java /u/orion/application-deployments/default/devel-default-web-app/per sistence/index.jsp.jspCache peace - scot Wendell Nichols wrote: Well I made the jsp page work by explicitly importing java.lang.String, as opposed to java.lang.* as I had done for other servers. Because this shouldn't bother other servers I'm ok with it. I still need to have access to the jsp.java files for debugging purposes before Orion will be an acceptable server for me... ... snip ... Any help would be appreciated.. Wendell Nichols Amdahl Software Ltd. and Fujitsu Apserv. -- scot weber - [EMAIL PROTECTED] - Given a choice between a folly and a sacrament, one should always choose the folly -- because we know a sacrament will not bring us closer to God and there's always a chance that a folly will. - Erasmus The only man who never makes a mistake is the man who never does anything. - Theodore Roosevelt.
RE: So, why use Orion?
Hi, That's a tough call. Orion rocks in terms of performance, but they are far behind most others in documentation and support. JBoss is rock solid on EJB and has far more developers working on the project at any one time than I would say any other app server. Documentation is pretty good and you can't beat the price. The architecture of JBoss is pretty nice too. I think Orion's strongest points are its performance. Because it integrates the web server, jsp/servlet engine and ejb engine in a single jvm, its very fast. Ofcourse, you can run it in two tiers as well leaving one for ejb, and one for front-end web serving...nothing gigabit networking wont remedy in terms of network speed as the only difference in performance between running it on a single box in one jvm. I am interested in seeing how well Apache 2, Tomcat 4 and JBoss do as a team. Its a complete solution for web pages, servlets/jsp, and ejb and its all free and very well supported. I'd say the only downside to using free or cheap software is most companies simply wont do it because they are too naive to realize its good quality software. I still have yet to figure out why it is upper management involve political crap into the mix when it comes to choosing a good solid platform to deploy on. For some reason, if they have millions in the bank, they need to spend millions on the hardware and software otherwise they can't justify it. WebLogic 6 is very nice indeed, but you pay a premium, at $17K per cpu per server for a clustered setup, it can easily cost $100K for a site with fail-over and backup at dual co-lo's. Personally, I would use Apache 2, Tomcat 4 and JBoss for the reason of cost, documentation, performance and support. Orion still kicks all butts in sheer performance however. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Julian Richardson Sent: Wednesday, May 30, 2001 1:02 AM To: Orion-Interest Subject: So, why use Orion? Hi, I'm trying to collect together reasons for chosing Orion over other app servers - our company's been doing a lot of research into EJB technology over the last few months and currently the favoured choices seem to be JBoss and Weblogic. I can understand JBoss as a target environment - after all it's free. But I haven't seen a good case (yet) for using Weblogic; as far as I know it's pretty expensive and support actually seems a little lacking from what I've heard from others. From what I know it is pretty feature-rich though. Anyway, there's a chance for using Orion in preference (or at least as another official environment) given a solid list of reasons... Any ideas would be appreciated - performance, scalability, standards adherance, reliability, cost, platform availability, support, documentation quaility etc. etc. (I've been using it for a couple of months now and haven't had any trouble other than the usual learning 'glitches' :-) cheers Jules
RE: My Orion does not want to run the jsp and the servlets
Title: SV: ATM example -> deployment error -> PLEASE some HELP Make sure you copy tools.jar to the /orion root folder. Its used to compile jsp pages into servlets. It can be found usually in your /jdk/bin (or maybe its jdk/jre/bin) folder. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of HasanSent: Wednesday, May 30, 2001 1:56 AMTo: Orion-InterestSubject: My Orion does not want to run the jsp and the servlets Hi, I have created a web application using JBuilder. I have followed the specification Orion made. I have tried to run the html files and they work fine. However, when I tried to run the jsps and servlets, Orion did not want to run them. What other files/jars I should copy or CLASSPATH, PATH, etc I should change? Please help me!! Thanks
RE: During development, how to allow only a couple of ips,including my local system, to view the site?
Hey Daniel, That is a great idea..DUH! ;) I am using my own simple MVC framework, and I should just put in a feature in the web.xml that gets read in as an init parameter that designates ips that are allowed/now allowed to access the application. Its simple enough to do. Thanks. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Daniel Lopez Sent: Monday, April 09, 2001 3:28 AM To: Orion-Interest Subject: Re: During development, how to allow only a couple of ips,including my local system, to view the site? Hi Kev, I had a similar problem but for my production applications. I wanted my solution to be flexible and server independent so what I did was create a servlet filter, as someone else has already suggested. I've had it for production for almost a month and so far so good. I have to admit that I went a little further down the road and I allowed to specify the IP/hostnames to be allowed denied through an xml file that can be read from a file, a URL or a database. That way I got maximum flexibility. These are the links that I used to create my filter: http://developer.java.sun.com/developer/technicalArticles/Servlets/servletap i2.3\ http://www.orionserver.com/tutorials/filters/ I hope this helps, Dan Kevin Duffey wrote: Hi all, I would like to block out ALL ips from viewing my site (using my static ip) except for a few ips, which are from co-workers over the internet. Is this possible? If so, how? I read in the orion-web.xml.html file about ip-access tag, and when I tried it, it did block off all ips. But when I added when to allow it, such as "localhost" or my direct IP, sometimes it wouldn't allow it, and other times the browser sat and spun for about 5 minutes, then reported a time out. Thanks. -- --- Daniel Lopez Janariz ([EMAIL PROTECTED]) Web Services Computer Center Balearic Islands University ---
During development, how to allow only a couple of ips, including my local system, to view the site?
Hi all, I would like to block out ALL ips from viewing my site (using my static ip) except for a few ips, which are from co-workers over the internet. Is this possible? If so, how? I read in the orion-web.xml.html file about ip-access tag, and when I tried it, it did block off all ips. But when I added when to allow it, such as "localhost" or my direct IP, sometimes it wouldn't allow it, and other times the browser sat and spun for about 5 minutes, then reported a time out. Thanks.
RE: Using EJBs with Delphi
Your going to have to use CORBA from what I understand. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Sergei Batiuk Sent: Saturday, March 24, 2001 8:27 AM To: Orion-Interest Subject: Using EJBs with Delphi Hi EJB gurus, Does anynone know how to connect to an EJB from a dephi client app? Thanks in advance, Sergei Batiuk.
RE: IOException error writing to server..what does it mean?
yes..I did. I tracked down the problem to be a REQUEST URI IS TOO LARGE error in the sun code. Just as I suspected. The reason is, as my form grows each time I add a new row, it adds about 25 new request parameters (and values) to the request URI. By the time I reach the 12 or 13 row, the request URI is probably 16K or so, maybe not that large..not sure. Whatever it is, its too large for Orion to accept, and probably for any other servlet engine. Therefore, the quick fix is to not send any request parameters to the JSP page read in (except the jsessionid value so that it can access the same session the request that came in is using), and instead tell my users of the framework to use javabeans. Oh well. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Robert Nicholson Sent: Friday, March 09, 2001 3:45 PM To: Orion-Interest Subject: RE: IOException error writing to server..what does it mean? Have you tried increase the size of the buffer on your jsp page? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Duffey, Kevin Sent: Friday, March 09, 2001 9:51 AM To: Orion-Interest Subject: IOException error writing to server..what does it mean? Can anyone possibly explain to me why this error occurs? I am developing an online worksheet system which uses between 20 and 70 columns (dynamically built) and any number of rows. It seems as I get to about 11 to 14 rows, Orion throws this exception and the application no longer responds. This is happening when I am transforming dynamic XML output from JSP pages into HTML via XSL pages. The worksheet works fine up until 11 or so rows, then this happens. I can only think that maybe a buffer or something is getting overloaded? Imagine 12 rows each with 30 columns..that is the amount of HTML going out. Maybe I need to somehow flush the buffer (response buffer)? Or is there an automatic way to tell the server to send data back as it gets full? Thanks. java.io.IOException: Error writing to server at sun.net.www.protocol.http.HttpURLConnection.writeRequests(HttpURLConn ection.java:220) at sun.net.www.protocol.http.HttpURLConnection.writeRequests(HttpURLConn ection.java:229) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon nection.java:480) at com.mvc.servlets.ControllerServlet.forward(ControllerServlet.java:485 ) at com.mvc.servlets.ControllerServlet.service(ControllerServlet.java:371 ) at javax.servlet.http.HttpServlet.service(HttpServlet.java:329) at com.evermind.server.http.d4.s3(JAX) at com.evermind.server.http.d4.s1(JAX) at com.evermind.server.http.eg.s9(JAX) at com.evermind.server.http.eg.dr(JAX) at com.evermind.util.f.run(JAX) Exception while trying to transform document. MESSAGE = Error writing to server
RE: RE: Any news from Orion yet??
more for production environments. Openejb and Enhydra have great potential, but they are not ready yet and have to prove themselves. Jonas is OK but I prefer the other open source alternatives. -Original Message- From: Anthony W. Marino To: Orion-Interest Sent: 2/11/01 9:06 AM Subject: Re: Any news from Orion yet?? On another note, can you and/or someone, qualify/quantify what you mean by the following previously made statement : "For the most part, Orion is still very much ahead of the pack, and the speed is stil EXCELLENT." ? In the Apache Tomcat list I asked the following question: "Can someone suggest to me what Apache and/or other OpenSource products could be integrated to compete with functionally and/or considered in the same category as BEA WebLogic? I don't necessarily need all of what BEA has to offer at this time, however, I would like to know, generally, what it would take to get there without the big $ price tag." Thank You, Anthony On Monday 15 January 2001 15:20, you wrote: On Mon, 15 Jan 2001, Jason Boehle wrote: WL6 has support for EARs. They also support all of the EJB 2.0 spec except for dependent objects. In fact, I am currently using WL6 for development instead of Orion, due to the apparent lack of development going on in the Orion team on EJB 2.0. I had suggested to my boss that we use Orion, as I had been lurking and following it for several months, and saw that it always met the latest specs first, etc. - now I feel dumb for doing so, as they haven't had a new release in several months... Of course, this is a little unfair - weblogic hadn't had a new release for several months, either. They've just had a major release recently, which makes it seem like they're more active than Orion, when that's not necessarily the case. It might be, but that's not implied by the situation at present. For the most part, Orion is still very much ahead of the pack, and the speed is stil EXCELLENT. While I'm very much looking forward to a new round of released bug fixes, I'm still waiting for some things to shake out before I abandon ship. -Original Message- From: Santosh Kumar [mailto:[EMAIL PROTECTED]] Sent: Monday, January 15, 2001 12:57 AM To: Orion-Interest Subject: Re: Any news from Orion yet?? Hi kevin, As far as i have known WL5.1 or , there is no concept of ear files, does 6.0 include that. Doesn't the J2EE mandate (I am not sure!) the use of EAR = WAR + JAR + CAR(or JAR)? To deploy the JPS1.1.1 on Orion, it is a piece of cake, while deploying on WLS, i have to unpack the EAR files and dis-integrate them which is contrary to the essence of packaging the ear files, Even meddling with the ugly weblogic.properties frustrates one and all. Is that true with all WLS users? Orion is a neat impl of J2EE, is WLS6.0? Regards, Santosh. ----- Original Message - From: Kevin Duffey [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Monday, January 15, 2001 12:07 PM Subject: RE: Any news from Orion yet?? I am not one to advocate another product, but WL6 looks nice. It is easy to work with compared to WL5.1. Orion is still the best. JBoss looks very interesting as well. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Neville Burnell Sent: Sunday, January 14, 2001 2:26 PM To: Orion-Interest Cc: Orion-Interest Subject: FW: Any news from Orion yet?? Yes - pls Orion people, publish some news update Orion ... We are looking to buy at least 3 licences over the next few weeks if everything is ok Cheers Neville Burnell Business Manager Software -Original Message- From: Duffey, Kevin [mailto:[EMAIL PROTECTED]] Sent: Sunday, 14 January 2001 12:45 PM To: Orion-Interest Subject: Any news from Orion yet?? Hi all, Has anyone heard from the team lately? I know I saw a post about a month or so ago. Its been about 3 or 4 months since anything has changed on their site, if not longer and now its getting me worried. I can understand them trying to organize the company, but did production stop on the app server? I wish there was some news once every couple of weeks or so from them on their site letting us know what is happening. Thanks. --- Joseph B. Ottinger [EMAIL PROTECTED] http://epesh.com/ IT Consultant
RE: Broken Pipe
My guess would be that the connection to the web browser that the JspWriter would send output to was broken Did you look in the WrapperTag at line 70 to see what it says? Post that maybe for some further help. 1/31/01 9:42 AM simplica_survey-web: Servlet error javax.servlet.jsp.JspTagException: Problem accessing the JspWriter in WrapperTag. IOExecption message was: Broken pipe at com.simplica.web.taglib.WrapperTag.doStartTag(WrapperTag.java:70) at /survey_template.jsp._jspService(/survey_template.jsp.java:49) (JSP page line 4) at com.orionserver.http.OrionHttpJspPage.service(JAX) at com.evermind.server.http.HttpApplication.w5(JAX) at com.evermind.server.http.JSPServlet.service(JAX) at com.evermind.server.http.d1.si(JAX) at com.evermind.server.http.d1.include(JAX) at com.simplica.web.JspView.render(JspView.java:45) at com.simplica.survey.web.SurveyViewManager.update(SurveyViewManager .java:101) at com.simplica.web.MainServlet.doPost(MainServlet.java:29) at com.simplica.web.MainServlet.doGet(MainServlet.java:46) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at com.evermind.server.http.d1.si(JAX) at com.evermind.server.http.d1.forward(JAX) at com.evermind.server.http.ed.sp(JAX) at com.evermind.server.http.ed.so(JAX) at com.evermind.util.f.run(JAX)
Problem with latest Oracle JDBC.zip..anyone having similar problems?
Hi there, We just moved to Oracle 8.1.7 database (or upgraded to it). The new jdbc.zip that is required to use it is causing some odd problems with Orion 1.3.8 that we are running. Specifically, it appears every time we try to connect to the database it gives a "Stream already closed" error. Is anyone experiencing similar problems? Will the 1.4.5 version of Orion fix this? We tried removing the jdbc.jar in the orion folder, and we are only using Orion for jsp/servlet engine (not yet done any EJB work). Thanks.
RE: Why javac does not compile servlet?
you are correct. That is what I do and it works fine with Ant. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of KirkYarina Sent: Friday, January 26, 2001 7:58 AM To: Orion-Interest Subject: RE: Why javac does not compile servlet? orion.jar contains the javax.servlet classes, and (somebody correct me if I'm wrong) should be used instead of Sun's j2ee or jsdk. Add orion.jar to your classpath. You may want to look at the other jars included with orion if you're missing other classes, also. Kirk Yarina At 09:06 AM 1/26/01 -0500, you wrote: You need to install the J2EE JDK 1.2.1 from the java.sun.com website. Since you are using javac to compile your classes, the j2ee.jar file needs to be in your classpath. here's the URL: http://java.sun.com/j2ee/download.htmlhttp://java.sun.com/j2ee/ download.html Hope this helps... Regards, Tom Pridham -Original Message- From: Roland Dong [mailto:[EMAIL PROTECTED]] Sent: Friday, January 26, 2001 4:18 AM To: Orion-Interest Subject: Why javac does not compile servlet? I have successfully installed orion1.45. It runs great! What I can not figure out is how to make javac compile a servlet. I have put tool.jar into orion directory and my autoexec.bat look like this: SET BLASTER=A220 I7 D1 T2 SET SNDSCAPE=C:\WINDOWS set JAVA_HOME=c:\jdk set TOMCAT_HOME=C:\tomcat\ set PATH=c:\jdk\bin PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\ORAWIN95\BIN;c:\jdk\bin set CLASSPATH=c:\jdk\lib\tools.jar; When I compile a simple servlet I got error message. This is the error message when I try to javac HelloWorldServelt2.java: C:\Web\jsp\jspRoland\WEB-INF\classesjavac HelloWorldServlet2.java HelloWorldServlet2.java:2: package javax.servlet does not exist import javax.servlet.*; ^ HelloWorldServlet2.java:3: package javax.servlet.http does not exist import javax.servlet.http.*; ^ etc. ... ... 7 errors C:\Web\jsp\jspRoland\WEB-INF\classes Could someone throw me some light? Thanks very very much Roland
RE: novice question
in server.xml, point the application to the .war file directly. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Peter T. Brown Sent: Wednesday, January 24, 2001 9:54 AM To: Orion-Interest Subject: novice question How do I deploy .war files in orion?
RE: Recreating an expired session. PLEASE HELP!!!
What I do and I have seen alot of people do this, is put an Object in the HttpSession that indicates if a user is logged in or not. When they log in, you put that object in. If they log out, you remove it, and if the session times out, its gone as well. Simply check for that object (either on every JSP page before its displayed..giving you the option to forward to another "error" page if the page being displayed is not allowed unless they are logged in. I use an include file to reuse this functionality on every JSP page I need protected). Or, if your using a MVC framework, have some logic in your controller servlet that makes sure only if the object exists can certain pages be accessed, otherwise forward to the login page. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Sergio Socarras Sent: Sunday, January 21, 2001 2:44 AM To: Orion-Interest Subject: Recreating an expired session. PLEASE HELP!!! How can I re-create a session once the session timeout has been reached and the server has invalidated the session. I have a couple of pages that require a session, but I need to timeout after five minutes of inactivity. If the session has timed out, I need to send the user back to a login page. The problem is that if I call getSession(true) on the request object I get the following exception: java.lang.IllegalStateException: Session was invalidated at com.evermind.server.http.EvermindHttpSession.invalidate(JAX) at com.evermind.server.http.EvermindHttpSession.valueUnbound(JAX) at com.sun.net.ssl.internal.ssl.SSLSessionImpl.putValue([DashoPro-V1. 2-120198]) at com.evermind.server.http.EvermindHttpServletRequest.getSession(JAX) at /templates/test.jsp._jspService(/templates/test.jsp.java:17) at com.orionserver.http.OrionHttpJspPage.service(JAX) at com.evermind.server.http.HttpApplication.w5(JAX) at com.evermind.server.http.JSPServlet.service(JAX) at com.evermind.server.http.d1.si(JAX) at com.evermind.server.http.d1.forward(JAX) at com.evermind.server.http.ed.sp(JAX) at com.evermind.server.http.ed.so(JAX) at com.evermind.util.f.run(JAX) How do I force it to create a new session? Please help, I need to resolve this as soon as possible. Also if I specify a -1 for session timeout which implies that the session never times out, when and how does the memory for these session get released once the client is no longer interacting with the site. Thanks Sergio __ Do You Yahoo!? Yahoo! Auctions - Buy the things you want at great prices. http://auctions.yahoo.com/
RE: Clusters!!!!
I have tested Orion in a two server cluster and it worked for the most part nicely. My HttpSession beans were not all that properly done, so that may have been the quirks I saw. You do have to buy a license for each Orion server, 1 per SERVER not per CPU per server, unlike most applications. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Mohit Palhan Sent: Wednesday, January 17, 2001 8:09 PM To: Orion-Interest Subject: Clusters Importance: High Hi! there, I want to know if 1 anyone has Orion servers in cluster's? 2 Has done load balancing ? (which algorithm are you using etc..) 3 Is there object clustering in Orion? (as in the case of Weblogic .The key technology that underpins clustered objects in WebLogic Server is the replica-aware stub. When you compile an EJB that supports clustering (as defined in its deployment descriptor) ejbc passes the EJB's interfaces through the rmic compiler to generate replica-aware stubs for the bean. For RMI objects, you generate replica-aware stubs explicitly using command-line options to rmic). Note:- I have both session and entity beans in my system!(not sure but have heard it corrupts database any pointers are welcome) 4 To have clusters do I have to buy multiple licenses ?? Thanks mohit palhan Have a nice day :-) PS- Any pointers are welcome viz must do's for clustering etc..design etc..) -- ** *** The information contained in this message (including any attachments) is confidential and may be legally privileged. If you are not the intended recipient, please delete it from your system immediately - any disclosure, copying or distribution thereof or any action taken or omitted to be taken in reliance thereon is prohibited and may be unlawful.AITPL makes no warranty as to the accuracy or completeness of any information contained in this message and hereby excludes any liability of any kind for the information contained herein or for the transmission, reception, storage or use of such information in any way whatsoever. Any opinions expressed in this message are those of the author and do not necessarily reflect the opinions of AITPL. ** ***
RE: Orion as a Win2000 service
It's a good program with the exception of shutting down the service. For some reason, it doesn't ever shut down (the service) so you have to manually stop the service, then restart it (which does work). There may be a newer version than what I have. My only other complaint is that it always uses javaw and doesn't allow you to specify java to see a console window for output, which I then have to specify the output file to Orion and constantly open to see any output. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of [EMAIL PROTECTED] Sent: Tuesday, January 16, 2001 12:51 AM To: Orion-Interest Subject: SV: Orion as a Win2000 service Search the list for JNt, dont remember but some ppl, posted a howto for this program, even works when you log off the box ;) Klaus -Opprinnelig melding- Fra: Thomas Pridham [mailto:[EMAIL PROTECTED]] Sendt: 15. januar 2001 17:59 Til: Orion-Interest Emne: Orion as a Win2000 service Is anyone running Orion as a Windows 2000 service. I tried to setup the service as recommended by www.orionsupport.com but the application (RunExecSvc) just dies everytime we try to run it. Is there another way to do this? Any help would be greatly appreciated. Thanks, Tom Pridham Software Engineer Computer Management Consultants 6951 Pistol Range Road Tampa, FL 33536 813-935-7332 ext. 165 813-854-4538 - Fax http://www.cmctpa.com http://www.oakscape.com
RE: Any news from Orion yet??
I am not one to advocate another product, but WL6 looks nice. It is easy to work with compared to WL5.1. Orion is still the best. JBoss looks very interesting as well. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Neville Burnell Sent: Sunday, January 14, 2001 2:26 PM To: Orion-Interest Cc: Orion-Interest Subject: FW: Any news from Orion yet?? Yes - pls Orion people, publish some news update Orion ... We are looking to buy at least 3 licences over the next few weeks if everything is ok Cheers Neville Burnell Business Manager Software -Original Message- From: Duffey, Kevin [mailto:[EMAIL PROTECTED]] Sent: Sunday, 14 January 2001 12:45 PM To: Orion-Interest Subject: Any news from Orion yet?? Hi all, Has anyone heard from the team lately? I know I saw a post about a month or so ago. Its been about 3 or 4 months since anything has changed on their site, if not longer and now its getting me worried. I can understand them trying to organize the company, but did production stop on the app server? I wish there was some news once every couple of weeks or so from them on their site letting us know what is happening. Thanks.
RE: Redirection
Sure it is. I am not sure if its possible in Servlet 2.1/2.2 to "path map" to a specific controller servlet, but I think it is. I use extension mapping myself. But basically you would do something in your web.xml file like: servlet servlet-namecontroller/servlet-name display-namecontroller/display-name servlet-classcom.mvc.servlets.ControllerServlet/servlet-class /servlet servlet-mapping servlet-namecontroller/servlet-name url-pattern/ss//url-pattern /servlet-mapping Now, anytime the /ss/ appears in the request path, it should pass everything after the /ss/ as path info to the controller servlet its mapped to. Thus, anytime the /ss/ is in your path, the servlet you map it to is invoked, and I think the request.getPathInfo() or one of those calls returns everyting after the /ss/. Therefore, a link like: a href="/web-app-context/ss/DoThis"Click/a Should call your servlet, and you would recieve a DoThis as a String parameter or something. Once you have that, you call upon your EJB session bean (or some business logic class) that looks up in the database and returns you a path to go to. Then you simply do: try { request.getRequestDispatcher(url-from-database).forward(request,response); } catch(Exception e) { } That will forward you to the new URL. Ask if you have any questions..but that should help a bit I hope. Hi everyone, Since it seems that the list is alive and well, although with very little traffic, I would like to ask a question which has been bothering me for a while. I am trying to do what I would define as dynamic redirection. What that means is that if someone writes an URL like http://myserver/name, I would like to look for "name" in a database and redirect the user to some other URL. This would allow me to avoid modifying manually the configuration file every time a mapping is added,removed or modified. Is this possible? Any suggestions? Thanks in advance and Happy New Year! Huibert Aalbers
RE: JSP vs Servlet MVC - CMV
Actually..you are correct for the most part, but think of it this way. Most sites you just type in the www.company.com and hit enter. You don't type a specific path (that would be mapped to a controller servlet)..for the most part. There are a lot of sites you do such things..but for the most part, you type in the company name to get to the site. Now, the first thing that shows up is index.html (or index.jsp) usually, so in retrospect, the VIEW is first, then when a link is clicked the CONTROLLER is accessed, then the MODEL, then the VIEW again. So, it should probably be called VCM. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Juan Lorandi (Chile) Sent: Friday, January 05, 2001 7:59 AM To: Orion-Interest Subject: RE: JSP vs Servlet MVC - CMV it's a circular pattern... you access the controller from a view, which is generated by the model... all of this brings us back to the important question: what was first--- the egg or the chicken? My 2c, JP -Original Message- From: Johan Fredriksson [mailto:[EMAIL PROTECTED]] Sent: Viernes, 05 de Enero de 2001 9:25 To: Orion-Interest Subject: Re: JSP vs Servlet MVC - CMV I've seen the abbreviation MVC on a lot of places, but shouldn't it be CMV for Controller / Model / View where Controller receives a request, handles it using model and displays it using view? Not important to me, just wondered... =) //Johan - Original Message - From: "Fyffe Carl" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Sent: Friday, January 05, 2001 9:07 AM Subject: JSP vs Servlet I went to jollem.com and read the CMP Primer. Good read. But it got me thinking about a topic that concerns most people that are in large development groups. Seperation of code and html. Proper MVC calls for the code to be in the controller while there is little code in the view portion of the application. This allows the designers to design and the coders to code. Were the rules broken for convience or has a new methodology taken over? It seems to me that the CMP Primer would have been easier to read and understand if MVC had been used. This one short coming can easily overlooked to find a gem of an article. Are there other primers of jollem.com's caliber? What are some useful URL's that you guys used to get started. --Carl
RE: JSP vs Servlet
I will try my hand at this as soon as my framework is done. I plan to use the Model 3 approach..which is using Model 2 but instead of forwarding to JSP, it passes the JSP output (which would be XML tags with dynamic data) and an XSL to XALAN and transforms it to HTML, then sends that back. In this way, the tutorial will properly show a clear cut solution to separating data from logic from the view. It won't be for a little bit though..so don't hold your breath. I will ask for reviews by this list before I post it, to see if it makes sense, works, etc. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Kemp Randy-W18971 Sent: Friday, January 05, 2001 6:16 AM To: Orion-Interest Subject: RE: JSP vs Servlet I did address this same question to the folks at www.jollem.com and their suggestion, which was a fine one, was to create a tutorial. Jollem has a mechanism in place to create tutorials (see website). Since I am not an expert, I would ask if some expert (with some spare time) could show us how to create the Orion CMP example in a model two format. -Original Message- From: Fyffe Carl [mailto:[EMAIL PROTECTED]] Sent: Friday, January 05, 2001 2:08 AM To: Orion-Interest Subject: JSP vs Servlet I went to jollem.com and read the CMP Primer. Good read. But it got me thinking about a topic that concerns most people that are in large development groups. Seperation of code and html. Proper MVC calls for the code to be in the controller while there is little code in the view portion of the application. This allows the designers to design and the coders to code. Were the rules broken for convience or has a new methodology taken over? It seems to me that the CMP Primer would have been easier to read and understand if MVC had been used. This one short coming can easily overlooked to find a gem of an article. Are there other primers of jollem.com's caliber? What are some useful URL's that you guys used to get started. --Carl
RE: Is the List alive?
I haven't seen too many messages myself, but I am getting some. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Thursday, January 04, 2001 2:25 AM To: Orion-Interest Subject: Is the List alive? Hi Everybody, Happy New Year! I haven't received a single message since 29-Dec-2000. Has the service gone down, nobody is working on Orion or is it just my link that's gone quiet? Jarek winmail.dat
RE: JSP vs Servlet
Interesting point. I agree, and infact I found the CMP primer a bit hard to read because it wasn't so clean (as far as the code used). However, for the sake of brevity I am sure they had to cut corners so as not to have a 200-page book. I would have liked to seen a bit more detail and info on the examples, however. I think a CMP II article should be written, to include the "latest" MVC model, which is sometimes called Model 3. That is, Using JSP to return XML output, which is then transformed into HTML, WML or whatever via XSL, and the output is then returned to the browser. I am working on just such a thing in my streamlined mvc framework, which I offer as free source. My framework works very well, and offers some things I haven't seen in other frameworks, such as auto-population of javabeans used on the page with support added to handle nested object population within a javabean. Also, you can choose whether to use auto-population or not on a per request basis, as well as a very simple to use action class..simply supply the command=MethodName and implement a public String MethodName() method in an action class, and its called. I use a small bit of reflection to call the method in the action class, instead of the command/swtich() approach often used. Anyways, I have been thinking for quite some time of creating a small "book" that specifically targets the MVC framework (in detail) and how to separate the business logic (ejb session beans) from the controlling logic (controller servlet and instances of action classes) from the front-end stateful bean (javabean stored in HttpSession), and the JSP page (view of dynamic data). I just haven't had the time to play around with it all yet. I am working on my framework to simplify using JSP to return XML output, and applying XSL to that output to get HTML or something else. When I am done with this I plan on posting the framework info to this list and jsp-interest list. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Fyffe Carl Sent: Friday, January 05, 2001 12:08 AM To: Orion-Interest Subject: JSP vs Servlet I went to jollem.com and read the CMP Primer. Good read. But it got me thinking about a topic that concerns most people that are in large development groups. Seperation of code and html. Proper MVC calls for the code to be in the controller while there is little code in the view portion of the application. This allows the designers to design and the coders to code. Were the rules broken for convience or has a new methodology taken over? It seems to me that the CMP Primer would have been easier to read and understand if MVC had been used. This one short coming can easily overlooked to find a gem of an article. Are there other primers of jollem.com's caliber? What are some useful URL's that you guys used to get started. --Carl
RE: Load balancing with Orion
The only thing I can think of...did you specify the WELCOM file of index.jsp? Otherwise it defaults to index.html I think. That should be in your web.xml file. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of [EMAIL PROTECTED] Sent: Monday, December 11, 2000 7:46 PM To: Orion-Interest Subject: Load balancing with Orion Guys, i have a problem, i'm tryin to use Orion as Load Balancer here is my load-balancer.xml file which is located in $ORION_HOME/config/ ?xml version="1.0"? !DOCTYPE data-sources PUBLIC "Orion load-balancer" "http://www.orionserver.com/dtds/load-balancer.dtd" load-balancer host="[ALL]" port="80" secure="false" selection-type="random" user-ip="true" use-session-id="true" island id="0" backend-server host="192.168.1.139" port="80"/ /island island id="1" backend-server host="192.168.1.138" port="80"/ /island /load-balancer So basicly what im trying to do is balance traffic between those 2 servers. But for some reason when i request "localhost" it displays me a page that is "website/index.html". I wonder why is that happenin. Any help is deeply appreciated Thank You -Anton
RE: Faster encryption
How about hardware based? I know there are SSL to non-ssl hardware devices that turn all incoming SSL into non-SSL so your web-app is completely non-ssl based, but the web browser to the server (ssl device) is secure. I know there are some that can handle 1000's of ssl transactions per second (but you'll pay big money for those). -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of David Ekholm Sent: Monday, December 11, 2000 1:07 AM To: Orion-Interest Subject: Faster encryption I noticed a TPS drop (transactions per second) of factor four when I benchmarked my application using 128 bit SSL encryption (5 client threads) compared to non-encrypted benchmarking. I know that the SSL layer is pluggable in Orion, I use the standard one that comes with Orion 1.4.0. Is there a faster implementation of SSL for Java/Orion out there, maybe a native code solution? Or is the standard encryption package already using native code for the most critical sections? I guess not, as I have used C++ packages for encryption previously and not noticed such CPU eating behaviour. /David "The Las Vegas of Online Gaming" David Ekholm System Architect Hammarby Kajväg 14, 120 30 Stockholm tel: +46 (0)8 55 69 67 11 mob: +46 (0)70 486 77 38 fax: +46 (0)8 55 69 67 07 icq: 410993
RE: Anyone heard from evermind?
Hi Karl,Robert,All, I am in the same boat these days. I have been talking highly of Orion, but alot of bugs, little documentation and less support these days are taking a toll. Worse..I was able to install and setup WebLogic 6 beta in less than one hour..including full Web-app deployment of my app that runs on Orion. It appears WebLogic is finally getting it right, and with their large market share and vast resources, it seems, at least for the time being, that despite their outrageous prices, we will have to go with them. Small companies with little money will definitely benefit from Orion, but companies with money and a timeline I think will have a hard time waiting for Orion..at least until they get the organization in order and start producing again, along with support, better docs, and so on. Im still a strong supporter for Orion..and will continue to use the product, but I don't know if I can recommend it until I see more commitment that they will indeed be producing builds, adding support, and so on. For what its worth..I have faith in the Orion team to do this..but my superiors don't..so I don't have much choice. Hi Karl, good to see you're still alive ;-). snip/ I will try to keep you posted on these developments and I want to reassure you that we are not gone, but quite the opposite, we are making a move to become more aggressive in the future, but it has made us less visible for some time and has hurt the product development and release cycle, and it is likely to do so from time to time as we go ahead. A new release with a few fixes shouldn't be far away now though. can we read this as a committment to fixing bugs in available features before adding new features (like finalizing EJB2.0 and servlet 2.3 support)? I don't know about others but we are currently facing a rather tough time with the number of outstanding issues regarding stability and robustness. If you're admitting that development resources will be short for some time to come, then I think/hope that this is the only way to go, if you're serious about supporting your current userbase. I'm sorry that I have to say it this way but anyone in the business knows how hard it is to convince people to use an underdog product and I've been taking punches from customers for a while now. Regards, Robert Regards, Karl Avedal (-) Robert Krüger (-) SIGNAL 7 Gesellschaft für Informationstechnologie mbH (-) Brüder-Knauß-Str. 79 - 64285 Darmstadt, (-) Tel: 06151 665401, Fax: 06151 665373 (-) [EMAIL PROTECTED], www.signal7.de
RE: Java IDE
UltraEdit 32 ($30 registered) and ANT build system (best make facility around..easy to create xml build scripts, including deployment, sourcesafe/cvs integration, etc.) -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Ervin JakabSent: Saturday, December 02, 2000 2:20 PMTo: Orion-InterestSubject: Java IDE Hello, I am just learning about EJBs using Orion. I would like to ask you allwhich isthe best IDE to use when developing for Orion? Which is the most integrated with Orion (something like JRun Studio and JRun)? Or simply, how do you develop your own EJBs and Enterprise Applications? Thank you. Ervin
RE: A newbie question - problems with JDBC-connection
If you don't mind..can you help explain to me how you even got this far? I just installed Oracle Personal Edition, and I would like to get Orion to pool connections, use a DataSource, and so on. I don't know about using entity beans yet..I don't think EJB 1.1 entity is powerful enough yet..but 2.0 should be. Until then, I only have 5 tables to work with, which I will use SQL for in the EJB session bean. So if you could possibly explain what JDBC type 4 driver you are using (where you got it from.URL?), how you got Orion to use it as a DataSource instead of the Hypersonic SQL one it defaults to, and so on...I would be much appreciated. Thanks. Hi! I am pretty new to applicationservers and thus trying the grasp the nuts and bolts. I have just finished a sessionbean (via a servlet) which connects to a database and reads a specified table. Everything works fine the first time a run my servlet. But the second time, I get no connection, either of the pool or a new one. I run my example, as recommended, by ejb-location="jdbc/DefaultEJBDS" and I am using classes111.zip from Oracle. Can anyone help with this problem and also explain the principals behind what is happening below. C:\orionjava -Ddatasource.verbose=true -jar orion.jar DataSource logwriter activated... jdbc:oracle:thin:@myserver:1521:myInstance: Started jdbc:oracle:thin:@myserver:1521:myInstance: Started Orion Pooled jdbc:oracle:thin:@myserver:1521:myInstance: Started Orion/1.3.8 initialized Created new physical connection: XA XA Orion Pooled jdbc:oracle:thin:@myserver:1521 :SATT null: Connection XA XA Orion Pooled jdbc:oracle:thin:@myserver:1521:myInstance allocated (Pool size: 0) jdbc:oracle:thin:@myserver:1521:myInstance: Opened connection Created new physical connection: Pooled oracle.jdbc.driver.OracleConnection@c24c 0 Pooled jdbc:oracle:thin:@myserver:1521:SATT: Connection Pooled oracle.jdbc.driver.O racleConnection@c24c0 allocated (Pool size: 0) Pooled jdbc:oracle:thin:@myserver:1521:SATT: Releasing connection Pooled oracle.jdb c.driver.OracleConnection@c24c0 to pool (Pool size: [Ljavax.sql.PooledConnection ;@5f8172) null: Releasing connection XA XA Orion Pooled jdbc:oracle:thin:@myserver:1521:myInstance to pool (Pool size: [Ljavax.sql.PooledConnection;@2ba11b) Orion Pooled jdbc:oracle:thin:@myserver:1521:myinstance: Cache timeout, closing connectio n (Pool size: 0) jdbc/DefaultEJBDS: Cache timeout, closing connection (Pool size: 0) Best regards /Theis
RE: OFFTOPIC: Making a page expired
On the same topic..is there any way to FORCE the browser to always go to the server, even if the BACK button is clicked? We have the "no-cache" settings, but whenever a user hits the BACK button they always see the "this page has expired". Isn't there any way at all to force the browser to go to the server..in which case I have code in place that would redirect them to a specific page that is more user friendly and looks like our site..rather than the MSIE page? Thanks. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of J.T. Wenting Sent: Monday, November 27, 2000 1:11 AM To: Orion-Interest Subject: RE: OFFTOPIC: Making a page expired response.setHeader("CACHE-CONTROL", "max-age=0, must-revalidate"); will do the trick. Jeroen T. Wenting [EMAIL PROTECTED] Murphy was wrong, things that can't go wrong will anyway -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Matt Krevs Sent: Monday, November 27, 2000 05:37 To: Orion-Interest Subject: OFFTOPIC: Making a page expired I am trying to get the browser to display the "this page has expired" message when the user hits the Back button on the browser. We have the luxury? of only needing to support IE5.5. No matter what meta tags i use I cant seem to get the browser to display the standard "this page has expired" message. This is especially important in the situation where the user's session has expired and the user then uses the back button and tries to click on a hyperlink on the old page. Any ideas?
Can't find DataSource in ejb-jar.xml file???
Hello all, What the heck does it mean when I deploy an EJB .jar file and it says: Auto-deploying ss.jar (ejb-jar.xml had been touched since the previous deployment)... Error compiling file:/C:/ss/ss.jar: No DataSource found at jdbc/HypersonicDS My datasource is an Interbase one and I have it set up for that. In orion/config/data-sources.xml that is where I have the Interbase stuff mapped. In /confid/application.xml it points to data-sources.xml. So I fail to see why it is telling me something about HypersonicDS when I have no mention of it anywhere. If I delete data-sources.xml, orion wont start. So it must be reading it in. Is Hypersonic being hard-coded into Orion as a default? Even so..if its reading in mine it should be working. Any help would be appreciated. Thanks.
RE: Anyone using Orion in production? [long]
Interesting Rob. I completely agree with you. I think the Orion team is trying to stay ahead of the big boys by implementing Servlet 2.3 and EJB 2.0, if not any other vendor other than WebLogic. I am curious about one thing. There are supposedly lots of people paying licenses for Orion, including my company. At $1500 a pop (US), if they had a few hundred licenses, that would equate to a pretty darn good piggy bank. Why would they not be hiring more developers, QA, and support people? I recall last year they were saying that sales were going pretty good and they planned on having more than 20 employees by years end, mostly in the support area. Is there any news of this? When will their web-site look like a professional company..in that they have information about the company, privacy statement, contact info (actual phone numbers), and so on? These are the things I question. For over a year I have been supportive of Orion (and still am) because its a great product at an unbeatable price. But I like yourself am starting to wonder whats going on. I would think VC funding wouldn't be hard for them because they are already profitable (or should be) and they have a killer application. VC funding would give them the money they need to hire more people and move Orion up a step, in line with SilverStream, GemStone, and so on. They are still a ways off from WebLogic and WebSphere (in overall completeness). I still think they should charge more! I hate the idea of per cpu, but maybe $5K per server, which still puts them below the price of JRun 3.0, WebSphere, WebLogic, SilverStream, iPlanet, OAS, Inprise, and every other app server that I have knowledge of. Bah..this seems to be a wasted conversation these days. I had (and to some degree still have) great hopes for Orion, but it seems they are taking a long time in getting documentation, support, and so on. Like I said before, Orion to me is much like linux. Its more of a hacker/developer app server than it is mainstream. While it can compete in performance with the best of them (as linux does) and its as stable in most aspects (as linux is), its not quite ready for the "real" market (linux is getting there). However, I will continue to hang on to see what comes about. I am betting the farm on Orion right now because I hope they continue to prosper and grow into a formiddable opponent of WebLogic. I do agree though..stop the EJB 2.0/Servlet 2.3 support and build upon the existing EJB 1.1, etc. I don't agree about your clustering thing..I think a good app server should support clustering from the getgo, which I believe Orion does decently. true but we are talking different quality levels. since I've started working with oracle 3 years ago I haven't had any showstopping bug while I have been in very bad situations (even lost money due to project deadlines we could not keep because of serious bugs that kept the project from completion or workarounds that took a lot of manpower) with orion. The problem is, it feels like an open source project (great software but no real QA) but without the source and I have personally experienced that as a very dangerous combination. I would be very happy and keep my mouth shut if orion would just stay the way it is featurewise but really work reliably with the features it already has until there is enough manpower at evermind to do both QA and new features. just to give you an example, I first reported problems with the exclusive-write-access="false" option (which you need when someone else but the cmp engine writes to the db, pretty common setup especially with a given db schema with cascading deletes) which is seriously broken (I switched an existing working app to that option and the simplest things would break immediately) at the end of august. even the validity-timeout, that can be used as a workaround, was broken (pk checks were still being done on cached entities regardless of timeouts). ok, a few days later there was a new version which removed one problem but broke other stuff related to that. about a month later the validity-timeout issue was fixed while I had taken the heat from my customer and made all kinds of concessions because I didn't want to recode the entire app using sql and kept waiting for a fix. up until now (3 months later), the exclusive-write-access="false" option is still broken (which I regard as one of the most important things in an appserver, it must protect the integrity of my data in the most ROBUST way possible). we've managed to work around that but it still doesn't feel good and I was disappointed to see that the changes in the next version of orion were related to implementing servlet 2.3 spec. if that are the priorities (features before robustness) I don't feel that well about it as a customer who uses ejb and cmp to just code against a spec and completely rely on the correctness of the underlying platform to not worry about many low-level issues
RE: Can't find DataSource in ejb-jar.xml file???
Hey Salaman! Hmm..that makes sense except for one thing..using a DataSource should be vendor independent shouldn't it? Or is that a vendor specific setting? I thought J2EE was all about making a complete app including database free ties, so you can deploy into any app server. If thats the case, then my application.xml and web.xml descriptors should be the only things needed. However, setting the datasource seems to be server specific at this point. I think J2EE has to mature a bit more before true vendor independent apps can be built. None the less, in server.xml, it uses application.xml (all in config folder). In application.xml it uses data-sources.xml. The ONLY data-source I have listed is the one for Interbase. I don't have anything related to HyperSonic any longer..I deleted it out of the file. So, I take it what your saying is that I have to actually change a setting in an auto-created config file? I don't quite get why any file that Orion generates at deployment time (if they don't exist), needs to be edited. If I delete that file and Orion auto-creates it, I have to edit it again. Is there any "standard" way to this? Hi Buck: Orion picks the first datasource in the data-sources.xml file, unless you tell it explicitly which data-source to use in META-INF/orion-application.xml . either make your datasource be the first one the file, or read the docs for (META-INF/orion-application.xml) so you can configure the default datasource to be used by your application... An alternate solution is to create "private" data-sources.xml inside your EAR... :) gotta go to bed! sl8. -Original Message- From: Kevin Duffey [mailto:[EMAIL PROTECTED]] Sent: Saturday, November 25, 2000 4:28 AM To: Orion-Interest Subject: Can't find DataSource in ejb-jar.xml file??? Hello all, What the heck does it mean when I deploy an EJB .jar file and it says: Auto-deploying ss.jar (ejb-jar.xml had been touched since the previous deployment)... Error compiling file:/C:/ss/ss.jar: No DataSource found at jdbc/HypersonicDS My datasource is an Interbase one and I have it set up for that. In orion/config/data-sources.xml that is where I have the Interbase stuff mapped. In /confid/application.xml it points to data-sources.xml. So I fail to see why it is telling me something about HypersonicDS when I have no mention of it anywhere. If I delete data-sources.xml, orion wont start. So it must be reading it in. Is Hypersonic being hard-coded into Orion as a default? Even so..if its reading in mine it should be working. Any help would be appreciated. Thanks.
RE: Can't find DataSource in ejb-jar.xml file???
Thanks. What I did was delete the /orion/application-deployment folder of my app..which seems to work as far as trying to use Interbase. The problem I get now is below..any ideas? Auto-creating table: create table com_ss_ejb_login_LoginEntityEJB (loginName VAR CHAR(255) not null primary key, loginPassword VARCHAR(255) null) java.lang.VerifyError: (class: interbase/interclient/ErrorKey, method: _$372 sig nature: (Ljava/lang/String;Ljava/lang/String;I)V) Expecting to find unitialized object on stack at interbase.interclient.SQLException.init(SQLException.java:96) at interbase.interclient.RecvMessage.createSQLException(RecvMessage.java :694) at interbase.interclient.RecvMessage.makeSQLException(RecvMessage.java:5 93) at interbase.interclient.RecvMessage.get_EXCEPTIONS(RecvMessage.java:554 ) at interbase.interclient.Statement._$121578(Statement.java:282) at interbase.interclient.Statement.executeUpdate(Statement.java:261) at com.evermind.sql.ak.executeUpdate(JAX) at com.evermind.sql.ak.executeUpdate(JAX) at com.evermind.server.ejb.compilation.f6.agz(JAX) at com.evermind.server.ejb.compilation.f0.agz(JAX) at com.evermind.server.ejb.compilation.f0.sm(JAX) at com.evermind.server.ejb.compilation.f6.sm(JAX) at com.evermind.server.ejb.EJBContainer.by(JAX) at com.evermind.server.Application.by(JAX) at com.evermind.server.Application.f9(JAX) at com.evermind.server.ApplicationServer.ri(JAX) at com.evermind.server.ApplicationServer.apa(JAX) at com.evermind.server.ApplicationServer.f9(JAX) at com.evermind.server.hc.run(JAX) at java.lang.Thread.run(Thread.java:484) at com.evermind.util.f.run(JAX)
Can't find DataSource at java:comp/env/jdbc/NameOfDataSourceDS..??
Hi all, Strange things abrew. I have my Interbase datasource set up as list below. I thought the way inside of an EJB to find a DataSource would be: Context context = null; try { context = new InitialContext(); interbase.interclient.DataSource ds = (interbase.interclient.Datasource) context.lookup("java:comp/env/jdbc/myEJBDS"); } catch(NamingException ne) { } However, through various trial and errors, I found the only way I can get it is if I do: Object o = context.lookup("jdbc/myEJBDS"); If I try to typecast it to an interclient datasource, I get a class cast exception. I am at a loss as to why if this is J2EE standard programming, I have to be database specific or vendor specific at any point, and why is it not finding it in java:comp/env? Thanks for any help. data-source class="com.evermind.sql.ConnectionDataSource" inactivity-timeout="120" location="jdbc/SelectScreenDS" name="My Data-source" xa-location="jdbc/xa/MyXADS" ejb-location="jdbc/MyEJBDS" url="jdbc:interbase://localhost/c:/database/mydb" connection-driver="interbase.interclient.Driver" username="sysdba" password="masterkey" /
RE: Anyone using Orion in production? [long]
I quite agree with you Robert. I love Orion..and tell everyone I know to use it becuase of its great performance, features and so on. Lately though I haven't seen either Karl or Magnus on IRC chatting, nor have I seen an email in the list from them on any regular basis. I know myself and a few others are offering a good set of frameworks to be shipped with Orion and haven't heard a response in over a week of submitting the proposal. The frameworks would benefit Orion in that it would be like the big boys..offering more than just an app server. We would fully document them, support them, and they are open-source, so unlike Orion, if anything goes wrong, they are fixable by the ones using it. I quite agree that Orion should make source available for the use of allowing us to fix bugs if they crop up, and submit them for the Orion team to examine and if its a good fix, put it in the next build. This would require more people however..managing a product like Orion with lots of bug fixes coming in, merging them, testing them and so on..that would require alot of managing, and I get the feeling Magnus and Karl would rather write code than integrate fixes from many other people. On the other hand, for the original poster..I don't think you'll find a better Servlet/JSP engine, in terms of performance anyways. I think Orion has one of the fastest most stable web server engines around. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Robert Krueger Sent: Friday, November 24, 2000 4:51 AM To: Orion-Interest Subject: Re: Anyone using Orion in production? [long] At 11:12 24.11.00 , you wrote: Hi, I'd like to know, is anyone currently using Orion in a production environment? The rather high number of issues people report here bothers me because I'd like to get serious with a particular EJB server and my opinion was that Orion was the right choice because of it's low cost and features. In addition, I'd like to know if Orion's HTTP server is suitable for production work, I really would like to have a unified environment instead of having a separate web server for my JSPs and servlets. yes, we've been using it for the past 6 months in production (mainly content management and ecommerce) with over 10 different j2ee applications extensively using servlets, ejb (lots of cmp) so I think I can say that I know what I'm talking about. it's a two-edged sword. as you mention, the integration of having one consistent all-java j2ee environment is of great value and orion's deployment concept is very logical and well-designed. however there are some serious issues with a number of parts of the server (check the archives for JMS and a number of issues regarding exclusive-write-access settings as examples) some of which have brought us in very awkward situations, many times having to work around them with a lot of effort. I would say that in some areas orion is production ready, in some it's not well-tested at all. do extensive testing and if every feature you use works, buy it. it's a great deal for the price. however, there is a substantial risk involved that you may run into a serious bug in a situation when you least need it and then you might be helpless with no source and maybe no fix available for a few weeks/months (been there). I'm not saying this to bash evermind (I sympathize a lot with them actually) but I'm simply speaking from experience to help other people make an informed decision as I would expect them to do if I asked about a product I don't know yet. my personal opinion on this is that evermind should deliver source (while retaining full rights on enhancements and bug fixes) with the product to eliminate that risk. other commercial projects like orbaccus (http://www.ooc.com) have shown that they still make a lot of money despite shipping source for more than five years now. I'm sure about 80% of the bugs our team has reported would have been fixed by us immediately or at least would have been accurately described to the line of source code that has to be changed. I've brought this up to karl and magnus but they don't want to do this and it simply is their baby and therefore their decision (they probably think I'm either a parrot or insane, repeating the same stuff over and over again ;-). It's only for that (having been helpless in many situations when we least neded it), that we are seriously considering moving to jboss as soon as their cmp support has met a certain level of quality, although their server is inferior to orion in many regards, especially as far as the overall integration is concerned. BUT their main architects/developers take the time to answer user questions on their user list every day and if there is a small bug (one or two line fix typically) you can just make it and submit it instead of spending 10 times as much effort assembling a test case to submit it to the
RE: Anyone using Orion in production? [long]
Really? How can they be sued by Sun for their own source? JBoss isn't getting sued..aren't they open source? I can't believe Sun could sue anyone for making an open-source application server. Maybe there is something we don't know...?? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Gerald Gutierrez Sent: Friday, November 24, 2000 10:16 AM To: Orion-Interest Subject: Re: Anyone using Orion in production? [long] However I can sympatize with Karl and Magnus. EJB is a very new technology. Shipping the source makes it relatively easy for the competition to copy the product which of course is the downside. But I think shippingg the source would be for the better of the server. Nobody is perfect and if all of us have our hands on the source lots of those silly bugs should be fixed in much less time. Having to submit a testcase makes for a lot of effort on both sides since we have to create a testcase which has to be recreated by the orion team and tested. Most of these bug however would simply appear running your app through a debugger and jumping into the orion source. I've run into so many weird and absurd problems in Orion; all it would've taken for me to solve the problem and submit a patch would be a grep in the source tree. Alas, I cannot do this and I am stuck with an application server that has many advantages and many disadvantages, which more or less cancel each other out. Many bugs I post as problems to the mailing list, many times without response, forcing me to submit some of them to bugzilla, where they go unnoticed. Evermind's position, as stated on the FAQ, is that they would be SUED by Sun if they made their source code public. What?! What is the rationale behind this conclusion???
RE: Can`t deploy Orion-Primer
What did you use to edit the file? I would use NotePad and look for any strange characters. I also use WordPad myself (at least on Windows platform), and save it as a text only file. It's possible an editor you used inserted some formatting character(s). -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Martin Lilienthal Sent: Tuesday, October 24, 2000 9:23 AM To: Orion-Interest Subject: Can`t deploy Orion-Primer Hi, I followed the orion primer and created the session bean, the descriptors and the client servlet. I verified, that everything is correct, but when I start up orion I get the following error: C:\orionjava -jar orion.jar Error instantiating application at file:/C:/orion/applications/orion-primer.ear: Error parsing META-INF/application.xml in C:\orion\applications\orion-primer: Fatal error at line 4: Illegal character at end of document, #x3c;. Orion/1.3.8 initialized I checked the application.xml file, and I found no "illegal characters" Thanks in advance Martin Lilienthal
RE: Anyone using Orion in production? [long]
You know..while I would love to see source for the sole purpose of allowing us to help the Orion team debug and fix problems (not to allow a fork of the product), I think everyone needs to think about other products. Do you think WebLogic, Inprise, Oracle, IBM and others are going to release their source so the committed followers can help them fix bugs. That would be ideal..but none of them do it. Thus far I don't know of any full J2EE ready app servers that have released their source. I have heard of JBoss..but I don't know much about it. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Gerald Gutierrez Sent: Friday, November 24, 2000 1:10 PM To: Orion-Interest Subject: RE: Anyone using Orion in production? [long] The Orion FAQ (http://www.orionserver.com/faq/#-551543462) actually says that they might be sued by Sun if they "offer ... source under a Linux-style license", not simply that they provide source (possibly under an NDA). Perhaps there are no legal reasons if they choose to do the latter (and there are with the former), but my inclination is that Evermind doesn't want to release source, not that they can't. I respect it, but I must disagree for a number of technical and business-related reasons. Like someone else said in this list, that there are serious bugs and that people using the product are powerless to fix it themselves is enough to make one look for an alternative solution. The price is a fair and the performance is excellent, but what good is it if it is unreliable? This is not a word processor or a web browser; a crash a day, week or month is not tolerable. At 11:42 AM 11/24/2000 -0800, you wrote: Really? How can they be sued by Sun for their own source? JBoss isn't getting sued..aren't they open source? I can't believe Sun could sue anyone for making an open-source application server. Maybe there is something we don't know...?? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Gerald Gutierrez Sent: Friday, November 24, 2000 10:16 AM To: Orion-Interest Subject: Re: Anyone using Orion in production? [long] However I can sympatize with Karl and Magnus. EJB is a very new technology. Shipping the source makes it relatively easy for the competition to copy the product which of course is the downside. But I think shippingg the source would be for the better of the server. Nobody is perfect and if all of us have our hands on the source lots of those silly bugs should be fixed in much less time. Having to submit a testcase makes for a lot of effort on both sides since we have to create a testcase which has to be recreated by the orion team and tested. Most of these bug however would simply appear running your app through a debugger and jumping into the orion source. I've run into so many weird and absurd problems in Orion; all it would've taken for me to solve the problem and submit a patch would be a grep in the source tree. Alas, I cannot do this and I am stuck with an application server that has many advantages and many disadvantages, which more or less cancel each other out. Many bugs I post as problems to the mailing list, many times without response, forcing me to submit some of them to bugzilla, where they go unnoticed. Evermind's position, as stated on the FAQ, is that they would be SUED by Sun if they made their source code public. What?! What is the rationale behind this conclusion???
RE: Calling EJB in Orion from Resin -Problem,
I hope this is not the case. That would make binding EJBs Orion dependent. I think thee is a non-vendor dependent way in doing this..otherwise how would J2EE apps be portable to other vendors? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Lebedko, Oleg Sent: Thursday, November 23, 2000 6:38 AM To: Orion-Interest Subject: RE: Calling EJB in Orion from Resin -Problem, Hi Santosh, As I understood, Orion by default binds ejb to JNDI name which is the same as ejb's name (ejb-name tag in the ejb-jar.xml) To change that you have to change binding in orion-ejb-jar.xml (which is in. orion/application-deployments/appname/ejbjarname.jar/orion-ejb-jar .xml) and change location attribute. Also when I worked from remote client I could get ejb only using com.evermind.server.ApplicationClientInitialContextFactory as context factory. RMIInitialContextFactory didn't work in my case. Also I had to provide orion-cart-client.xml file (which, I guess, is used by Context Factory ) not to mention remote and home. Could you let me know if you succeed, because we would be interested in that kind of integration too, but I've read that RESIN uses some proprietary protocol for EJB support, so only orion's libraries should be use on RESIN side when handling EJBs. I didn't try that myself yet. Oleg Lebedko Wireless Networks, Technology Development 2920 Matheson Blvd. E., F7 Mississauga, ON L4W 5J4 * (905) 282 - 3263 [150 - 3263] * [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] -Original Message- From: Santosh Kumar [SMTP:[EMAIL PROTECTED]] Sent: Thursday, November 23, 2000 4:50 AM To: Orion-Interest Subject:Re: Calling EJB in Orion from Resin -Problem, Did'nt work.. Santosh - Original Message - From: Montebove Luciano [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Thursday, November 23, 2000 1:18 PM Subject: R: Calling EJB in Orion from Resin -Problem, Substitute Object boundObject = context.lookup("java:comp/env/ejb/HelloHome"); with Object boundObject = context.lookup("java:comp/env/ejb/Hello"); Luciano -Messaggio originale- Da: Santosh Kumar [mailto:[EMAIL PROTECTED]] Inviato: mercoledì 22 novembre 2000 13.23 A: Orion-Interest Oggetto: Calling EJB in Orion from Resin -Problem, Hi All, I am onto an interesting task of using resin as the EJB client for Orion. Everything seems to be in line but i dont know why i get this problem when i run the orion-primer example EJB with the servlet part executing on the RESIN. javax.servlet.ServletException: Unable to get home interface: javax.naming.NameNotFoundException: expected intermediate context in `ejb/HelloHome' at hello.web.HelloServlet.init(HelloServlet.java:47) at com.caucho.server.http.Application.loadServlet(Application.java:1504) at com.caucho.server.http.Invocation.service(Invocation.java:207) at com.caucho.server.http.CacheInvocation.service(CacheInvocation.jav a:142) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:211) at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.ja va:145) at com.caucho.server.TcpConnection.run(TcpConnection.java:139) at java.lang.Thread.run(Thread.java:484) Servlet code: public void init(ServletConfig config) throws ServletException { // Get the initial JNDI context using our settings Context context; try { context = new InitialContext(); } catch (Throwable exception) { throw new ServletException( "Unable to get initial JNDI context: " + exception.toString()); } // Get a reference to the Hello home interface HelloHome helloHome; try { Object boundObject = context.lookup("java:comp/env/ejb/HelloHome"); helloHome = (HelloHome) PortableRemoteObject.narrow(boundObject, HelloHome.class); } catch (Throwable exception) { throw new ServletException( "Unable to get home interface: " + exception.toString()); } WEB.xml (which resin specifies to add in its app) ?xml version="1.0" encoding="UTF-8"? web-app classpath id='WEB-INF/classes/orion.jar'/ classpath id='WEB-INF/classes/mail.jar'/ classpath id='WEB-INF/classes/ejb.jar'/ jndi-link jndi-namejava:comp/env/ejb/jndi-name jndi-factorycom.evermind.server.rmi.RMIInitialContextFactory /jndi-factory init-param
RE: Do I miss anything ?
Hey..I forget how..but I know you have to reference the 2nd ejb inside the 1st ejb descriptor. Look at some examples in the Orion dir, but if one ejb uses another, it must say so in its ejb-ref descriptor. On the other hand..I did this and still had a problem. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Edmund Cheung Sent: Thursday, November 23, 2000 8:54 AM To: Orion-Interest Subject: Do I miss anything ? Hi , I try to call the entity bean E1 (user) from the session bean S1 ( user manager) . The deployment of S1 is OK but not OK for the E1. Buf if I deply E1 outsite the S1, it is OK. So, do I miss to define somthing in the web.xml file. Below is my ejb stuff in the web.xml file; ejb-ref descriptionuser manager/description ejb-ref-nameejb/UserManager/ejb-ref-name ejb-ref-typeSession/ejb-ref-type homeframework.users.usermanagersession.UserManagerHome/home remoteframework.users.usermanagersession.UserManager/remote /ejb-ref ejb-ref descriptionuser/description ejb-ref-nameejb/User/ejb-ref-name ejb-ref-typeEntity/ejb-ref-type homeframework.users.userentity.UserHome/home remoteframework.users.userentity.User/remote ejb-linkUserManager/ejb-link /ejb-ref Thanks a lot, Edmund
Interbase DataSource?
Does anyone possibly know how I can map an Interbase 6 so that Orion uses it with CMP? Here is the mapping I have based on the help file that shows Interbase types to java types: ?xml version="1.0"? !DOCTYPE database-schema PUBLIC "-//Evermind//- Database schema" "http://www.orionserver.com/dtds/database-schemas.dtd" database-schema name="Interbase 6" not-null="not null" null="" primary-key="primary key" type-mapping type="java.lang.String" name="varchar(255)" / type-mapping type="int" name="integer" / type-mapping type="long" name="integer" / type-mapping type="float" name="float" / type-mapping type="double" name="double precision" / type-mapping type="byte" name="byte" / type-mapping type="char" name="char" / type-mapping type="short" name="smallint" / type-mapping type="boolean" name="boolean" / type-mapping type="java.util.Date" name="date" / type-mapping type="byte[]" name="blob sub_type 0" / type-mapping type="java.io.InputStream" name="blob sub_type 0" / disallowed-field name="password" / disallowed-field name="username" / /database-schema I am not sure if these are correct..but I am hoping so. Next..how do I get the datasource working with Orion? When I start Orion should I see anything special (maybe in the console window)? How does entity beans with CMP use datasources? Does Orino automatically pool connections, and so on? Thanks.
RE: LoadBalancer truncating large files (65K)
Shouldn't be the case..but I would suggest a hardware load-balancer. A decent one should be only a couple of $K, if that. Make sure it supports cookie/session capabilities, and hopefully it supports island clustering capabilities. By this I mean, when a request comes in, it should identify the session via the cookie (or url rewriting passing session ID), and know what island (in Orion terms) the request goes to based on what island it originally went to (the first time it came in). It should also be able to load-balance between computers in the island. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Peter DunnSent: Thursday, November 23, 2000 10:29 AMTo: Orion-InterestSubject: LoadBalancer truncating large files (65K) The loadbalancere is truncating large files. Works fine without load balancing, but only the first 65K come through when the loadbalancer is used. Does anyone have a work around for this issue? I can not use the orion's loadbalancer until this issue is fixed? Regards, Peter
Security and UserManager and all that?
Can someone kindly explain to me what is the purpose of using the security roles, user managers and all that in the descriptor files? I quite honestly don't understand it. I mean..if I have a web-app that has a login screen that uses EJB to look up a login name and password in a database to allow someone in, why would there be server-level security and role facilities? Thanks.
RE: ORION and VAJ?
I have seen here that JBuilder 4 works well with Orion. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Rob Lapensee Sent: Thursday, November 16, 2000 4:10 AM To: Orion-Interest Subject: RE: ORION and VAJ? John, I switched to netbeans (www.netbeans.org) because of exactly that, I could not get VAJ to work with Orion. Or more accurately I could not get Orion to import into VAJ and run from within VAJ, which would have allowed debugging of EJB's I got Tomcat to import into VAJ quite nicely... Regards, Rob Lapensee Director of Technology Delfour Corporation [EMAIL PROTECTED] www.delfour.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of [EMAIL PROTECTED] Sent: Wednesday, November 15, 2000 7:42 PM To: Orion-Interest Subject: ORION and VAJ? Briefly looking at the archives I saw this question with no real resolution so please forgive the bandwidth while I ask again. Has anyone succeeded in running Orion from within Visual Age Java? All comments welcome. john -- E-Mail: [EMAIL PROTECTED] Date: 15-Nov-00 Time: 18:39:20 This message was sent by XFMail --
JNDI Properties for Orion and EJB?
Hi there, I read in my EJB book that CTM's require vendor specific JDNI properties. I thought EJB was platform/vendor independent? What are these JNDI properties for? More importantly..when/why are they used? I see in the example EJB's with Orion that they all have a jndi.properties file, yet I am not quite sure how to understand them. I can say this..I tried getting one EJB from another EJB and I kept getting RemoteException (or maybe it was NamingException). I may have had the ejb-jar.xml file wrong..but I don't think so. I checked it several times and did it exactly as the examples do, so I can't see how come in my one EJB when I did a context.lookup("java:comp/env/ejb/EJBName") it kept giving me NamingException. Is it because in an EJB that uses another EJB you must use the JNDI properties for the context or something? Anyways..I need to get Entity beans working using JDBC 2.0 (DataSource) so that I can easily plug in any database I want (if thats even possible). Thanks.
RE: EJB Basics
Hmm..something I think I can answer..at least to some degree. WEB-INF is a dir usually below each Web Apps WWW dir. WEB-INF is where you would place your compiled classes (WEB-INF/classes) and any 3rd party libraries you would use (WEB-INF/lib). You also have a Servlet 2.2 standard web-app descriptor, called web.xml. This is where you map servlets, set up welcome files, and so on. The .WAR file type is really nothing more than a www dir jarred up (.jar) but with a .war extension. It includes the www folder, and the WEB-INF folder below it, with the compiled classes of the servlets/javabeans/core classes, and 3rd party libraries. You can deploy a single .war file into any J2EE app server that properly implements the spec. Actually, it can be deployed into any Servlet 2.2 container. ServletExec and Resin are two engines that are not J2EE app servers, but do manage Servlet 2.2/JSP 1.1. META-INF is, as far as I know, where a J2EE standard application.xml descriptor goes, and is part of the .EAR file format, which can include many web-apps (many www with WEB-INF dirs below each), as well as EJBs. A single EAR is considered an application in itself, probably because you can deploy EJBs into any J2EE app server using an EAR (if that app server supports EARs). I don't know the full gist of EAR but I do know Orion supports it, including hot-swap (at least I think it supports hot-swap) of EAR applications. I am not sure of the full benefit of EAR over WAR, other than that you can contain many WAR files in a single EAR, as well as any number of EJB's. EAR stands for Enterprise Application aRchive, whereas WAR stands for Web Applicat aRchive. Hope that sheds a little light on the topic. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Mark A. RichmanSent: Tuesday, November 14, 2000 10:01 AMTo: Orion-InterestSubject: EJB Basics What is the difference between WEB-INF and META-INF? How do these directory structures relate to jar, ear, and war files? Which of these is J2EE, and which is Orion-specific? Maybe I am confusing something with Tomcat... - Mark
RE: EJB Basics
I think you simply do a jar myfile.WAR /path or something like that. A WAR and a EAR are a JAR with different extensions. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Widmer, KarlSent: Wednesday, November 15, 2000 3:39 AMTo: Orion-InterestSubject: RE: EJB Basics I am new to Orion but have experience of Java and have used thejar process several times to archive classes. However, has anyone got an example of using jar tocreate a Web Application war file that includes jsp and bean classes. Thanks for any help. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Kevin DuffeySent: 15 November 2000 08:50To: Orion-InterestSubject: RE: EJB Basics Hmm..something I think I can answer..at least to some degree. WEB-INF is a dir usually below each Web Apps WWW dir. WEB-INF is where you would place your compiled classes (WEB-INF/classes) and any 3rd party libraries you would use (WEB-INF/lib). You also have a Servlet 2.2 standard web-app descriptor, called web.xml. This is where you map servlets, set up welcome files, and so on. The .WAR file type is really nothing more than a www dir jarred up (.jar) but with a .war extension. It includes the www folder, and the WEB-INF folder below it, with the compiled classes of the servlets/javabeans/core classes, and 3rd party libraries. You can deploy a single .war file into any J2EE app server that properly implements the spec. Actually, it can be deployed into any Servlet 2.2 container. ServletExec and Resin are two engines that are not J2EE app servers, but do manage Servlet 2.2/JSP 1.1. META-INF is, as far as I know, where a J2EE standard application.xml descriptor goes, and is part of the .EAR file format, which can include many web-apps (many www with WEB-INF dirs below each), as well as EJBs. A single EAR is considered an application in itself, probably because you can deploy EJBs into any J2EE app server using an EAR (if that app server supports EARs). I don't know the full gist of EAR but I do know Orion supports it, including hot-swap (at least I think it supports hot-swap) of EAR applications. I am not sure of the full benefit of EAR over WAR, other than that you can contain many WAR files in a single EAR, as well as any number of EJB's. EAR stands for Enterprise Application aRchive, whereas WAR stands for Web Applicat aRchive. Hope that sheds a little light on the topic. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Mark A. RichmanSent: Tuesday, November 14, 2000 10:01 AMTo: Orion-InterestSubject: EJB Basics What is the difference between WEB-INF and META-INF? How do these directory structures relate to jar, ear, and war files? Which of these is J2EE, and which is Orion-specific? Maybe I am confusing something with Tomcat... - Mark MetaPack The Lightwell 12/16 Laystall Street Clerkenwell London EC1R 4PF Tel: 020 7843 6720 Fax: 020 7843 6721 -- This email is confidential and proprietary; all information contained in it must be used only by the addressee in accordance with MetaPack's terms of business and non-disclosure agreement. Disclosure, copying, and distribution to, or use by, anyone other than the intended recipient is strictly prohibited and may be unlawful.
EJB using core classes?
Hi all, I am attempting (again) deploying EJB. While I think I have the pricipals down, (still trying to figure out JNDI properties..what they are for), I am confused about one thing. I have an application named ss. In Orion I have set the path to c:\ss. There is the META-INF dir, which I have application.xml in..that points has module ejbss.jar/ejb /module. It also has my web module in it that points to www (from ss..so ss/www). I compile my ejb (a simple login ejb) which seems to be ok. In the ss.jar, I have the META-INF dir with ejb-jar.xml in it accessing my com.ss.ejb.login.LoginXXX classes. These are Stateless session classes. I also have in the ejb-jar.xml file the com/ss/ejb/login/LoginSessionEJB.class, and so on. So when I start up Orion, it shows its deploying the EJB, however..it says it can't find class core/login/Login.class. Now..in my package, I have ss.core, ss.ejb, and ss.ui. ss.core.login.Login is a "bean" that I will use in both the EJB entity class, and my UI javabean class. I don't know if this is the wrong way to do it, but I figure..why put the same getter/setter methods twice (in both the UI javabean class that gets/sets the JSP page form info, and the EJB class that loads/stores the same info). I am not too familiar with EJB just yet, but I see no reason why this wouldn't work. In my entity bean, I would somehow reference the core.login.Login class, and use that reference to load/store the entity. Can that even be done? Or is the only way to get entity beans via CMP to work is directly have the methods in the entity? I would think if my methods that are used to load/store the entity use the reference to get/set the fields of the reference Login, this should be ok. At any rate..my main question here is, the EJB class in the jar file is referencing the core class. I don't have the core package in the jar file. I thought if I deployed the jar file into the same web-app as the other classes were in, it would have access to these classes. I compile classes to WEB-INF/classes. Is this not the case? Is there some trickery to getting EJB classes to see the WEB-INF/classes? Thanks for any help.
RE: Client hits STOP button..is there a way to detect this before sending a response?
Hi again, Actually..I hashed out your first idea with two other guys and it seems like it should work. Let me see if I got this straight. 1) When the action class is called..create a timestamp. 2) Create the stateless session class. 3) Get the javabean associated with the series of pages (session scope) 4) set the timestamp in the bean. 5) set the timestamp in the session. 6) do session logic. 7) check to see if the session timestamp and bean timestamp are the same. 8) if so, set the bean reference to the session return results 9) if not, ignore everything else...most likely the connection was lost 10) return jsp page So in code it might look something like: { SomeSession ss = new SomeSession(); SomeBean bean = getBean(); // gets the javabean used by jsp page Date date = new Date(); ss.setDate(date); bean.setDate(date); ss.doLogic(); if(checkDate( ss.getDate(), bean.getDate()) ) { bean.setResults( ss.listAllResults() ) } } Is that good enough? You said something about a race condition. I recall reading about this in my threading book, but I never was quite clear on it. My assumption is that it would be possible for two thread/requests to interrupt one another, thus in the middle of one thread checking the date, another one could be altering it, or something like that. Here is why I don't think this would ever happen. First, because each bean is tied to an HttpSession, on a per-client basis, it would be almost impossible for a client to submit to the same method in the same action class at the same time..much less at least seconds apart. It is possible that the two sessions do different amounts of work..such as one searching for everything, and one searching for a few items..with both ending up finishing at the same time. In this case..what to do? There is one other thing to think about though. By actually fixing this problem, we introduce another one. By allowing a user to hit STOP on the browser and submit the form again, each request (at least in our case) will pull a connection from the connection pool. If you have one user that submits, stops, submits, stops, etc..and possibly several sessions (not http..but logic session classes) running on the server for just a single user..its very possible we will run out of connections in the connectin pool (our own home brewn class right now). We did add some code that will open new connections, but until we move to EJB and have the container manage all of this, it can get quite bad if too many requests from one user keep going. Ofcourse, at some point the session/logic class thread will be done and the connection will get returned. However, my thinking is..a J2EE web app is like an application. The user shouldn't be prevented from stopping a form right after its submitted..maybe they see something they forgot, or some wrong info. If it was a desktop application..they could stop it, change, and restart the transaction (unless its using RMI or CORBA or something to talk to a logic tier of servers). So, I think as a web-application, they should be able to do this too. If this means we should have 1000 connections in the pool (hopefully not), then so be it..but the end user should never be burdened because we simply only allow them to do one transaction at a time. We did however allow them to do one transactio per module on our site..meaning, if they were to send a fax, and check for an invoice, each one is a separate module..so they could get away with doing each one of those at the same time. Anyways..I look forward to what you have to say about my understanding of what you said in the first email reply, and see if I am on target with implementing this. Thanks again. On Wed, 15 Nov 2000, Duffey, Kevin wrote: Thanks for the reply.. Your idea has some merit..the only problem is, we have so many different searches and profile updates that could be happening..I would need to keep track of each of those separately. Here is what I had in mind if there isn't any way to detect ahead of time that a connection to the browser was terminted. snipped I think your proposed solution seems kinda kludgy (either that, or I'm a bit slow and don't fully understand it...) also as you said it only tracks two references, and can be foiled by starting 2 long running searches, aborting them, then doing a quick third one. You don't need to keep track of each request, you just need to provide very basic tagging of results so they can be verified against requests. A slight variant: Instead of passing in the timestamp have the bean return one as part of the result, which you could then sanity check to ensure that the timestamp in the session is before the time the search bean thinks it started. If you get a mismatch, then discard the results as they're stale. This does leave a race condition, where the critical section is in between placing the timestamp in the session and the search bean creating its own
RE: Client hits STOP button..is there a way to detect this before sending a response?
Thats a good approach to take for things like a "list" of items, such as a search engine or a list of rows from a table. But what about when your building up a single transaction, and you need to keep the state of several pages across requests? While there is even less of a chance of what I am asking about happening in that case..it could happen. My worse fear is someone doing a DOS (Denial Of Service) on our site..imagine 1000 virtual users, and possibly each having the same cookie passed in so the server sees it as a single session. You would think though..since when trying to return a response the application server can throw an exception..there would be some way of checking if the connection still exists before sending the response back. That would solve this problem. :) I did think about using request scope..I just wasn't sure how I could maintain the other pages info across requests without sending large amounts of data as part of the query string..and I don't want to use hidden form fields. Quick answer - i dont know how to do an 'early detection' of the user pressing the stop button. I dont think its possibly - at least I dont think there is a non-super-difficult way of doing it. I think you may need to do more than just put your results bean in the session when providing a means to return results to the user. For example, what happens if both requests occur successfully ie the user has 2 browser windows open and does 2 successful searches). Seems as though whatever search finished first will have its results bean overwritten. In our project we almost exclusively use the request scope to put our beans in. When the user clicks the 'get me more button' we pass extra parameters that tell the server to get the next X rows. eg user clicks 'find' - get me the first X rows where user clicks 'more' - get me the first X rows where primary key is the primary key of the last row returned in the previous search. Basically then each search is independent of the last and you dont have to worry about cleaning up session beans, overwriting session beans etc. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Duffey, Kevin Sent: Thursday, 16 November 2000 8:42 AM To: Orion-Interest Subject: Client hits STOP button..is there a way to detect this before sending a response? Hi, I have a need to find out if the connection back to the browser from a servlet is still good or not, before an attempt to send the response occurs. Is this possible? I know when I do a response.sendRedirect() or requestDispatcher().forward() Orion will throw an exception if the connection to the browser (or client for that matter) has been terminated. The problem is..I want to check for this before an attempt is made, so that incase the connection is lost, I don't populate the javabean. I'll give a reason why this is necessary (and very helpful). I have my code organized into JSP pages, ControllerServlet/Action classs, JavaBeans and Session classes. Session classes are STATELESS classes, so that I can get ready to move to EJB when I get time. Each time a request is submitted, it goes to an action class method to be handled. The action class instantiates a new session class (I am not bothering with a pooled setup for session classes at this point as EJB will do this for me when I move to it). The session class performs some logic..usually database acitivty of some sort. The action class is then given a result (usually a Vector of some sort of objects). The action class then sets a bean variable to point to the vector of results. The bean is stateful and is session scope (HttpSession). At the end of the action, the response is forwarded to a JSP page. That page then uses the bean and its reference to results to display them. So here is the problem. If a user submits a form (say..to search for all clients) and lets say that search will take two minutes. 10 seconds later, the client sees he/she made a mistake on what they were searching for. As if often the case..they hit STOP on the browser, change their mistake and submit the form again. On the server..there are now two threads running..because the first one hasn't completed yet (assuming the user submitted the form the 2nd time fairly quickly). The 2nd request is quick..it populates the javabean reference to a Vector of objects say in 20 seconds. The response is sent back and the user sees a list of say 20 items. Now, while they are looking over this list, the 1st request they sent is still going on. At some point it too populates the SAME javabean with its results, which are now different than what the client is actually looking at on the page. The action tries to return its response but it finds its connection was terminated. It throws an exception (which I catch), and voila..the client sees nothing. Where the problem lies though..is when the first request
CMP Primer related question..
Title: RE: Deleting cookies with Orion Hi all, I got the CMP Orion Primer, but it leaves me in the dark on a couple of things (as does the Orion Primer..which shows EJB). It appears EJB isn't all that hard, but the primers, and other articles I have been looking at, don't clearly state how you can test and develop EJB without having to keep on repackaging it into a jar file, deploying it, etc. I can't imagine every time you make a change to an entity bean or session bean that you have to repackage the thing and redeploy it. Isn't there any way you can develop EJBs as you do servlets, javabeans and jsp pages..an "open" dir structure. I guess worse case scenario if this can't be done, a good script that you run each time you make a change that compiles, packages and deploys it would be handy..is one available? Also, about Orion..when using CMP, does Orion automatically do connection pooling for you (for database connections)? I see there is the ability to use a PooledConnection in servlets, but I am unclear if when using CMP Orion (and other J2EE app servers for that matter) use an internal connection pool that you can set the size of somehow. Lastly, on our site we currently use our own home-brewn persistence layer. It does the job, but a query of 600 station objects appears to use about 400MB of memory. I assume our code is very bad..I didn't write it..but it doesn't make much since to me as to why a query with only 400 objects being created would require so much memory. None the less, alot of our queries use joins with other tables. I read somewhere that complex O/R mapping wont be available until EJB 2.0, so does that mean I can't do a query of an object that requires joins? I am unclear as to how exactly when using CMP you would get joins to work. For example, a one to many relationship of a particular table...say a user with many transactions. Also, what if each transaction had many "sub transactions". Thus, the first table would be many users. Each user can have many transactions, and each transaction could have many sub-transactions. Is this possible now with CMP, Orion and O/R? thanks.
RE: OR mapping of table joins for CMP
Hi, This is to Nick, and anyone else that can shed some light.. If you did this you would find that Orion would auto-create tables that are basically identical in form to those that you have, but probably with different names. If you now go into the orion-ejb.xml file that orion generates you can change the table and column names to those that you already have. When you have done this, you have the two tables linked transparently by Orion. Just asking for a Person will automatically retrieve the Job, and from that you can retrieve the job_description. I would like to learn HOW I can learn this. :) I know nothing of CMP and O/R at this point, so where do I start learning? I can't just load up Orion and blindly code this stuff..is there a good book on CMP and O/R with EJBs? I realize each vendor has their own implementation of how CMP works, but I would like to know more about it. One thing that caught my eye, from what you said, it sounds like you don't create database tables from a special tool, then write SQL and other stuff to insert, remove, update and search? Is this the case with O/R and CMP? Do you define an entity bean class, and the app server automatically generates a table for you in the database? If that is the case, how exactly does it do this for any database type? I am using Interbase 6.0 at home, and the SQL for Interbase (mainly the data types) is different than that of Oracle. I do see the /config/datasource dir that maps various database data types..so I am going to take a wild guess and assume Orion uses the information in there for its mappings. Anyways, I would like to buy a book, or see some online tutorials on how this all works, and how I can use it. Also, do modeling tools (UML) work with CMP and O/R for you? Is it as easy as making some diagrams that describe the database table(s) and it writes the entity bean for you? Thanks.
CMP / OR tutorial, info, etc?
Title: RE: classpath for third party tools Hi, I am finaly getting ready to make the dive into OR / CMP. To be honest, I don't know a whole heck of a lot about it. I do know though that I want to stick to J2EE based standards while building my own site. So instead of using JDBC 1, and trying to figure out some way to map database tables to my classes, storing, searching, deleting, etc..I would like to find out where I can get more info on exactly how to use OR and CMP. I would really like to start with the basics as I don't know much about designing tables, databases, etc. I need to learn the best way(s) to model entity beans after database tables, how CMP works, O/R, etc. So any tutorials online, or even a book, would be great. Also, how does Orion work with these? Is CMP and O/R a standard with J2EE, even though each vendor can implement them in their own way? Thanks.
Session/cookie problems with multiple web-apps in one application
Title: RE: classpath for third party tools Hi all, I'll be darned if I thought I had this problem licked. Here is the deal..I am running 3 web-apps in one application (one instace of Orion). Each web-app has its own context if I am not mistaken, which means that one context can not share data with any other context that is running. What I need to happen is allow 3 browsers access the 3 apps. All 3 apps point to the same one www dir on the local drive, but each has a context root name of /admin/mediaName where mediaName is radio, tv or cable. So, you would type in http://xxx.xxx.xxx.xxx/admin/radio http://xxx.xxx.xxx.xxx/admin/tv or http://xxx.xxx.xxx.xxx/admin/cable Now the problem is, each has a database associated with them (we run 3 databases, one for each media type). A special HttpSession object (String type) indicates the media type your in based on the Context path. I use the call request.getContextPath() which returns /admin/radio, /admin/tv or /admin/cable depending on what was typed, and store the Integer equivalent in the String MediaType in the HttpSession. All servlets/actions (using struts framework) use this stored value to determine what database to hit to get the data. This should work, and does seem to work if I use the same one browser to log in with. If I open two windows, and log in to radio, then cable (in the 2nd browser), then pull up a query on some stuff that, it seems to show the radio data, even though I am using a browser with the /admin/cable context in the URL line. When I run the Console and look at the HttpSession data, /admin/cable shows a MediaType of 3 (Cable) which is correct, yet it still seems to be pulling radio date. So, what I have figured out is that somehow, when I log in to radio first, then into cable, even though a HttpSession is created in the /admin/cable web-app, the actual session being retrieved is that of the /admin/radio web-app, which is the only way I can explain it getting radio data. The reason this is the only way is that the "logic" classes use the MediaType value set when the logic class is created (a call to new with its constructor being passed the media type). So, I think the problem is, why in a 2nd window, when I clearly log in to /admin/cable and the session is created (in the Orion console) in the /admin/cable web-app, is it somehow getting the /admin/radio session when the query is performed. I wish there was some way to test this. I think I have an idea, but it would be kewl if the Orion app showed an "access counter" to each object or something..if thats possible. Anyways, I just wanted to see if anyone else has ever had this problem. Before answering, I do know before Servlet 2.2, that it was impossible without some working, to allow multiple browsers of the same type (MSIE for example) to have multiple sessions going. I thought I understood the Servlet 2.2 spec to read that the context path in the URL of the request determines where it looks for the session, then would use the cookie to get the proper session for the request. It doesn't appear to be doing this for me, so if I am wrong, please enlighten me. Thanks.
Re: Clustering and load balancing Howto
Hi, Its already out heh..I gotta go get it. Where ideally should loadbalancer.jar be executed? Obviously if it is running on one of the machines in the cluster it isn't so good.. sort of defeats the fail-safe purposes... So should it have it's own machine? Or am I just missing something. From what Magnus told me ( I think it was he), it is ok to run it on the same server, but as you said, it defeats the purpose. Ideally, you would run it on its own box, and have it communicate on the same port/ip multi-cast as the two or more orion servers for load-balancing. I have a question on this matter. What if I want one load-balancer feeding multiple islands? Can this program load-balance properly between multiple Orion islands? I recall Karl teaching me (and others on the list) about how Orion can work as mutliple islands. The reason this is helpful is that if you have 10 servers on one island, each HttpSession of each server is replicated to all 10 servers. First, this can take a little more time to send all the objects of each servers HttpSession to the other 9 servers for replication. Second, the memory of each server would need to be able to handle the number of objects for all 10 HttpSessions. As Karl pointed out, using an island with say, 2 or 3 servers, but having multiple islands, will reduce the memory footprint needed, as well as increase performance since each island only replicates the HttpSession data within the servers of its island. So, being that this load-balancer program is Orion aware, is it possible to set up multiple islands and does it distribute the load evenly through each island, and each server in each island? Excellent! BUT. when I start up the dead server again... it gets detected by the loadbalancer... starts receiving updates from the other server... so I kill of Server #2 it dies... and the counter returns to 1 even though the counter value DID get passed (listed in the debug messages)... for some reason it creates a new session. Any ideas here? That worries me. I hope this is just a bug or something. In fact after the first successful fail-over ... I can't get it to do it again without stopping the loadbalancer... and then both servers... then starting the load balancer... then both the servers again. It seems to only work once... then not anymore... even though it LOOKS like it should work. Any help is greatly appreciated! I am using Orion 1.3.3 since that's what the autoupdate gave me... the HOWTO DOES say to use 1.3.5+ but I don't know where that is. Really? I thought in 1.2.9 the load-balancer was functional. I haven't tried it yet, but I was told 1.2.9 is a stable release, and that is what I intend on doing production with. OrionTeam...is 1.3.5+ a stable release?
RE: Clustering problems.
Come on guys, give the team a break. I too am waiting patiently for docs, but let me tell you all something (I am sure many of you know this), while Orion may not be as robust as WebLogic, WebSphere and some others, I have thus far not seen any app server as complete (hell..over complete if you include ejb 2.0 and servlet 2.3 pre-implementation), as Orion. I have not been able to touch the ease of setting up Orion (with a little help sometimes) compared to WebLogic, OAS, WebSphere, IAS and others. I have not seen the speed from any app server, let alone the full J2EE spec implemented in any app server out there. Nor have I seen any app server as affordable that can do 1/2 as much as Orion. Orion is one of the only app servers that is free to user for everything except production, and it doesn't lock you out if you don't have a concurrent license servlet or some other security lock that prevents full use of it. I think for all of you complaining about the docs taking so long..you need to understand that these guys have done an amazing job with the product already, and are on top of bugs, latest specs, and more. They are also a fairly new company and have already beat the competition by a large margin as much as I can tell. Sure..this may be my opinion, but I have thus far only seen one person stop using it, while most have continued to complain...but still use it. I started a little documentation initiative a few weeks ago and got no responses back (ok..maybe one from the guy that runs the orionsupport.com site). I don't have much time either, but for what the Orion team gives you, how about helping out a little. If you have problems, ask, someone will most likely help you out..then try writing up a little doc on it. Maybe with all of us contributing we can help them along. Who knows..if you contribute maybe you'll get a free license or two to use for your own use. :) Go Orion! P.S. Can I get an X-Large t-shirt...that medium makes me look like I am trying to show off what muscles I pretend to have. ;) -Original Message- From: Karl Avedal [mailto:[EMAIL PROTECTED]] Sent: Friday, September 08, 2000 4:31 PM To: Orion-Interest Subject: Re: Clustering problems. Hello Dylan, (... about lack of documentation) And it isn't like it isn't a known problem. Almost every review of Orion I have seen points out this glaring fact. And this mailing list is seething with people patiently waiting for something that should be already written. Absolutely, documentation is our biggest and most important task (as I've pointed out many times on this list) How about the whole orion team just STOPS coding for a week... (I don't care about 1.2.10!!!)... and fill in the gaps in the documentation. I think it would be a very productive move. Well, even though you might not care about getting new versions every day (of course noone cares for every update) there are many people who are running Orion on their production sites serving thousands of people, or are in the process of going live, and if they find a bug we try to help them with it. We get an enormous amount of reports and requests for enhancements and new features and if we stopped developing for a whole week we would get far behind on helping our customers, and believe me, a week of documentation isn't enough to improve documentation in that many areas that it makes it worth to stop responding to everyone. All I can say is that we are working on documentation (when we're not working on explaining that we are working on documentation ;) ) and that we are aware of the amounts of documentation that you need to work with a product of this complexity. A big problem is also that things are moving so fast. We make something available as a preview (like EJB 2.0) and of course people want documentation and examples the day after (understandable), but it's a tough task to work that fast. Yes, I know the "price is right"... but come *ON*... inexpensive means nothing if the features you need are available but undocumented. Of course. We are working like this: When we have a new feature we start out by giving a little documentation on it so that everything is at least documented (although very briefly) and then we follow up with more complete documentation, but those usually take a fair bit longer to produce. Examples are SSL, Clustering and user management that have had very sparse documentation so far (but Clustering was improved today), and we are working on providing complete tutorials and how-to's about these subjects. We understand that you need complete and good documentation to work with our product, and if you can not live with the state of the current documentation, you should of course look at other products that fit your needs better. We are doing our best to make sure that Orion is the best J2EE server and we certainly are working on making sure that everyone can use it, and I
RE: Orion Difficulities....
Title: Orion RMI Security problem For the original poster.. I think you were a bit harsh to say you would remove them from your vendor list. I would hope that you don't give up on all tasks that require a little more time. Funny thing is, I can't get WebLogic 5.1 to get my site going. I have done a number of different things, including a WebLogic tech guy who can't get my "easy" J2EE .war formatted web site to run. I finally got JSP pages to compile, but then it couldn't find any of my classes. I thought I read that anything in the WEB-INF/classes and WEB-INF/lib file is supposed to be automatically in your classpath by the app server. So, if for example you call upon a class com.mycompany.package.Class, and its in the /classes/com/mycompany/package/Class.class, you should be able to access it without having to do anything special in the environment of the OS your in, or adding classpath information when starting WebLogic. Apparently this isn't so, and its been a bitch to set up. I'll give you that Orion has not much in the documentation department, but for the most part I was able to easily set it up inside of 10 minutes. It is the only app server to fully support J2EE completely, even over WebLogic 5.1. It also now supports EJB 2.0 and Servlet 2.3. Yes..they are early, based on the not yet finalized specs, but still.. Anyways, its too bad so many people give up so easily without realizing what a great product Orion really is. Every product has their bugs. The good thing is, the Orion team does a darn good job on fixing bugs quickly, within a few days at most. -Original Message-From: Richard Landon [mailto:[EMAIL PROTECTED]]Sent: Friday, September 08, 2000 5:49 PMTo: Orion-InterestSubject: RE: Orion Difficulities Wow, thanks. Perhaps, I'm lame, but that was not obvious in the documentation? -Original Message-From: Jason von Nieda [mailto:[EMAIL PROTECTED]]Sent: Friday, September 08, 2000 4:09 PMTo: Orion-InterestSubject: Re: Orion Difficulities Remove the port (8080) from your ormi URL. The admin port is different from the web port and is configured in orion/config/rmi.xml - Original Message - From: Richard Landon To: Orion-Interest Sent: Friday, September 08, 2000 4:51 PM Subject: Orion Difficulities I am have some major problems with the learning curve with this server. I have previously used (succesfully) (1) J2EE RI (2) Web Logic 5.1 (3) IAS (4) Silverstream (5) Gemstone/J I start the server as follows: [C:/orion] java -jar orion.jarOrion/1.2.9 initialized I take this to mean the server is running. I then do a http://blazer.youbet.com:8080 and see the web page. (I modified the port since I'm already running Apache on port 80). For example, according to the documentation, to shutdown the server: [C:/orion] java -jar admin.jar ormi://blazer.youbet.com:8080 admin root -shutdownError: javax.naming.NamingException: Lookup error: java.io.StreamCorruptedException: Caught EOFException while reading the stream header; nested exception is: java.io.StreamCorruptedException: Caught EOFException while reading the stream header So after two-days, it is not possible to figure out how to shutdown the server. I'll try a little bit long, then remove this server from our vendor list.
RE: clustering/load balancing
Yes. Its very easy. Look in the /docs folder for clustering info, but basically you do this. IN /config/server.xml, add the line cluster id="X" / where X is a unique number on EACH server of the cluster. Thus, each server has Orion running on it, X will be different on each of these copies of Orion. Then, in the WEB-INF dir of a web-app, you'll see an orion-web.xml file, add cluster-config / to that file. your set! The one thing I haven't been able to test yet is if I shut down one clustered server, then restart it, if the session data gets replicated to it again automatically. It should, but I have yet to see if that works.
RE: clustering/load balancing
Heh..yeah. I have clustered two servers. When I hit one IP to one of the servers, the session objects show up in both. However, I did shut down on server, then restart it, and the session data no longer shows up on that server. Even though I am not using a load-balancer, I would assume that as soon as the server starts up, it gets in the loop of that multi-cast thing that gets sent out. I also am not sure, but I thought that each server broadcasts every so often, like every 15 seconds or something (is this configurable?). So, if that is the case, when a new server starts up (whether its an addition to the farm, or a server that died and was restarted), it should be picked up by other server(s) on the farm (island as Karl called it) and then get session data replicated to it automatically. I would think this should work even without using a load-balancer, but I could be wrong. I haven't tried the round-robing DNS approach, so I am not sure if this is a bug with Orion, it doesn't support it, or it requires a load-balancer to properly work. As Mike said..how about it Orion Team? I know I am still waiting for a document Karl said would be done last week. Haven't checked the site myself yet but I assume by the questions still coming, the document isn't done yet? Thanks. -Original Message-From: Mike Sick [mailto:[EMAIL PROTECTED]]Sent: Wednesday, September 06, 2000 11:50 AMTo: Orion-InterestSubject: Re: clustering/load balancing Kevin, I thought it was in interesting question as well. Team Orion, how bout it? Mike snip/ The one thing I haven't been able to test yet is if I shut down one clustered server, then restart it, if the session data gets replicated to it again automatically. It should, but I have yet to see if that works.
RE: Newbie - Am I going mad? Broken links on home page
Title: RE: Newbie - Am I going mad? Broken links on home page Uh..Servlet 2.3 tutorial? Does Orion already implement Servlet 2.3 and JSP 1.2? -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Magnus RydinSent: Thursday, August 31, 2000 11:30 PMTo: Orion-InterestSubject: RE: Newbie - Am I going mad? Broken links on home page Hi all, im sorry for the broken link to the Tools tutorial. I managed to break it while putting up the link to the new Servlet 2.3 Filter tutorial. The new Filter tutorial is just started, so please give us some days to fill it up with usefull tutorials before flaming our mail about it :) WR -Original Message- From: Darren Gibbons [mailto:[EMAIL PROTECTED]] Sent: den 1 september 2000 04:33 To: Orion-Interest Subject: RE: Newbie - Am I going mad? Broken links on home page Hi Kimberly, Not sure if you noticed this already, but the link is actually http://www.orionserver.com/tutorials/tools/. First time I've seen it though -- looks useful. Kudos Orion team. Darren. -- Darren Gibbons [EMAIL PROTECTED] OpenRoad Communications ph: 604.681.0516 Internet Application Development fax: 604.681.0916 Vancouver, B.C. http://www.openroad.ca -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: August 31, 2000 6:46 PM To: Orion-Interest Subject: Newbie - Am I going mad? Broken links on home page Hiya, I've been using Java for some time (but not J2EE) and have some 25+ years IT experience, so being a newbie is a bit of new experience... :-) I've downloaded just about everything relating to Orion I can for study. On the front page of the Orion home site there is a link to some stuff I would like to read, but unfortunately it leads to a "Sorry, page not found" page. The link is: http://www.orionserver.com/toolstut/ and is pointed to by the "New tools tutorial available" and "... the GUI Tools tutorial". Any ideas on this anybody? One last note. My newbie question: I'm currently trapped in a M$ shop using W2K and asp. I've been given a green light (after much debate) to move towards Java and J2EE. I can't use Linux or Solaris unfortunately as that would be pushing the envelope a bit too much... :-) In any case, has anybody gone through this process with Orion before? My reason for asking is that I have two Rack Compaqs running the Web-End load balanced off an Intel load balancer, with a SQL7 Cluster at the back end in a "lights-out" environment. The web site is using the absolute minimum of Site Server Commerce Edition I could get away with. This raises the question of how entity beans running on the web-end communicate so as to avoid two beans (one on each box) representing the same row in the database. It's probably old hat to you guys, but I'm drowning in books at present and I can't seem to find that specific answer. Kimbo Ms Kimberley Scott Senior Web Developer Peakhour Pty Ltd http://smartoffice.com.au - my site http://peakhour.com.au - company site
RE: URLs in web apps
HI, Is that a HTML 4.0 tag? I never saw that one before. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Mike Clark Sent: Friday, September 01, 2000 6:48 AM To: Orion-Interest Subject: Re: URLs in web apps Alternatively, you could use this syntax... html head base href="%= request.getContextPath() %" / /head body a href="file.jsp"click/a /body In general, the servlet engine automatically maps the directory name to the application, but references to URLs from standard HTML tags are not automatically mapped. When the base href tag is used, all relative URLs are resolved relative to this value. If your application is mapped to the directory "myapp", then in the example above the href would reference "/myapp/file.jsp". Mike Kevin Duffey wrote: I think your ok..but I use the request.getContextPath() in a "included" header file on all my JSP pages. I assign it to a contextPath string var and use it in all my href tags a href="%= contextPath %/path/file.jsp"click/a But, I believe the spec allows relative paths to the root of the web app. So, if your root is /, and the dir is i3-web, and you have a linke to /path/page.jsp, it would be from /i3-web/path/page.jsp. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Kurt Hoyt Sent: Thursday, August 31, 2000 7:31 PM To: Orion-Interest Subject: URLs in web apps I've noticed an inconsistency in how URLs are used within the servlet engine in Orion. Perhaps I've never had to deal with this since this is the first servlet engine I've used that supports .war files, server.xml, web.xml files, etc. I have a web app that is deployed like this: server.xml contains this line: application name="i3" path="../i3"/ default-web-site.xml contains this line: web-app application="i3" name="i3-web" root="/i3"/ application.xml contains these lines: /module web web-urii3-web/web-uri context-root//context-root /web /module I expect that absolute URLs used anywhere in my JSPs (and that includes a href="..", %@ include file="..." %, and response.sendRedirect() calls) would look like this /i3/rest of URL. However, I've noticed that for anything other than a href="..." tags, the /i3 is implied and all I need is /rest of URL for absolute paths. I have two questions: 1. What does the context-root element do? The servlet and JSP specs are pretty vague about this. 2. Should I be calling request.getContextPath() and using it to create absolute URLs for a href="..." tags or just try and use relative URLs within the a href="..." tags? Kurt in Atlanta -- // // // Mike Clark // // Clarkware Consulting // Enterprise Java Architecture, Design, Development // // http://www.clarkware.com // [EMAIL PROTECTED] // +1.720.851.2014 //
RE: documentation broken??
Haha...I thought the very same thing. I was reading the docs and noticed its like that all over the place. Oh well..its a good product and the price is right..that is what I keep saying to myself. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Duane Fields Sent: Thursday, August 31, 2000 7:35 AM To: Orion-Interest Subject: documentation broken?? Am I going crazy or does the documentation appear to be missing the ends of sentences everyone? I'm not talking about quality of documentation, I'm talking about data appearing to be lost. I redownloaded the zip today to make sure, and here a representative excerpt from server.xml.html rmi-config path="./rmi.xml" / Defines the relative/absolute path to a path - The path. jms-config path="./jms.xml" / Defines the relative/absolute path to a path - The path. -- Duane Fields [EMAIL PROTECTED] Managing Engineer, Web Development
RE: How to Host Multiple domain on orion?
Oh..ok. Look in the DOCS folder..under orion-web.xml.html. There is an ability to assing virtual-hosts there for each web-app deployed. -Original Message- From: devendra orion [mailto:[EMAIL PROTECTED]] Sent: Thursday, August 31, 2000 2:41 PM To: Orion-Interest Cc: [EMAIL PROTECTED] Subject: How to Host Multiple domain on orion? Hi!: Thanks! Actually i want to setup multiple domain names using single IP. Like in apache you can do it using NameVirtualHost parameter. eg: www.domain1.com www.domain2.com www.domain3.com but all websites has same IP address Devendra --- Kevin Duffey [EMAIL PROTECTED] wrote: If your talking about where each user of an ISP can have their own dir, including www dir for their own site, I know its easy to do..I just haven't done it myself. I recall that its something like www.mycompany.com/~username/ to allow access for each user. Sorry..I don't know how to do it..but its possible. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of devendra orion Sent: Wednesday, August 30, 2000 4:34 PM To: Orion-Interest Subject: How to Host Multiple domain on orion? Hi!: Hi! i am planning to host all my domains on orion. Can anybody help me doing it? I know it is possible to have virtual hosting but nothing is mentioned about multiple domain using single IP. Thanks Devendra __ Do You Yahoo!? Yahoo! Mail - Free email you can access from anywhere! http://mail.yahoo.com/ __ Do You Yahoo!? Yahoo! Mail - Free email you can access from anywhere! http://mail.yahoo.com/
RE: Newbie - Am I going mad? Broken links on home page
Hi, I have been given the green light here to move ahead with Orion deployment as well. Although we are not as sophisticated a setup as you, we will be moving in that direction shortly. We are moving ahead with Orion while we evaluate WebLogic and iPlanet to see if we want to pay those outrageous amounts of money for offering not quite as much as Orion does. However, I have seen very little problems with most areas of Orion. I have heard from some friends using it though that the EJB stuff has problems in various areas. What exactly, I don't know. I have also heard of some success stories in this list as well. I think one of the problems is that because the Orion team does such a good job on fixing problems and providing updates, some of us often go get the latest version. This may prove to cause problems in other areas. This is just a guess. For the most part, I have only seen a few bugs crop up that were new with a bug-fix patch. But other than that, Orion is very easy to use, it WORKS, it actually does conform to J2EE specs unlike many infintely more expensive solutions, and I have generally heard great things about it. For whats it worth, I would be my company on it over other choices. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Thursday, August 31, 2000 6:46 PM To: Orion-Interest Subject: Newbie - Am I going mad? Broken links on home page Hiya, I've been using Java for some time (but not J2EE) and have some 25+ years IT experience, so being a newbie is a bit of new experience... :-) I've downloaded just about everything relating to Orion I can for study. On the front page of the Orion home site there is a link to some stuff I would like to read, but unfortunately it leads to a "Sorry, page not found" page. The link is: http://www.orionserver.com/toolstut/ and is pointed to by the "New tools tutorial available" and "... the GUI Tools tutorial". Any ideas on this anybody? One last note. My newbie question: I'm currently trapped in a M$ shop using W2K and asp. I've been given a green light (after much debate) to move towards Java and J2EE. I can't use Linux or Solaris unfortunately as that would be pushing the envelope a bit too much... :-) In any case, has anybody gone through this process with Orion before? My reason for asking is that I have two Rack Compaqs running the Web-End load balanced off an Intel load balancer, with a SQL7 Cluster at the back end in a "lights-out" environment. The web site is using the absolute minimum of Site Server Commerce Edition I could get away with. This raises the question of how entity beans running on the web-end communicate so as to avoid two beans (one on each box) representing the same row in the database. It's probably old hat to you guys, but I'm drowning in books at present and I can't seem to find that specific answer. Kimbo Ms Kimberley Scott Senior Web Developer Peakhour Pty Ltd http://smartoffice.com.au - my site http://peakhour.com.au- company site winmail.dat
RE: URLs in web apps
I think your ok..but I use the request.getContextPath() in a "included" header file on all my JSP pages. I assign it to a contextPath string var and use it in all my href tags a href="%= contextPath %/path/file.jsp"click/a But, I believe the spec allows relative paths to the root of the web app. So, if your root is /, and the dir is i3-web, and you have a linke to /path/page.jsp, it would be from /i3-web/path/page.jsp. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Kurt Hoyt Sent: Thursday, August 31, 2000 7:31 PM To: Orion-Interest Subject: URLs in web apps I've noticed an inconsistency in how URLs are used within the servlet engine in Orion. Perhaps I've never had to deal with this since this is the first servlet engine I've used that supports .war files, server.xml, web.xml files, etc. I have a web app that is deployed like this: server.xml contains this line: application name="i3" path="../i3"/ default-web-site.xml contains this line: web-app application="i3" name="i3-web" root="/i3"/ application.xml contains these lines: /module web web-urii3-web/web-uri context-root//context-root /web /module I expect that absolute URLs used anywhere in my JSPs (and that includes a href="..", %@ include file="..." %, and response.sendRedirect() calls) would look like this /i3/rest of URL. However, I've noticed that for anything other than a href="..." tags, the /i3 is implied and all I need is /rest of URL for absolute paths. I have two questions: 1. What does the context-root element do? The servlet and JSP specs are pretty vague about this. 2. Should I be calling request.getContextPath() and using it to create absolute URLs for a href="..." tags or just try and use relative URLs within the a href="..." tags? Kurt in Atlanta
RE: Orion and InterBase
Hi, A couple of things I wanted to ask you (or anyone that knows). First, while its a bit off topic..I just read up on InterBase 6, and discovered that it is free, open-source. InterBase is a pretty nice RDBMS, and I am not sure if its better than say Hypersonic SQL, mysql, and any other free one, but it is pretty nice for a free one. On that note, would you happen to know if InterBase 6, because its open-source and free now, is not as powerful (lacks features maybe) as the 5.5, 5.6 versions? I had the 5.6 version installed and it seemed to have a few other things on the properties windows that come up that the 6.0 doesn't have. My thought here is that perhaps they changed the way the windows are..but my main concern is..is it a full featured RDBMS like the commercial product used to be (and better since its a newer version), or is this free version lacking some stuff and you have to pay for it, or the licenses for connections? Second, we place our Oracle JDBC.jar driver in the WEB-INF/lib dir of our apps. Is there a reason this wont work with InterClient.jar? I would rather place it in orion/lib so that all apps running have it..but I was just curious if there is some reason you couldn't do this. Third, any idea on how to use the driver in the Class.forName() call? I have the InterBase 6 server running on my box, but I would like to load the driver in Java and use it. I can't find any instructions on this so far. Fourth, tied to the third, I only have one server right now, but when I get a second one, I want to move Interbase to it so that I am not hitting a local copy of the database server. Is there any differences in how to access the database? I assume its just //servername/path or something like that. Here at work we use an IP address to hit our oracle database, passing to it the password, login, etc. I am wondering if with various databases each require a different setup, or if there is some "standard" way to access any RDBMS, no matter what it is..so long as you have the jdbc2.0 .jar for it. Last, is there any way that you may know of to fail-over InterBase? Thanks.
RE: Using development=true
My understanding is that you need to have orion-web-app development="true" source-directory="drive:path" ... / Also, any objects stored in the HttpSession must be implementing Serializable or you'll have problems. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Mike Clark Sent: Wednesday, August 30, 2000 1:58 PM To: Orion-Interest Subject: Using "development=true" Is anyone successfully using the development="true" option for web applications where the web application classes and the non-web application classes share the same root directory? For example, if you have all your classes rooted in d:/projects/com/xyz/, you can point the reloading classloader to this directory by adding the following to the global-web-application.xml file... orion-web-app jsp-cache-directory="file:d:/orion/persistence/jsp" servlet-webdir="/servlet" development="true" autoreload-jsp-beans="true" classpath path="file:/d:/projects" / ... /orion-web-app The servlet engine will automatically compile and reload servlets (and referenced beans) contained within this root directory that have been edited. However, if you add the same directory to the application.xml file, as in... library path="file:/d:/projects" / then the standard (non-reloading) classloader will take precedence over the reloading classloader used by the web application, and edited servlet files will no longer be reloaded. I understand that I could break up my directory hierarchy into two separate roots, for example d:/projects/apps/com/xyz/... d:/projects/web-apps/com/xyz/... and use the d:/projects/apps in the application.xml and the d:/projects/web-apps in the global-web-application.xml. I also understand that these apps could be deployed as separate JAR and WAR files, but this isn't very convenient in development mode. It's common to root all classes in a single directory, so I'm interested to hear how others may be tackling this problem. Mike __ Do You Yahoo!? Yahoo! Mail - Free email you can access from anywhere! http://mail.yahoo.com/
RE: Orion and InterBase
Hi, I have InterBase at home (Used to work for Borland on the C++Builder 4 application..got a free copy of it..which comes with InterBase Server 5.5, Type IV driver, etc). I want to start creating some "generic" SQL scripts that will work on all databases. These would be to create a database, create a table(s), and insert data, search, update, delete, etc. Is it possible to use InterBase at home, but deploy using IBM DB2, Oracle 8i, or even mysql. The main reason is I want to set up a way to apply schema changes as needed to any database in a generic standard way. So, can I set up my site using InterBase, and easily move the schema to any other database? IS that what JDBC 2.0 does for you. Not sure what the whole DataSources if for, and how it applies to various app servers. Also, does the DataSource stuff that Orion is using work on other app servers, or is it strictly for Orion to work its connection pooling? Thanks. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of J.T. Wenting Sent: Monday, August 28, 2000 11:31 AM To: Orion-Interest Subject: RE: Orion and InterBase it works fine. Just copy interclient.jar to /orion/lib I use the following schema-xml: ?xml version="1.0"? !DOCTYPE database-schema PUBLIC "-//Evermind//- Database schema" "http://www.orionserver.com/dtds/database-schema.dtd" database-schema name="Interbase" not-null="not null" null="default null" primary-key="primary key" max-table-name-lenght="30" type-mapping type="java.lang.String" name="varchar(255)" / type-mapping type="int" name="number(20,0)" / type-mapping type="long" name="number(20,0)" / type-mapping type="float" name="number(20,5)" / type-mapping type="double" name="number(30,0)" / type-mapping type="byte" name="number(10,0)" / type-mapping type="char" name="char(1)" / type-mapping type="short" name="number(10,0)" / type-mapping type="boolean" name="number(1,0)" / type-mapping type="java.util.Date" name="date" / type-mapping type="java.io.Serializable" name="blob" / disallowed-field name="password" / disallowed-field name="date" / /database-schema which seems to work. Any improvements are welcome ;) Jeroen T Wenting [EMAIL PROTECTED] ICQ UIN #9191966 It's the end of the world as we know it and I feel fine (Michael Stipe) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of A. Gregory Rabil Sent: 28 August 2000 15:35 To: Orion-Interest Subject: Orion and InterBase Has anyone experienced connecting Orion to InterBase 6.0. I've been successful hooking Orion up to several RDBMS via the JDBC-ODBC bridge. With InterBase, the InterClient package provides the connectivity and the JDBC driver. My data-sources.xml file looks something like the following: data-source name="Default data-source" class="com.evermind.sql.ConnectionDataSource" location="jdbc/DefaultDS" pooled-location="jdbc/DefaultPooledDS" xa-location="jdbc/xa/DefaultXADS" ejb-location="jdbc/DefaultEJBDS" url="jdbc:interbase://localhost/E:/Inprise/InterBase/data/mydb.gdb" connection-driver="interbase.interclient.Driver" username="user" password="password" / /data-sources The interclient.jar file is in my classpath, but I get an error when I start Orion that it cannot locate the DriverManager "interbase.interclient.Driver". Any ideas? Thanks, Greg
RE: Using strut with Orion
I tell you what..read my post (coming up next) on "getting Orion to work". I'll place in it my server.xml, application.xml, web-site.xml and other config files to help those along. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Derek Akers Sent: Friday, August 25, 2000 12:38 PM To: Orion-Interest Subject: Re: Using strut with Orion ok, here's a really simple question, so I'm hoping that someone will be able to help... Trying to deploy an application using the method described in Orion-Primer (http://www.znerd.demon.nl/orion-primer/). However, that example does not containn any html or jsp pages... My question is this: in what directory/subdirectory (lib, rel, src) do the html and jsp pages go, and what modifications need to be made to server, web, default-web-application, ejb-jar and build.xml files to reflect the fact that this application hjas an index page and other html and jsp pages? derek akers.
How to deploy with Orion..including config files.
Hi all, I have seen alot of questions on this list about how to get Orion to run. I have also seen these on other lists (jsp, struts). So I am going to "paste" my config files that I have on my local box that runs Orion. These are strictly my settings..there are probably other ways to get Orion to run. Ok..so, the first step is to setup some sort of "start" script. I created a .bat file (assuming your in MS Windows) that looks like so: c:\java\jdk13\jre\java -jar orion.jar -console2 This is saved in the c:\orion dir, (that is where i have orion installed). Create a short-cut on the desktop to this and your ready to start orion (as an application..not a service). If your using linux, unix, etc..you may have some different way of doing this. Sorry..I haven't tried doing so on a different platform yet. Now, there are a few config files you need to "modify". Like I said..my way of doing it works, but it may not be the same way some other people have done it. Here is the paste of server.xml which resides in /config of orion root. *** ?xml version="1.0"? !DOCTYPE application-server PUBLIC "-//Evermind//DTD Orion Application-server//EN" "http://www.orionserver.com/dtds/application-server.dtd" application-server library path="../lib" / rmi-config path="./rmi.xml" / data-sources path="./data-sources.xml" / principals path="./principals.xml" / log file path="../log/server.log" / /log transaction-config timeout="3" / global-application name="bm" path="c:\\bm\\" / global-web-app-config path="global-web-application.xml" / web-site name="bm" path="./bm_web.xml" / cluster id="124" / /application-server You'll notice that I deleted some things, and I am also not using the default-web-site.xml file. I chose to do this myself. So, the global-application MUST be there. I changed it from default to bm, which is the initials of the company I work for. I also set the path to a local dir, instead of inside the orion dir. I prefer this because we are still evaluating app servers and I don't want to be dependent on a specific dir under an app server. It also allows me to sort of organize a standard dir for all of our developers so that its in sync if we copy it from one place to another. Ofcourse we could do this if it was under the Orion folder as well..but people may install orion in different drives, paths, etc. This way, the root is always c:\ and its easily changeable. The rest of the tags, except the web-site.. tag are part of the original server.xml file. I did add the cluseter id="124" / to cluster my orion app server with another box for fail-over. I'll write up on that some other time..I have a few more things to learn about how Orion does this before I can write up on it. Lastly, web-site name="bm" path="./bm_web.xml" /..I decided to leave the web-site config file in the /config path..it is an Orion specific config file, so it won't move to other app servers if we go to another app server. You can add more of these web-site.. tags if you like if you have other web sites to deploy under one instance of Orion. Now, in c:\bm\ I have a few dirs. I run our internal admin site as well as our www production site with a single instance of Orion, and to "standardize" and organize our dirs (as well as preparing it for a .ear format), I have structured the dir like so: c:\bm\live-www c:\bm\admin-www c:\bm\properties c:\bm\logs c:\bm\META-INF The application name is BM, as depicted in the server.xml global-application tag. Its path is c:\bm, and thus a META-INF dir must be present. In META-INF I have one file, application.xml. This is a J2EE standard application deployment descriptor. Orion creates 3 other files when an application is deployed that are specific to Orion. These I'll leave for you to look at. My application.xml config file looks like so: * ?xml version="1.0"? !DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN" "http://java.sun.com/j2ee/dtds/application_1_2.dtd" application display-namebm/display-name module web web-urilive-www/web-uri context-root//context-root /web /module module web web-uriadmin-www/web-uri context-rootadmin//context-root /web /module security-role role-nameadministrators/role-name /security-role security-role role-nameusers/role-name /security-role /application * The only thing I modified was the display-name tag to put the name of my application BM in there. I also added two module tags. Please read
Orion clustering..need some detailed info
Hi Orion team (and fellow enthusiasts): I have asked this before and didn't get a chance to follow up on it. I have successfully clustered Orion. But I have a few questions that I really need answered before I can deploy our site on Orion. First, while clustering it is unbelievably easy, I would love to have a little more detail as to the use of the id in server.xml cluster id="xxx" /..what exactly does this do? Is it really just any random number I enter for each server? Or is there some special way I should derive this value? Second, the orion-web.xml cluster-config tag. I see three options. host="some ip address", id="xxx" and port="xxx". I have a general id. But I would like a little more detail as to how each is used. I understand that the host and port are the cluster communication route, but can I change these values to anything? I know the port needs to be a port that ALL orion servers in the cluster choose (which means, if I have 10 servers, all 10 have this host value set to the same value). But, is this value internal to the LAN that all servers are on? So, can I set it to say 1, 10, 1000, etc, and it works? Or is there a specific range that needs to be considered? I realize port 80 is for http, 21 is ftp, etc. The host ip address..is that a random ip as well? Our lan range is from 206.xxx.xxx.yyy where yyy is 0 to 255 and we own that entire range (lease it I should say). IS the default ok to use at all times? Or should I change it for any reason (if so..why?)? Lastly, the id. Is this the same id that the server.xml config id="xxx" / is set to? Or is there another use for this? Third, I want to work with two tiers. One for servlets, one for EJB. Each is a clustered tier. If I want to cluster EJB separate from Servlets (which I assume is the way to do it), can I just change the port setting on one tier (so ejb tier has each server pointing to say 9128, where as the servlet tier is 9127), and the host and id is default value..and it works? Or is their special considerations to getting two separate tiers clustered, but still able for the servlet tier to get ejb homes and stuff? Fourth, I have not tested the cluster with a load-balance, but I have two servers running, clustered. Each has their own ip address. I hit one ip address and see the site show up. In the console app of BOTH servers in the cluster, I see the same session id show up under the app (if anyone reading this doesn't know what I mean by console app..run orion with java -jar orion.jar console2. You'll see a swing app show up, and you can expand the http tree to see web-apps that are deployed. You can then expand each web-app and a sessions tree shows up. Click on that and you'll see the sessions that exist under that app, and their data for each session (when you click on a session on the right pane)). The problem is, if I click on the "other" machines session, it has the same session key name, but the session data is something lke @bab20 instead of the actual session data names. What exactly does this mean? I thought that when two or more servers were clustered, the same session keys AND data were duplicated on all machines. That way, if the server that created the session data, and it died, the other server would retain it so that when the next request came in...the user would still be "active" on the site. Is this not the case? Fifth, tied to the above, if two or more servers are clustered and I have a session alive (shows up on both), then I shut down one servers Orion, the other one should remain active..right? I still see the session data on the other one. What I am confused about, and maybe this is because I am not using a load-balancer yet, is if I hit ip xxx.xxx.xxx.1, and the session data is created there and replicated to xxx.xxx.xxx.2 server. Then I shut down the .1 server, and I go hit the .2 server (www access), the session does not exist for me..it creates a new session over there. So what I am wondering is, if I shut down one server, when the client hits the ip (load-balancer) does that client still have an active session? Is the data saved on both servers? Also, when the server that is down starts up again (or you add a new server to the cluster), does the data on the existing server get replicated to the other server that just got added? Or does this not happen automatically? I thought that if for example one server went down, the client doesn't lose their session information, and that you can bring up the server that went down (or add one or more boxes to the cluster) and they all get automatically replicated to. So if someone can explain exactly how this works that would be great. Do I need a load-balancer in order to test this? Is there any way, say using DNS round-robbing or something, that I can test this? Is there a way to set up one server that will "ping" two or more clustered servers, and alternate between them sending them requests, and if one is down it sends all requests to the one server that is
RE: Orion clustering..need some detailed info
Hi, Haha..these points I brought up I feel are pretty important ones to the success of clustering. I was told that Orion's clustering capabilities are no where near as good as big-name app servers, and I fought hard to disagree with that. But now I need to see proof. While the argument of replicating sessions to all servers versus a "buddy" setup like WebLogic and SilverStream do it (only two servers do object replication, thus making it faster since the traffic on the network to hit every server on the farm is reduced, as well as object creation time is reduced, as well as memory overhead (all systems having to have enough memory for all the servers objects each) ). My main need is that when a server goes down, then comes back up, that it immediately gets replicated the rest of the sessions on the farm, as well as if we add a new server to the mix. I would think Orion employs some sort of pinging system to every 15 seconds or so ping on the port and ip, and every server "broadcasts" on the same port. As soon as it "hears" the other server..it is replicated to or replicated from (which ever way it may go). The other thing..ofcourse, is to make sure that if we use a load-balancer and two servers, and one goes down, that the clients session stays alive and they don't know what is happening..other than maybe a little drain if there is a lot of activity. I am anxiously awaiting the replies on these questions..because I can't deploy on Orion if it can't do this type of session fail-over and automatic session replication when servers restart or are added. On the other hand, at least I am getting the chance to deploy on Orion now..instead of WebLogic. I almost cried when my boss finally agreed to use Orion, even if its for a time so that we can evaluate iPlanet and WebLogic. At least it moves us off of IIS/JRUN 2.3, and into the Servlet 2.2/JSP 1.1 domain, along with the ability to start EJB deployment. -Original Message- From: Dylan Parker [mailto:[EMAIL PROTECTED]] Sent: Friday, August 25, 2000 9:59 PM To: Orion-Interest Cc: Kevin Duffey Subject: Re: Orion clustering..need some detailed info My, god.. you have expressed every single point that we are also fighting with over here =) Orion team... you mentioned earlier that there was Cluster-Guide in the works... what's happening with it? What's the status? When can we view it? Even a draft?? My company is very seriously considering Orion as our application server in a high-traffic situation and part of that decision is based on the effectiveness of Orion's clustering... and so far we feel like we're floundering a little. Thanks, Dylan Parker
RE: Documentation initiative
Hi Karl, I will try to make a list of areas where it would be easy to contribute in documentation and in source code and get back to this. Of course we are not expecting you to get nothing out of this yourself if you contribute, so there should be some kind of reward connected to contributing. Any ideas? Yea...two. A sort of "credit" page on the Orion ABOUT boxes or in readme files. Second, free licenses to Orion. I for example would like to do some web-sites with Orion, but due to costs..as cheap as it is..I myself can't afford it right now. If maybe you can offer in trade of some work (that you deem worthwhile), licenses for production use of Orion, that would be good.
RE: Performance
Its impressive, but that depends on what your testing it with, and what the test is doing. Is it just a simple JSP page return with static html in it..or are you hitting the database such as a login process? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Cory Adams Sent: Sunday, August 20, 2000 9:33 PM To: Orion-Interest Subject: Performance I don't normally send gifs around but this is only 11 kb. It shows the orionconsole (1.2.0). Check the Hits averages for the last minute and hour. The machine is a Pentium III 650 (notebook), Orion 1.2.0, jdk 1.3 with two instances of the test app (each running a separate vm on the box as well) hitting a modified HelloWorldServlet that does several small calculations. Does anybody else think that is impressive performance or not? I don't have much to compare against. Thanks, Cory
RE: Clustering in Orion
Title: RE: Clustering in Orion There are docs in the /docs folder on orion-web and orion-application. You brought up a point though that I am not aware of...I have to manually put in the cluster-config / in orion-web.xml. Maybe by putting in distributable / in web.xml, Orion automatically puts in the cluster-config / into orion-web.xml. orion-web.xml is created by Orion when the web-app is deployed. I know you generally put in the cluster stuff in server.xml, and since I don't change anything in the orion-web.xml..i just use the default, I am now not sure if I am supposed to do that manually or not. If I delete it, Oroin regenerates another orion-web.xml next time i start it..but it doesn't put in the cluser-config / setting again. Also, don't you have to do some special programming when using the distributable / in web.xml? Any documentation on what it is you have to do when using this? Thanks. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Hani SuleimanSent: Friday, August 18, 2000 8:53 AMTo: Orion-InterestSubject: RE: Clustering in Orion I'm somewhat confused here My WEB-INF directory has a web.xml file in it. The docs say that to cluster it, it should have distributable / in it. Now, what's the difference between web.xml and orion-web.xml? Which should my webapp have in its WEB-INF directory? In fact, I've noticed the same kind of difference with applications, with orion-application and application. the non orion- versions of the files are documented, while I can't seem to find docs for the orion- ones... -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Kevin Duffey Sent: Thursday, August 17, 2000 6:16 PM To: Orion-Interest Subject: Re: Clustering in Orion I have clustered Orion, but there is alot I don't know about it. I have learned that Orion does session replication to every server in the cluster farm. I have not been able to test it with a load-balancer yet. Anyone happen to know of a "free" software load-balancer that can be used to test multiple servers with? Clustering with Orion is easy. You just add a cluster id="x" / to server.xml on each server in the Orion/config dir. x is equal to a unique number on each server. then you add a cluster-config / to each orion-web.xml in the WEB-INF dir of a web app. That should cluster it. There are a number of issues I am not sure of however. If you run orion with the -console2 option, it brings up a SWING based admin console, and you can open the http tree and see the web-apps running, then look at sessions in each of those apps. When I cluster two servers, and hit one, the session data appears in both servers. However, on the server that the session was not created on, the values of the objects in the session are not available. This confuses me because I figured if I hit the other server that has been replicated to, and passed along the session ID (jsessionid=xxx), that it would automatically make that session available to me. However, one of our engineers mentioned that a session is stored via the ip address being hit. Thus, even though the session data is saved on two servers, trying to access the same session from two different ip addresses won't work. My only dilema here is..if a server goes down (say the one the session data was created on), so only one is left, does that automatically take over? I can't get this to work because I don't have a load balancer. I assume using a load-balancer is easy enough and this would work. Anyone from the Orion team care to respond..that would be great if you could explain how this is done. Thanks. - Original Message - From: "Joseph B. Ottinger" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Cc: "Orion-Interest" [EMAIL PROTECTED] Sent: Thursday, August 17, 2000 9:55 AM Subject: Re: Clustering in Orion If I had any information about it, sure. I only have one machine; clustering isn't really an option for me. On Thu, 17 Aug 2000, Pedro Garcia Lopez wrote: Hello Joseph, Congratulation for your interesting site about Orion.My question is about clustering ? Do you plan to include some help in this issue ? Regards, Pedro --- Joseph B. Ottinger [EMAIL PROTECTED] http://cupid.suninternet.com/~joeo HOMES.COM Developer
RE: Clustering in Orion
That is a good way to test without a load-balancer. Thanks. However, the other dilema I have..and maybe you can check this in the short-term with an email or post here, but when you shut down one server, then restart it, does the session data in the other running server get replicated back to the newly added (or restarted) server? If so..how long does it take, does it require any special settings, etc? I ask because when I restarted my server, Orion started fine, but even after clicking around the site, I only see the contents of the server I am hitting changing, and I don't see any new sessions created on the newly started server. I am concerned that if one server goes down and then then restarts, then the other one went down, the sessions end up not getting replicated to save them. Thanks. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Joel Shellman Sent: Thursday, August 17, 2000 5:21 PM To: Orion-Interest Subject: Re: Clustering in Orion Quick and dirty "load balancing" is round robin DNS. I just did a quick test the other day and set up two machines with our app. Hit the URL once and logged in (keeps object in session). Killed the app on one machine and hit reload. I was still logged in on the other machine. I got some errors as Netscape didn't choose to look at the other IP (in RR DNS you specify multiple IPs for a single domain name) right off. But it did show that session failover worked. -- Joel Shellman Chief Software Architect The virally-driven B2B marketplace for outsourcing projects http://www.ants.com/90589781 Kevin Duffey wrote: I have clustered Orion, but there is alot I don't know about it. I have learned that Orion does session replication to every server in the cluster farm. I have not been able to test it with a load-balancer yet. Anyone happen to know of a "free" software load-balancer that can be used to test multiple servers with? Clustering with Orion is easy. You just add a cluster id="x" / to server.xml on each server in the Orion/config dir. x is equal to a unique number on each server. then you add a cluster-config / to each orion-web.xml in the WEB-INF dir of a web app. That should cluster it. There are a number of issues I am not sure of however. If you run orion with the -console2 option, it brings up a SWING based admin console, and you can open the http tree and see the web-apps running, then look at sessions in each of those apps. When I cluster two servers, and hit one, the session data appears in both servers. However, on the server that the session was not created on, the values of the objects in the session are not available. This confuses me because I figured if I hit the other server that has been replicated to, and passed along the session ID (jsessionid=xxx), that it would automatically make that session available to me. However, one of our engineers mentioned that a session is stored via the ip address being hit. Thus, even though the session data is saved on two servers, trying to access the same session from two different ip addresses won't work. My only dilema here is..if a server goes down (say the one the session data was created on), so only one is left, does that automatically take over? I can't get this to work because I don't have a load balancer. I assume using a load-balancer is easy enough and this would work. Anyone from the Orion team care to respond..that would be great if you could explain how this is done.
Cluster stuff..restart of one server doesn't pick up running servers session data...
Hi, Clustering was a breeze, but when I shut down one server, leaving the other one up, why is it when the restart is done the newly restarted Orion doesn't get replicated the sessions any longer? This seems to be a bug to me..when the server starts up in cluster mode, doesn't it ping the other(s) somehow, so that the other(s) would then replicate thier session info to the newly started one? On the same page with this would be if I added more hardware shouldn't when they come up..they get replicated out to? My thought here is that if I have say 2 or 3 servers, I may like to update one of them at a time. So I can bring one down, update it, bring it up, then do the next one, etc. Ofcourse, I would rather deploy the .war file directly if that is possible, but I am not sure how that affects existing sessions if one or more objects in an existing session are part of the code that was uploaded. Thanks.
Re: Clustering in Orion
I have clustered Orion, but there is alot I don't know about it. I have learned that Orion does session replication to every server in the cluster farm. I have not been able to test it with a load-balancer yet. Anyone happen to know of a "free" software load-balancer that can be used to test multiple servers with? Clustering with Orion is easy. You just add a cluster id="x" / to server.xml on each server in the Orion/config dir. x is equal to a unique number on each server. then you add a cluster-config / to each orion-web.xml in the WEB-INF dir of a web app. That should cluster it. There are a number of issues I am not sure of however. If you run orion with the -console2 option, it brings up a SWING based admin console, and you can open the http tree and see the web-apps running, then look at sessions in each of those apps. When I cluster two servers, and hit one, the session data appears in both servers. However, on the server that the session was not created on, the values of the objects in the session are not available. This confuses me because I figured if I hit the other server that has been replicated to, and passed along the session ID (jsessionid=xxx), that it would automatically make that session available to me. However, one of our engineers mentioned that a session is stored via the ip address being hit. Thus, even though the session data is saved on two servers, trying to access the same session from two different ip addresses won't work. My only dilema here is..if a server goes down (say the one the session data was created on), so only one is left, does that automatically take over? I can't get this to work because I don't have a load balancer. I assume using a load-balancer is easy enough and this would work. Anyone from the Orion team care to respond..that would be great if you could explain how this is done. Thanks. - Original Message - From: "Joseph B. Ottinger" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Cc: "Orion-Interest" [EMAIL PROTECTED] Sent: Thursday, August 17, 2000 9:55 AM Subject: Re: Clustering in Orion If I had any information about it, sure. I only have one machine; clustering isn't really an option for me. On Thu, 17 Aug 2000, Pedro Garcia Lopez wrote: Hello Joseph, Congratulation for your interesting site about Orion. My question is about clustering ? Do you plan to include some help in this issue ? Regards, Pedro --- Joseph B. Ottinger [EMAIL PROTECTED] http://cupid.suninternet.com/~joeo HOMES.COM Developer
Setting up a separate tier for servlets and ejbs.
Hi, I am wondering how would you set up two separate tiers, each having their own farm. One would be for the front-end web server and servlets, while the other would be for the ejb tier. Each would have a cluster of servers. The front-end would be for session fail-over (load-balanced somehow). The middle-tier for ejb, logic, etc. For orion to do this, do I have to set the server.xml cluster id="" / to the same value on all servers in the same tier? Or do I set that ID to a different value for each server in one tier, and then we set the host="" ip multi-cast address to something different for the two tiers? If the latter is the case, do I just make up any IP I want (one that doesn't exist in our LAN ip range) and set each tiers servers to that same ip address? Thanks.
Session fail-over of multiple contexts in one app?
Hi, Yet another question related to fail-over...sorry for so many. I have Orion clustered, but I have one app with 4 contexts. I set one context to my root app c:\apps\bm\www, and the other 3 are set to point at c:\apps\bm\admin. They are /radio, /tv and /cable paths, all set in the same web-site.xml file to use the same one application. I am not sure why, but the identical configuration run on two different systems is not working with fail-over. I have tried setting the host IP to a specific IP address as well as [ALL], and neither seems to work. I am using Orion 1.2.0, just incase. Thanks.
RE: Session fail-over of multiple contexts in one app?
Ok..figured out how to get that clustered..or so I think. The one thing I am not sure about..does Orion support the ability to re-establish session replication to a server that went down and comes back up? I see my various apps generating the sessions on the clustered computers, but when I shut one down (and everything does still work), then start that server back up, the session data is not replicated to it anymore. Even after I click around, its still not replicated. This causes the one problem that if one server goes down, then comes back up and the other one goes down..the session data will still be lost. Is this a bug with Orion? Or is there some waiting period before the server that stayed running replicates is session data to the server that restarted? Thanks.
RE: Orion 1.2.0
Title: Orion 1.2.0 Were there any changes? I don't see anything different in this console compared to what I saw in the previous versions. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Hani SuleimanSent: Monday, August 14, 2000 9:40 AMTo: Orion-InterestSubject: Orion 1.2.0 The consoleall I can say is WOW. Now, where do I start reporting bugs against it?!
Orion and HttpSession fail-over..again
Hi, Sorry to repost..but I didn't get any replies. I am wondering how Orion handles session fail-over? Does it replicate each session to all servers on the cluster? Or does it do like WebLogic and SilverStream where it replicates the session to only a second server for performance gains? If so, and the "buddy" dies, does it find another buddy to replicate to (probably via some pinging between the servers every few seconds to make sure they are all active still). If the main one dies does the buddy take over as the main session and try to find another buddy? Mostly this is for the front-end servlet container fail-over. Also, does it automatically load-balance between the cluster as well? Thanks.
RE: Orion hardware?
Title: Orion hardware? Hi, We had some disaster problems with IBMs NetFinity racks. We had to send all 5 back at various times. The HDs died, the systems overheated, etc. They looked nice in principal, but in reality they didn't hold up so well. We now use Dell servers which kick ass. IBM generally makes good hardware..but these 4000 racks were terrible. I think they didn't alot much space for heating. They are small..only 1.5 ru's and all. -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Hani SuleimanSent: Monday, August 07, 2000 3:26 PMTo: Orion-InterestSubject: Orion hardware? I've almost convinced my company to go with Orion as our choice of application server (vs Dynamo, which is horrific). Now, the intended hardware is a bunch of IBM servers, dual pentium's with 1gb of ram, with an F5 load balancer in front. Has anyone experienced any issues with scalability given this hardware? The main concern voiced against Orion is that it isn't a big reliable company that can be held accountable, so I'm concerned on the level of support available. Has anyone had any negative experience here? Also, in terms of OS choice, is anyone happily running a high load site under linux?
HttpSession fail-over and Orion?
Does anyone know how Orion works in a clustered environment with HttpSession fail-over? I see that SilverStream AND WebLogic both do a "buddy" type of system, where the HttpSession of one server is failed-over to a second server only. If one dies..it then tries to find another server to be its buddy. It does NOT replicate each session out to every machine on the n-tier which allows for much faster performance (assuming the more computers you add the slower it would get to replicate to every session on every machine). So how does Orion do it? Is it a buddy type of system..or does it replicate out to every server? Also, does it store sessions to the HD (local) or is that configurable to go to a networked drive (one that is presumably failed over as well). Thanks.
RE: ServletSession's and Servlet Reloading
I am not sure, but in WEB-INF/orion-web.xml, did you make sure the setting for development is set to true? Also, I think ALL session objects must implement serializable for this to work. I am having problems too. I don't know why, but my objects implement serializable and whenever I recompile the code, Orion tries to reload the app but I get class cast exceptions. I always have to restart. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Scott Lawrence Sent: Monday, August 07, 2000 9:12 PM To: Orion-Interest Subject: ServletSession's and Servlet Reloading Orion 1.1.37 (as well as all other versions as far as I remember) lose the Servlet Session whenever a servlet is reloaded. Why is this? Is this an issue with how classloaders are used? This makes working with complex sessions very difficult to test and debug since each time I recompile a servlet, I'll lose the session when that servlet is reloaded. Other servers do not destroy the session (Websphere for instance) when reloading servlets. Have I missed something or is there a setting that prevents this from happening?
RE: How do you like Orion?
Hi there, Let me explain a few things to you that some others have replied to as well. My company is a small startup (not mine..the company i work for) and we too have been for many months talking about various app servers. I started working with Orion in its .7+ stage..long before we started discussing the use of an app server. Actually..I started using Orion to hopefully replace our IIS/JRUN solution which badly sucks! Thats another story. None the less, we hired a CTO, a knowledgeable businessman with some technical experience behind him. We decided since we were using Servlets to go with an app server, instead of something like IIS/MTS (I would have left the company if we went that direction..I can tell you from experience it is no where near as scalable as an app server, nor not even close as easy to write code for). I put up Orion right away, even though it was not released yet..it was VERY stable and much faster than IIS/JRUN (7 times faster on static JSP page return..and that was not under a load..JRUN would crumble under a load (JRUN 2.3+..not sure about the new 3.0 version) ). It got shot down simply because our "big boys" felt they were too small of a company to rely on being around in a couple of years. Despite the fact that I already had our site running on it (not production..but on my local box) and it was extremely easy to configure, they put WebLogic, WebSphere and Oracle App Server on the list..that was it. Even though Orion is several times faster than WebLogic, we would rather spend $150k on WebLogic (cluster..$15K per cpu per server) than $10K on Orion to do the same thing..yet better. Go figure. Apparently here we feel that developers will see that we use WebLogic and want to come work for us. I tried to explain that what we really want to promote is J2EE development since if you can develop for J2EE it really doesn't matter much what app server. None the less, let me tell you what I think about all of this. I have used Orion for a while now. I also have used IIS/JRUN, Resin, Weblogic and have seen SilverStream in action. We have chosen WebLogic (for the reasons I explained above..and that our board members like to see us using a big-name app server). However, if your company allows you to, Orion is quite a bit nicer in many ways. The only thing I like about WebLogic is that it owns WebGain, which distributes a nice development IDE integrated. Visual Cafe 4 integrates with WebLogic server (right now..more will be added for EJB deployment, etc). It also works nicely with the DreamWeaver 3 which is JSP 1.1 aware (taglibs, javabean drag/drop, etc). Their StructureBuilder is integrated, and the EJB deployment into the local copy of WebLogic is seamless. That is the one thing Orion lacks..which quite frankly I could care less because it does package simple to use GUI tools for packaging web apps, ejbs, ears, jars, and deployment of them. Quite frankly, if Forte for Java would fix a few things to make life a bit easier, I would use that free tool, along with Orion for all my needs. mySql is a nice database for free which does the job for the most part. So you can almost set up a full blown enterprise solution for under $3000. Anyways..I got a meeting to go to. If you can..go with Orion. I say this from experience..not because I am promoting the product. Its easy to set up, easy to use, VERY stable and by far the fastest, along with pretty easy clustering setup. Feel free to ask questions.