Re: Sessions and W98 + IE
OK. So how do you force 128 bit encryption? By the way take a look at this, could be the answer to the problem... http://www.cnet.com/software/0-3227883-8-8580844-5.html /David - Original Message - From: Stephen Davidson [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Sunday, May 19, 2002 6:40 PM Subject: Re: Sessions and W98 + IE Hi David. The major errors I have come accross in IE (all tested version of 4, 5, 6) was that the 56bit encryption package was completely broken in IE. The workaround was to force 128bit, or no encryption. I am not aware of any other issues. -Steve David Tunkrans wrote: Hi Im having problems with broken sessions for w98 + IE browsers. Does anyone know of errors in the Orion sessiontracking mechanism? /David
FW: Using ORION versus CORBA
I can ask if there is some way how to configure Orion (or that RMI) for using remote calling from other aplications (example in C++, Delphi, etc...) where is available CORBA? Have somebody some idea how to do this?? Thank you. David Sorf, [EMAIL PROTECTED] --- Odchoz zprva neobsahuje viry. Zkontrolovno antivirovm systmem AVG (http://www.grisoft.cz). Verze: 6.0.361 / Virov bze: 199 - datum vydn: 7.5.2002
Sessions and W98 + IE
Hi Im having problems with "broken" sessions for w98 + IE browsers. Does anyone know of errors in the Orion sessiontracking mechanism? /David
Cmp entity with postgresql
hi in my postgresql database i have a table customer with a field sex witch is a char that can be either 'M' or 'W' .My cmp entity beans has a var : char sex; when i try to load the entity i get Database error: Bad Short M; witch comes from org.postgresql.jdbc2.ResultSet.getShort . in the database-schema i have that entry type-mapping type=char name=char / here's the complete error message com.evermind.server.rmi.OrionRemoteException: Transaction was rolled back: Database error: Bad Short M at customerHome_EntityHomeWrapper2.findAll(customerHome_EntityHomeWrapper2.java:1202) at __jspPage0_jsp_list_jsp._jspService(__jspPage0_jsp_list_jsp.java:132) at com.orionserver.http.OrionHttpJspPage.service(Unknown Source) at com.evermind._ah._rad(Unknown Source) at com.evermind.server.http.JSPServlet.service(Unknown Source) at com.evermind._cxb._abe(Unknown Source) at com.evermind._cxb._uec(Unknown Source) at com.evermind._io._twc(Unknown Source) at com.evermind._io._gc(Unknown Source) at com.evermind._if.run(Unknown Source) Nested exception is: Bad Short M at org.postgresql.jdbc2.ResultSet.getShort(ResultSet.java:232) at customerHome_EntityHomeWrapper2.findAll(customerHome_EntityHomeWrapper2.java:1118) at __jspPage0_jsp_list_jsp._jspService(__jspPage0_jsp_list_jsp.java:132) at com.orionserver.http.OrionHttpJspPage.service(Unknown Source) at com.evermind._ah._rad(Unknown Source) at com.evermind.server.http.JSPServlet.service(Unknown Source) at com.evermind._cxb._abe(Unknown Source) at com.evermind._cxb._uec(Unknown Source) at com.evermind._io._twc(Unknown Source) at com.evermind._io._gc(Unknown Source) at com.evermind._if.run(Unknown Source) here's my complete postgresql.xml ?xml version=1.0? !DOCTYPE database-schema PUBLIC -//Evermind//- Database schema http://www.orionserver.com/dtds/database-schema.dtd; database-scheme name=PostGreSQL not-null=not null 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=smallint / type-mapping type=char name=char / type-mapping type=short name=integer / type-mapping type=boolean name=bool / type-mapping type=java.util.Date name=timestamp / type-mapping type=java.io.Serializable name=oid / disallowed-field name=position / disallowed-field name=parent / disallowed-field name=username / disallowed-field name=date / disallowed-field name=order / disallowed-field named=abort /^M disallowed-field named=analyze / ^M disallowed-field named=binary / ^M disallowed-field named=cluster /^M disallowed-field named=constraint /^M disallowed-field named=copy /^M disallowed-field named=do / ^M disallowed-field named=explain /^M disallowed-field named=extend /^M disallowed-field named=listen /^M disallowed-field named=load /^M disallowed-field named=lock / ^M disallowed-field named=move / ^M disallowed-field named=new /^M disallowed-field named=none /^M disallowed-field named=notify / ^M disallowed-field named=offset / ^M disallowed-field named=reset / ^M disallowed-field named=setof /^M disallowed-field named=show /^M disallowed-field named=transaction /^M disallowed-field named=unlisten /^M disallowed-field named=until / ^M disallowed-field named=vacuum /^M disallowed-field named=verbose /^M /database-scheme I really dont know what it could be now. anyone has an idea ??? David Plante
Re: how to set exclusive-write-access=true in orion-ejb-jar.xml
I think orion finds out your database doest suport this feature or its not yet implemented for this db in orion. Exclusive-write-access default is set to true, so i beleive that orion resets it cause its not available.Otherwise be sure you remove orion-ejb-jar.xml before you deploy and make sure the one you deploy in your ejb.jar META-INF is valid . At deployment you should see a message about orion copying the orion-ejb-jar. I hope this helps David Plante On Fri, 2002-05-17 at 15:58, [EMAIL PROTECTED] wrote: Hi all, can anybody help to set exclusive-write-access=true in orion-ejb-jar.xml. Enviroment: oc4j 9.0.2.0.0 My problem is that container reset it to false during deployment (other attributes are set without any problem) I tried - to put orion-ejb-jar.xml in my application jar-file and to delete my application catalog in application-deployment catalog - to change orion-ejb-jar.xml genereted by container - all together nothing works Regards ITC-M, SIS Company Mr. Valeri Kireitchik Head of Application Software Department Fujitsu Siemens Computers Qualified Partner Microsoft Certified Partner Oracle Partner Program Member Surganova 24-406 220012 Minsk Republic of Belarus ph.: +375 (17) 262 50 23 fax: +375 (17) 262 55 91 http://www.sis-group.com/
testing
Re: JNDI question: client talking to EJBs on multiple app servers
Brilliant -- thanks. What I couldn't find was any documentation on what goes in the environment Hashtable. :) What does the dedicated.connection=true property do? If I were to do this: public FooRemote getRemote(String jndiURL) { Hashtable env = new Hashtable(); env.put(Context.PROVIDER_URL, jndiURL); InitialContext context = new InitialContext(env); Object ref = context.lookup(EJB_NAME); FooHome home = (FooHome)PortableRemoteObject.narrow(ref, FooHome.class); FooRemote remote = home.create(); return fooRemote; } public void doStuff() { FooRemote beanOne = getRemote(ormi://fred/app); FooRemote beanTwo = getRemote(ormi://wilma/app); // do stuff... } Will it work? Or is the remote going to get confused as to which server it points to? On Thu, 2002-04-18 at 00:53, Lachezar Dobrev wrote: Hi. A working model is to create two Initial Context-s for each server. Use a dedicated.connection=true property to create the context. The dedicated.connection however leads to resource leakage, and if you keep creating more and more of them you will eventualy get java.lang.OutOfMemoryError: Can not create native thread at some 200-300 contexts. If you create an context for both servers, and then use them later you might not have this problem. public static Context[] connections; public void ejbCreate(){ if ( connections != null ) return; Hashtable env = new Hashtable(); // Use any of these. env.put(dedicated.connection, Boolean.TRUE ); //env.put(dedicated.connection, true); // Set up user, pass, // factory (RMIInitialContextFactory). env.put(..., ); // Set up things connections = new Context[2]; // For The first server env.put(Context.PROVIDER_URL, ormi://Comp1/App1); connections[0] = new InitialContext(env); // Now for the other server env.put(Context.PROVIDER_URL, ormi://Comp2/App2); connections[1] = new InitialContext(env); } public void connectServer1(){ connections[0].lookup(MyBean1); } public void connectServer2(){ connections[1].lookup(MyBean2); } You DO understand this is Orion-specific, right? Good luck. Lachezar. I've got the same beans deployed on two different app servers (each backed by a different database). I want my client to talk to both. Say the two app servers are running on machines named Fred and Wilma; I know I can choose which one I talk to by setting java.naming.provider.url=ormi://fred/app or java.naming.provider.url=ormi://wilma/app But how do I switch at run time? I don't want to keep changing the system property every time I get an InitialContext(), because the system property is a global setting and one piece of code might not know what another piece of code is doing. Is there a way to specify the JNDI url when you create an InitialContext?
JNDI question: client talking to EJBs on multiple app servers
I've got the same beans deployed on two different app servers (each backed by a different database). I want my client to talk to both. Say the two app servers are running on machines named Fred and Wilma; I know I can choose which one I talk to by setting java.naming.provider.url=ormi://fred/app or java.naming.provider.url=ormi://wilma/app But how do I switch at run time? I don't want to keep changing the system property every time I get an InitialContext(), because the system property is a global setting and one piece of code might not know what another piece of code is doing. Is there a way to specify the JNDI url when you create an InitialContext?
ClassCastExceptions in EJB client: What am I missing?
So I have a session bean, Home interface, Remote interface, Bean class, the works. When I invoke it from a web application within Orion, it works fine. When I try to invoke it from a standalone client, I can look up the home interface but I can't narrow it. I get: java.lang.ClassCastException at com.sun.corba.se.internal.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:296) at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137) ...[etc.] Now, it's pretty clear to me that I'm missing something on the client side, because if after Object ref = jndiContext.lookup(ejb/Foo); I add System.out.println(ref.getClass().getName()); on the web-app side, the working side, I get FooHome_StatelessSessionHomeWrapper37 but on the standalone client side I only get __Proxy0 whatever that is. Do I need to be generating the client-side stub classes somehow and including them with the standalone client? How do I do that? I find references in the Orion documentation to something called an EJB client JAR but nothing on how to create one or what's supposed to go in it. I've seen two or three questions on this sort of ClassCastException in the archive for this mailing list but haven't been able to find answers to any of them. Has anyone got an answer?
Java newsgroups: Entity Beans not synchronising with database
We are currently using a stateless session bean to perform a direct update of a table in the database and then usinga findermethodin the home interface of an entity bean which is mapped over the same table to retrieve the records that have just been updated. Because both transactions are managed by the application server, it should know that theentitybeansneed to refresh from the database because some data has changed. However the result is that the direct update is committing the change to the database as you would expect, but theentity beans retrieveddo not reflect that change.Do we need to force theentity beanto refresh from the database? We are using 1.5.4 Orion Application Server, EJB 1.1 andMSSQL 7 database. ta, - dave Dave Kumar.Software Developer Prolog4 - Prolog House, Littlemoor, Eckington, Sheffield, S21 4EFTEL: +44(0)1246 439400 FAX: +44(0)1246 439401E-MAIL:[EMAIL PROTECTED] WEB: http://www.prolog4.com This email is subject to copyright and the information in it is confidential and may be legally privileged. It is intended only for the named recipient(s). Access to this email by anyone else is unauthorised.If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. If received in error please contact the sender, then delete it from your system. When addressed to our customers, any opinions or advice contained in this email are subject to the terms and conditions expressed in the contract of sale. No contracts may be concluded on behalf of any Prolog Group company by means of email communications. Please note that neither Prolog nor the sender accepts responsibility for viruses and it is your responsibility to scan attachments (if any).
Local / Local Home
Does anyone know if the bug mentioned in previous postings is fixed? (Using Local/LocalHome with BMP and CMP) /David
Re: A nonfatal internal JIT (3.10.107(x)) error ??
No. JDK1.3.x - Original Message - From: daniele rizzi To: Orion-Interest Sent: Friday, February 22, 2002 4:50 PM Subject: R: A nonfatal internal JIT (3.10.107(x)) error ?? do you use jdk1.2.2? d. -Messaggio originale-Da: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Per conto di David TunkransInviato: venerdì 22 febbraio 2002 11.51A: Orion-InterestOggetto: A nonfatal internal JIT (3.10.107(x)) error ?? Anyone know what this could be? $ java -jar orion.jar A nonfatal internal JIT (3.10.107(x)) error 'Relocation error: NULL relocation ta 'org/apache/crimson/parser/Parser2.maybeComment (Z)Z': Interpreting method. Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi
Re: Orion 1.5.4 Local/LocalHome with BMP - deployment problem
Thanks for the reply. Does this mean that you cantuse findBy-methods on the localhome inteface? /David public interface ProductLocalHome extends EJBLocalHome{ public static final String PRODUCT = "ejb/ProductLocal"; public static final String JNDI_PRODUCT = "java:comp/env/ejb/ProductLocal"; /** * * @param name * @return */ public ProductLocal findByPrimaryKey(Integer id) throws FinderException;} - Original Message - From: Kutzera, Dieter-Norbert To: Orion-Interest Sent: Monday, February 18, 2002 4:05 PM Subject: RE: Orion 1.5.4 Local/LocalHome with BMP - deployment problem ... are you using ejbHome-methods? I think there is a bug in orion 1.5.4 . It it not possible to use ejbHome-methods in local home-interfaces. When you remove the declaration of this methods everythink should work. I hopethe bug is fixes rapidly! Dieter -Original Message-From: David Tunkrans [mailto:[EMAIL PROTECTED]]Sent: Sonntag, 17. Februar 2002 14:17To: Orion-InterestSubject: Orion 1.5.4 Local/LocalHome with BMP - deployment problem EntityBean with BMP and Local/LocalHome etc. Doesnt compile, some internal error... Does anyone have an ideaof what could be the cause of the error? /David Auto-unpacking E:\cygwin\usr\local\java\orion\applications\app.ear... done.Auto-unpacking E:\cygwin\usr\local\java\orion\applications\app\webApp.war... done.Auto-deploying app (Assembly had been updated)...Auto-deploying product.jar (No previous deployment found)...Found 1 semantic error compiling "E:/cygwin/usr/local/java/orion/ProductLocalHome_EntityHomeWrapper31.java": 156. EvermindEntityContext finderContext = this.getContextInstance(thread); -*** Error: The method "com.evermind.server.ejb.EvermindEntityContext getContextInstance(com.evermind.server.ThreadState $1);" can throw thechecked exception "java/rmi/RemoteException", but its invocation is neither enclosed in a try statement that can catch that exception nor ithe body of a method or constructor that "throws" that exception.Error compiling E:\cygwin\usr\local\java\orion\applications\app/product.jar: Error in source
Re: JMS and message order processing
Hi everybody, can you take off my email from your list ? Because I don't want to receive any mail about Orion. Tanks David On Mon, 2002-02-11 at 09:19, Jorge Jimenez C wrote: I'm developing a jms based application and the order in wich messages are processed is very important (because of bussiness rules). After doing some test using a queue connection factory with a maximum of 10 instances of my Message Driven Bean, I noted that after completing 10 instances, the ben start processing messages in a stack order. That is, the last message received is the next to be processed, not the first that the queue received. I did exactly the same test in JBoss and the messages are processed in queue order, not in stack order. Anybody knows any configuration parameter that can affect this processing order ? Thanks in advance. An example of the server output sending 100 messages and taking a random (1-10 seconds) to complete processing. Message 1 received Message 2 received Message 3 received Message 4 received Message 5 received Message 6 received Message 7 received Message 1 finished Message 8 received Message 9 received Message 2 finished Message 10 received Message 11 received Message 12 received Mesage 100 received Message 99 received Message 3 finished Message 98 received ...and so on ...
Pooling connections with PostgreSQL
Hi! Sorry for my English, I hope you understand me. We are using PostgreSQL with orion. We are logging the connections to the database, and we found there is only one connection. The data source is: data-source name=eurovipshotelDS class=com.evermind.sql.ConnectionDataSource location=jdbc/eurovipshotelDS pooled-location=jdbc/AzorHotelPooledDS xa-location=jdbc/xa/eurovipshotelXADS ejb-location=jdbc/eurovipshotelEJBDS schema=database-schemas/postgresql.xml url=jdbc:postgresql://localhost/azorhotel connection-driver=org.postgresql.Driver username=xx password=xx min-connections=20 max-connections=100 max-connect-attempts=3 inactivity-time=30 / What's the problem? Why it does not open 20 connections? Thanks.
MDB with SwiftMQ
Has anyone got a MDB working with SwiftMQ? I've followed the documentation but am getting the following error on deployment... Auto-unpacking \home\modules\jms_tests\dist\jms-tests.ear... done. Error instantiating application 'jms-tests' at file://e:/home/modules/jms_tests/dist/jms-tests.ear: resource-provider cl ass 'com.evermind.server.deloyment.ContextScanningResourceProvider' not found I noticed that 'deployment' is spelt 'deloyment' in the error message, is this a bug or just a typo? I extracted ContextScanningResourceProvider from orion.jar rather than compiling it myself. I'm not sure where to package this class, should it be in the ejb-jar? or in the general app jar? If anyone has this working can you please post your bean deployment config files. My setup is as follows - Cygwin on Win NT 4.0 - Orion 1.5.2 - SwiftMQ 2.1.3 - JDK 1.3.1 Thanks Dave -- David Shepherd [EMAIL PROTECTED] __ Your favorite stores, helpful shopping tools and great gift ideas. Experience the convenience of buying online with Shop@Netscape! http://shopnow.netscape.com/ Get your own FREE, personal Netscape Mail account today at http://webmail.netscape.com/
Apache/SSL or Stronghold as Orion Frontend
Is it possible to successfully have Stronghold (ssl) proxy requests to a non-ssl Orion on the backend? I can proxy all day long http -- http, but it seems that Orion has no mechanism in the frontend portion to say the protocol is https, not http when you need to do a redirect. If I say port=443 it tries to use http on port 443. This is bad and breaks things. The Stronghold side is trivial with mod_rewrite or mod_proxy, it's just that Orion is failing to use the right protocol when doing redirects, be them internal (to make /foo turn into /foo/) or be it within a Java program. ASCII for those who like visuals: [https://ssl.server/foo] --(rewrite)-- [http://private.orion/foo] Is this possible without setting Orion up with ssl support? Help. -- David S. Kenzik [EMAIL PROTECTED] - http://kenzik.com Original Music - http://kenzik.com/music
FW: How to get the RoleManager (resend)
-Original Message- From: David Potts Sent: 11 October 2001 10:02 To: 'Orion-Interest' Subject: RE: How to get the RoleManager inline -Original Message- From: Mike Cannon-Brookes [mailto:[EMAIL PROTECTED]] That won't help - I think shared sessions only work between two WARs in the same app. We could probably live with merging the two apps into WARs in the same EAR file. However, we've just tried that with a test app and with the shared flag set to be true in both of the web-app tags in default-web-site.xml (and also in default-web-app for good measure!) and we have the same problem: the second app again goes to the login form. Any ideas of what config we might have go wrong? Juan Lorandi in this thread mentioned putting shared=true in orion-web.xml but we can't find that in the docs. What tag attribute do we apply this to? Juan also mentions the same realm name, but this is just for BASIC authentication I believe, and we unfortunately have to use FORM based authentication. Is that right? The only thing I can suggest is using some sort of cookie based system where you track via session ID who is logged in (stored in a hashmap or something), then from each app lookup that hashmap (via JNDI) and log in the user programmatically before they are shown the login page. Very fugly though. SSO is one of J2EE's problems. So the flow of that solution would look like: (1) User logs into app1 (2) Store user info in JNDI somewhere that app2 can see it (3) The user clicks a link that would take them into app2 (4) Intercept the login-request and use the stored info to log the user into app2 The problem with this flow is that we don't know how to intercept at step (4) *before* the user is shown the login form by the container. Is this possible? If not, our idea similar to this would be: (1) User logs into app1 (2) Convince the app2 security (RoleManager?) that the user is logged in using the values passed to app1 (3) The user clicks a link that would take them into app2 and is already logged in Hence the original question in this thread: how from app1 do we get hold of app2's RoleManager? Thanks for all the help. Dave.
RE: How to get the RoleManager
-Original Message- From: Mike Cannon-Brookes [mailto:[EMAIL PROTECTED]] I have a feeling if you made app2 the parent app of app1 it might work (they'd probably be the same RoleManager - can't confirm that though). Thanks for the suggestion. We tried it, but it doesn't work. When we go to the second app the login form comes up again. This is a non-standard solution (if a solution at all! ;)), then again if you're using RoleManager you're already using Orion specific code so you probably don't mind too much. At the moment we are looking for *any* solution that will do form-based single signon across two apps on Orion. What is the standard? Cheers, Dave.
FW: How to get the RoleManager
I'm resending this as it hadn't appeared on the list after 5 hours :-) Dave. -Original Message- From: David Potts Sent: 09 October 2001 09:00 To: '[EMAIL PROTECTED]' Subject: How to get the RoleManager Hello, Does anyone know if/how to get the RoleManager for an application from outside of that application? What I'm trying to do is login to app1 and then as part of that process programmatically login to app2. I've seen questions in the archive about how to get the RoleManager, but I've not found the definitive answer. I've been able to get the java:comp/RoleManager object from within the application, but not from an external app. Any ideas? Cheers, Dave. --- David Potts Xchanging Email: [EMAIL PROTECTED] http://www.xchanging.com
Has anyone evaluated Mongoose PortalStudio 2.0 from Mongoose Technology?
Has anyone evaluated Mongoose PortalStudio 2.0 from Mongoose Technology? Can you share your opinions on their portal lifecycle management tools? http://www.mongoosetech.com/products/portalstudio.html Thanks in advance. Join 18 million Eudora users by signing up for a free Eudora Web-Mail account at http://www.eudoramail.com
Has anyone evaluated Mongoose PortalStudio 2.0 from Mongoose Technology?
Has anyone evaluated Mongoose PortalStudio 2.0 from Mongoose Technology? Can you share your opinions on their portal lifecycle management tools? http://www.mongoosetech.com/products/portalstudio.html Thanks in advance. Join 18 million Eudora users by signing up for a free Eudora Web-Mail account at http://www.eudoramail.com
MAPPING MORE THAN ONE WEB RESOURCE TO SECURITY ROLES
I have protected my Application with declarative security and all works properly. When somebody try to access the Main Page, the Basic Authentification turn on. That´s good. I have also protected methods and mapped it with roles. Now... I want to protect a second web recourse, a .js (script src="javascript:void(0);"/script) file but only for a few security-roles. If the role is allowed, the script is charged, if not, the script is not charged. The problem is that when I try to access this Web resource, Orion asks for my login and password again - as if the verification hadn't been stored in the session. If I try to enter with a rol that isn't mapped to this resource, it doesn't even recognize the user and the password. How can I make it so that Orion only asks me ONCE for my username and password and also so that I can load Web resources without having to enter my password, etc... again (assuming I have the correct permissions to load the resources in question). Thank you very much !!! __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
(SPECIFIC) QUESTIONS ABOUT MANAGING SECURITY
Well.. I'm using declarative (using only xml descriptors) security not programative security. Elena Barns wrote : This exception is thrown when you use method that throws this exception, soas with any exception you have to put this method in try{} block and incatch(e com.evermind.server.rmi.OrionRemoteException) {} put method thatshows the user message about lacking of security permissions. This is myopinionElena 1. I can´t catch the com.evermind.server.rmi.OrionRemoteException because it´s a Orion propietary Exception and my Application must work over any Application Server to get the J2EE Certified Seal. Serguei Batiuk wrote : You probably need to derive all you exceptions from RemoteException, and work with these exceptionsas usually, for example: public class WrongUserException extends RemoteException { public WrongUserException { } ... } Then you code will look like: public class SomeClass { public void SomeMethod { try { // Invoke some secure method.. MyEJB ejb = someBean.someSecureMethod(); } catch( WrongUserException e ) { // Wrong User! } catch( RemoteException ) { // Something else has happened! } } } HTH, Sergei. 2. Yeah... good idea but how and when must I throw this "WrongUserException" ? That´s my problem... I don´t know when I have a pure RemoteException or when I have a RemoteException that mask a Security Constraint... __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
MORE THAN ONE USER PROBLEM
Hi Magnus !!! Our security developing on Orion goes very good. Now I have more specific questions. 1. The web interface and EJBs security works but when I try to use a restricted a EJB method I only get a remoteException (I know... it´s normal). Is there some way to control if this exception is caused by a Security Constraint ? (To show for example... "You´re not allowed to do that"). 2. I try to use two users with twodifferent roles/groups but it doesn´t work (I must do something wrong...) have you some kind of application (like the illuminati apply you sended me) but with two different users and different roles/groups ?. 3. At least, but not at last... with who must we talk about Orion pricing and the possibility to include it into a "all-in-one" pack with our application ? Thank you very much Magnus !!! Best Regards !! __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
QUESTIONS ABOUT MANAGING SECURITY
I have implemented security on my application and I´m a newbie with these questions. My apply catch the exceptions and show it via JSP. When I try to access a method that I don't have permission for, I get a com.evermind.server.rmi.OrionRemoteException: dave is not allowed to call this EJB method, check your security settings (method-permission in ejb-jar.xml and security-role-mapping in orion-application.xml). This a Orion propietary Exception and my question is... Wich is the Exception that throws every ApplicationServer ? a generic RemoteException ? and how can I manage it to control if it´s a security exception and show, for example, a "You´re not allowed to do that" text in my JSP ? Thank you very much, mates __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
STRANGE (and BIG!!!) PROBLEM
It's a little bit strange... I'm implementing security on my application and customizing my xml descriptors. All went ok (I had Basic Authentication) and I wanted to implement security also in the EJBs methods. I change the ejb-jar.xml source and this text appears : Auto-deploying UbicuaCMP.jar (Classes were updated)... The compiler has run outof memory. Consider using the "-J-mxnumber" command line option to increase the maximum heap size.Error compiling D:\Orion155\ubicua/UbicuaCMP.jar: Syntax error in sourceOrion/1.5.2 initialized I work with 512MB memory... so I don´t think is a problem of lack of memory... I try to use also the "-J-mxnumber" command but it doesnt work !. Can anybody explain where and how works this command ? (a sample example will be wellcomed !) Thanks !!! __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
IMPLEMENTING SECURITY AND AUTHENTIFICATION
I want to create some users for my application, map this users with pre-created roles, and then, know about how can I make the authentification. Please help me ! I must do it very, vey quickly !!! __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
HELP !!! SECURITY
Ok... I have understand all about security but know, how and where can I activate a option to use a Orion-Based console or something else to control de User Name and Password ? __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6 B28036 MadridSPAINTel.: (+34) 914 577 747Mvil: 656 62 83 92Fax: (+34) 914 586 176__
The Security (again)
Title: En blanco I discover myself how to get a dialog to put the login and password when my application starts, now, the problem is that... it doesn´t work properly !!! I write the correct login and password but the server doesn´t recognize it !!! Someboy has a good idea about what happens ? Thank you very much !!! __David Bonilla FuertesTHE BIT BANG NETWORKhttp://www.bit-bang.comProfesor Waksman, 8, 6º B28036 MadridSPAINTel.: (+34) 914 577 747Móvil: 656 62 83 92Fax: (+34) 914 586 176__
RE: Which JAR do I need to run an external client app
Peter, In getting my app-client running, I down loaded http://java.sun.com/dtd/application-client_1_3.dtd and found this statement: The ejb-ref-name element contains the name of an EJB reference. The EJB reference is an entry in the application client's environment and is relative to the java:comp/env context. The name must be unique within the application client. As you can see, ejb-ref cannot be used in your case since you do not want your client in every ejb container. Also res-ref has the same problem. It looks like your client needs to use rmi to call the ejbs. Look at rmi.xm.html in Orion's docs. Set up the server, using rmi.xml, that contain the ejbs your client-app needs to use. Then set up you client to connect to the appropriate server:port for the needed ejb using rmi. Hope this helps. Dave -Original Message- From: SAURUGGER,PETER (A-PaloAlto,ex2) [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 19, 2001 12:21 PM To: Orion-Interest Subject: RE: Which JAR do I need to run an external client app In my case at least it is java:whatever-is-in-application-client.xml or orion-application-client.xml that's not available. Is there any other place to specify the jndi location for an ejb? Experimented with RMIInitialContextFactory as well without success. with the follwoing entry in application-client.xml: ejb-ref-nameejb/ArticleHandler/ejb-ref-name Whatever I specify, I get the following error (cm is application name), e.g.: Communication error: Invalid name:cm/ejb/ArticleHandler Communication error: Invalid name:/cm/ejb/ArticleHandler Communication error: Invalid name:ejb/ArticleHandler Communication error: Invalid name:/ejb/ArticleHandler Communication error: Invalid name:ArticleHandler now what? How do I correctly specify the jndi name? -Original Message- From: David Libke [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 18, 2001 1:35 PM To: Orion-Interest Subject: RE: Which JAR do I need to run an external client app Peter, The problem you are experiencing is because the JNDI locations need to be changed when the location of the client jar is changed -- namely change 'java:comp/env/' to 'java:hello/client/' or some other path that is appropriate. 'java:comp/env' is reserved for the application server's environment resources; thus, a different JNDI entry must be created for your application client when it is outside of the server. Good luck on synchronizing all the xml entry names. Dave -Original Message- From: Cugier (extern) [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 18, 2001 11:18 AM To: Orion-Interest Subject: Which JAR do I need to run an external client app Hello, I have the following problem. I created a Java Client application that accesses an EJB. I start the client with the following batch file. set CLASSPATH=H:\oc4j\j2ee\home\ejb.jar;.;H:\oc4j\j2ee\home\orion.jar;H:\oc4j\j2 ee\home\jndi.jar java HelloClient where H:\oc4j\j2ee\home ist the directory where I installed the OC4J/Orion Server on my computer. When I start the client with this batch file everything works fine. As I don't want to install OC4J/Orion on each PC where the client should run I copied the three JAR file that ar listed in the CLASSPATH from H:\oc4j\j2ee\home to D:\ExtraJARs. I changed the batch file to set CLASSPATH=D:\ExtraJARs\ejb.jar;.;D:\ExtraJARs\orion.jar;D:\ExtraJARs\jndi.ja r java HelloClient After the change I get the following error javax.naming.NamingException: java:comp/env namespace is only available from within a J2EE component at com.sun.enterprise.naming.java.javaURLContext.getComponentContext(../../src/ share/com/sun/enterprise/naming/java/javaURLContext.java:392) at com.sun.enterprise.naming.java.javaURLContext.lookup(../../src/share/com/sun /enterprise/naming/java/javaURLContext.java:51) at javax.naming.InitialContext.lookup(Unknown Source) at HelloClient.main(HelloClient.java:9) Can anyone explain why it works when I use the three JARs from the H:\oc4j\j2ee\home directory but doesn't work when I try to use the copied JAR files. Thanks Peter
RE: Which JAR do I need to run an external client app
Peter, The problem you are experiencing is because the JNDI locations need to be changed when the location of the client jar is changed -- namely change 'java:comp/env/' to 'java:hello/client/' or some other path that is appropriate. 'java:comp/env' is reserved for the application server's environment resources; thus, a different JNDI entry must be created for your application client when it is outside of the server. Good luck on synchronizing all the xml entry names. Dave -Original Message- From: Cugier (extern) [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 18, 2001 11:18 AM To: Orion-Interest Subject: Which JAR do I need to run an external client app Hello, I have the following problem. I created a Java Client application that accesses an EJB. I start the client with the following batch file. set CLASSPATH=H:\oc4j\j2ee\home\ejb.jar;.;H:\oc4j\j2ee\home\orion.jar;H:\oc4j\j2 ee\home\jndi.jar java HelloClient where H:\oc4j\j2ee\home ist the directory where I installed the OC4J/Orion Server on my computer. When I start the client with this batch file everything works fine. As I don't want to install OC4J/Orion on each PC where the client should run I copied the three JAR file that ar listed in the CLASSPATH from H:\oc4j\j2ee\home to D:\ExtraJARs. I changed the batch file to set CLASSPATH=D:\ExtraJARs\ejb.jar;.;D:\ExtraJARs\orion.jar;D:\ExtraJARs\jndi.ja r java HelloClient After the change I get the following error javax.naming.NamingException: java:comp/env namespace is only available from within a J2EE component at com.sun.enterprise.naming.java.javaURLContext.getComponentContext(../../src/ share/com/sun/enterprise/naming/java/javaURLContext.java:392) at com.sun.enterprise.naming.java.javaURLContext.lookup(../../src/share/com/sun /enterprise/naming/java/javaURLContext.java:51) at javax.naming.InitialContext.lookup(Unknown Source) at HelloClient.main(HelloClient.java:9) Can anyone explain why it works when I use the three JARs from the H:\oc4j\j2ee\home directory but doesn't work when I try to use the copied JAR files. Thanks Peter
RE: DataSource question
greg, Use a ConnectionPoolDataSource, then Orion will return a different data source. Dave -Original Message- From: Greg Kogan [mailto:[EMAIL PROTECTED]] Sent: Thursday, September 13, 2001 12:41 PM To: Orion-Interest Subject: DataSource question I have run into a problem where the a DataSource does not open more then one connection. I have not purchased a license yet, so could this be happenning because of lack of a license or is it a bug(I doubt it, but anything is possible...) ? So far, I tried opening multiple connections using the jdbc dirver directly and was successfull. Whenever I get a connection from a DataSource object, it is the same one. Any ideas? Thanks beforehand, Greg.
RE: orion-application.xml
Oisin, Does the Orion Admin Tool create the orion-application.xml or do you? If the tool is creating this xml file then I would suggest that you delete the old one before invoking the tool. Another suggestion is move the library path=../lib/ tag from orion-application.xml to an application.xml for your application specially if they are not shared with other applications (yours and third party's). Dave -Original Message- From: Jeff Hubbach [mailto:[EMAIL PROTECTED]] Sent: Thursday, September 13, 2001 10:35 AM To: Orion-Interest Subject: Re: orion-application.xml Oisin, Here's a URL inside Orion's site that has a description of the orion-application.xml file: http://www.orionserver.com/docs/orion-application.xml.html If you still have questions and know how to read a dtd, you can look at the dtd for this file. It's at: http://www.orionserver.com/dtds/orion-application.dtd If this is the documentation you have already looked at and are not satisfied with, then I suggest you go browse through Oracle's documentation of OC4J. I've looked at some of it, and it seems to be clearer than Orion's own documentation to a point. Jeff. On Thu, 13 Sep 2001 12:58:11 +0100 OMurchu, Oisin [EMAIL PROTECTED] wrote: I'm having a problem deploying to Orion, which causes the deployment time to increase over time, and eventually the jvm orion is in to run out of memory. Basically, I'm using ANT to deploy, calling the Orion admin tool (com.evermind.client.orion.OrionConsoleAdmin) and passing the relevant parameters into it. The EAR file I'm deploying includes a lib directory, with all of the required extra jar files in it (utilities, etc). In order for orion to use these when loading a bean, I put the line library path=../lib/ into orion-application.xml, between the persistence/ and principals/ tag. Orion does indeed load up the jar files as expected, so that works. The problem is that each time I deploy, the number of library path=../lib/ tags at least doubles, and at one stage I was left with over 500 library path=../lib/ tags in the orion-application.xml file. At this stage, the server slowed to a crawl, and either took several minutes to load up the beans, or else crashed. Has anybody come across this behaviour? And what can I do about it? And does anybody know of a good source of documentation on the various configuration options available for Orion, as I find it is poorly documented in all areas. Maybe the people at IronFlare could get their act together from counting all the money from Oracle, and produce a decent, (even semi-)professional set of documentation. Regds., Oisín.
UNSUSCRIBE
RE: Calling EJB From a Servlet..
Prashant, You cannot initialize the context within the servlet. Use web.xml with the following entries with your values: context-param !-- The context-param element contains the declaration of a web application's servlet context initialization parameters. There are two special kinds of initialization parameters for the optional cases where the parameter is used to obtain the JNDI name of an EJB or a data source for a subsequent look up. These are indicated by an context-param element together with an accompanying ejb-ref or resource-ref element with matching name. -- param-nametheName/param-name !-- The name of the configuration parameter. -- param-valuetheValue/param-value !-- The value of the configuration parameter. -- /context-param resource-ref !-- The optional resource-ref element contains a declaration of a Web Application's reference to an external resource. An context-param with the same name must be present whose value will be the JNDI data source. The context-param's value may be specified at deployment time. -- descriptionThe description/description !-- A short description, use etc. -- res-ref-nametheContextParam/res-ref-name !-- Specifies the name of the resource factory reference name. This value is the name of the context-param whose value contains the JNDI name of the data source. -- res-typecom.the.TypeOfResource/res-type !-- Specifies the (Java class) type of the data source. -- res-authCONTAINER|SERVLET/res-auth !-- The res-auth element indicates whether the application component code performs resource signon programmatically or whether the container signs onto the resource based on the principle mapping information supplied by the deployer. Must be CONTAINER or SERVLET. -- /resource-ref ejb-ref !-- Used in conjunction with a matching context-param of the same name to indicate that this parameter will be used to obtain the JNDI name of an EJB. -- descriptionThe description/description !-- A short description, use etc. -- ejb-ref-namenameOfEJB/ejb-ref-name !-- Contains the name of an EJB reference. This name must match an context-param name. -- ejb-ref-typecom.type.OfEJBBean/ejb-ref-type !-- Contains the expected java class type of the referenced EJB. -- homecom.type.OfEJBHome/home !-- Contains the fully qualified name of the EJB's home interface. -- remotecom.type.OfEJB/remote !-- Contains the fully qualified name of the EJB's remote interface. -- ejb-linknameOfEJB/ejb-link !-- Used in the ejb-ref element to specify that an EJB reference is linked to an EJB in an encompassing J2EE application package. The value of the ejb-link element must be the ejb-name of and EJB in the J2EE application package. -- /ejb-ref You now need to tell Orion where to find the ejb. You need to be sure that the following entries are in your hello-application.xml: application !-- The application element is the root element of a J2EE application deployment descriptor. -- module !-- The module element represents a single J2EE module and contains an ejb, java, or web element, which indicates the module type and contains a path to the module file, and an optional alt-dd element, which specifies an optional URI to the post-assembly version of the deployment descriptor. The application deployment descriptor must have one module element for each J2EE module in the application package. -- ejbpathToEJB.jar/ejb !-- The ejb element specifies the URI of a ejb-jar, relative to the top level of the application package. -- javapathToClient.jar/java !-- if you have an application client -- !-- The java element specifies the URI of a java application client module, relative to the top level of the application package. -- /module web !-- The web element contains the web-uri and context-root of a web application module. -- web-uripathTo.war/web-uri !-- The web-uri element specifies the URI of a web application file, relative to the top level of the application package. -- context-rootthedir//context-root !-- The context-root element specifies the context root of a web application. -- /web /application The module and web tags tell Orion to link these items together as an application. Now in the server.xml, make sure that the following entries are there: web-site path=./hello-web-site.xml / application name=hello path=./hello-application.xml / See if this gets us any further. Dave -Original Message- From: Prashant Gaikwad [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 11, 2001 6:27 AM To: Orion-Interest Subject: Calling EJB From a Servlet.. HI Friends, I'm having a serious problem in my code and am unable to understand. I've deployed a simple Hello bean on the orion container and want to access it from a servlet. I have the servlet in
RE: Problem in message driven beans.
Parul, For sending a message to a MessageDrivenBean you should only need this entry in the application-client.xml resource-ref res-ref-namejms/theQueueConnectionFactory/res-ref-name res-typejavax.jms.QueueConnectionFactory/res-type res-authContainer/res-auth /resource-ref resource-ref resource-ref-namejms/theQueueINamed/resource-ref-name resource-ref-typejavax.jms.Queue/resource-ref-type /resource-ref and in the ejb-jar.xml add the following message-bean ejb-nameMyBean/ejb-name ejb-classMyPackage.MYBean/ejb-class transaction-typeContainer/transaction-type acknowledge-modeauto-acknowledge/acknowledge-mode message-driven-destination destination-typejavax.jms.Queue/destination-type subscription-durabilitydurable/subscription-durability /message-driven-destination resource-ref res-ref-namejms/theQueueConnectionFactory/res-ref-name res-typejavax.jms.QueueConnectionFactory/res-type res-authContainer/res-auth /resource-ref resource-env-ref resource-env-ref-namejms/theQueueINamed/resource-env-ref-name resource-env-ref-typejavax.jms.Queue/resource-env-ref-type /resource-env-ref resource-env-ref /message-bean See if this helps. One caveat: in the application-client.xml the 'theQueueINamed' resource might need to be resource-env-ref if it does not work as resource-ref. Dave -Original Message- From: Parul Verma [mailto:[EMAIL PROTECTED]] Sent: Tuesday, August 28, 2001 9:37 AM To: Orion-Interest Subject: Problem in message driven beans. Hi, I am facing trouble in message driven bean . What should be entered in the application-client.xml tags :- 1)ejb-ref 2)ejb-ref-name 3)ejb-ref-type 4)home 5)remote For configuring the message driven bean . Regards, Parul Verma Software Engg. Mahindra British Telecom. Pune-411004. Tel :- 91-20-4018100 (Ext :- 4015). E-Mail :- [EMAIL PROTECTED] * Disclaimer This message (including any attachments) contains confidential information intended for a specific individual and purpose, and is protected by law. If you are not the intended recipient, you should delete this message and are hereby notified that any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited. * Visit us at http://www.mahindrabt.com
RE: Orion and JMS: javax.naming.NameNotFoundException]
Daniel, For the logout service I think I would use durable 'logout' topic which would guarantee delivery. If you believe you might run into high volume degradation, then look at SonicMQ messaging server. They wrote the book on JMS -- literally. Dave -Original Message- From: Daniel López [mailto:[EMAIL PROTECTED]] Sent: Friday, August 24, 2001 2:45 AM To: Orion-Interest Subject: Re: Orion and JMS: javax.naming.NameNotFoundException] Hi David, Thank you for your help, this example code might be very useful. What I'm trying to do is centralised login service, to allow a central authentication service to control acces to different web applications that can even be in different hosts. I already succesfully implemented the login part, but now I want to be able to logout from all the applications at once, and I also want to be able to trace in one place the user movements through the different applications. That's why I thought about using JMS to implement the communication between the different applications and the central authorization site. My concern is now whether JMS, specifically Orion's implementation, is mature enough as to have all my applications depending from it. Or are JMS implementations in general as inmature and buggy as Michel J. Cannon stated? Thank you again, D. From: David Libke [EMAIL PROTECTED] jue 16:47 Subject: RE: Orion and JMS: javax.naming.NameNotFoundException] To: Orion-Interest [EMAIL PROTECTED] Daniel, This my second reply to your question. Apperantly my first was lost since another reply submitted after yours appeared on the list yesterday but not yours. In addition, you might want to apply the following edits to jms.xml: .- Configure jms.xml with this content: jms-server port=9127 host= queue name=Demo Queue location=jms/demoQueue descriptionA dummy queue/description /queue log file path=../logs/jms.log / /log /jms-server This class might simplify your use of messaging: public class MessageSender implements Serializable { public MessageSender(String queueName, String topicName) throws MagnetException { this.queueName = queueName; this.topicName = topicName; initMessaging(); } private void initMessaging() { try { if (queueName == null topicName == null) { throw new IllegalArgumentException(MessageSender: initMessaging: No topic name or queue name); } InitialContext jndiEnc = new InitialContext(); if (queueName != null) { QueueConnectionFactory factory = (QueueConnectionFactory) jndiEnc.lookup(JNDINames.QUEUE_CONNECTION_FACTORY); qConnect = factory.createQueueConnection(); qConnect.start(); qSession = qConnect.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); try { requestQ = (Queue)jndiEnc.lookup(JNDINames.JMS_DIRECTORY + queueName); } catch (NameNotFoundException nnfex) { requestQ = qSession.createQueue(queueName); } qSender = qSession.createSender(requestQ); } if (topicName != null) { TopicConnectionFactory factory = (TopicConnectionFactory) jndiEnc.lookup(JNDINames.TOPIC_CONNECTION_FACTORY); System.out.println(MessageSender: initMessaging: got connection factory + factory); tConnect = factory.createTopicConnection(); tConnect.start(); tSession = tConnect.createTopicSession(false, Session.AUTO_ACKNOWLEDGE); try { requestT = (Topic)jndiEnc.lookup(JNDINames.JMS_DIRECTORY + topicName); } catch (NameNotFoundException nnfex) { requestT = tSession.createTopic(queueName); } publisher = tSession.createPublisher(requestT); } } catch (JMSException jmsex) { throw new UndeclaredThrowableException(jmsex, MessageSender: initMessaging: + jmsex.getMessage()); } catch (NamingException nex) { throw new UndeclaredThrowableException(nex, MessageSender: initMessaging: Problem looking up JmsQueueConnectionFactory); } } protected void finalize() { try { if (qConnect != null) qConnect.close(); qConnect = null; qSession = null; qSender = null; requestQ = null
RE: Orion and JMS: javax.naming.NameNotFoundException]
Title: RE: Orion and JMS: javax.naming.NameNotFoundException] Daniel, This my second reply to your question. Apperantly my first was lost since another reply submitted after yours appeared on the list yesterday but not yours. In addition, you might want to apply the following edits to jms.xml: .- Configure jms.xml with this content: jms-server port="9127" host="" queue name="Demo Queue" location="jms/demoQueue" descriptionA dummy queue/description /queue log file path="../logs/jms.log" / /log /jms-server This class might simplify your use of messaging: public class MessageSender implements Serializable{ public MessageSender(String queueName, String topicName) throws MagnetException { this.queueName = queueName; this.topicName = topicName; initMessaging(); } private void initMessaging() { try { if (queueName == null topicName == null) { throw new IllegalArgumentException("MessageSender: initMessaging: No topic name or queue name"); } InitialContext jndiEnc = new InitialContext();if (queueName != null) { QueueConnectionFactory factory = (QueueConnectionFactory) jndiEnc.lookup(JNDINames.QUEUE_CONNECTION_FACTORY);qConnect = factory.createQueueConnection(); qConnect.start(); qSession = qConnect.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); try { requestQ = (Queue)jndiEnc.lookup(JNDINames.JMS_DIRECTORY + queueName); } catch (NameNotFoundException nnfex) { requestQ = qSession.createQueue(queueName);} qSender = qSession.createSender(requestQ); } if (topicName != null) { TopicConnectionFactory factory = (TopicConnectionFactory) jndiEnc.lookup(JNDINames.TOPIC_CONNECTION_FACTORY); System.out.println("MessageSender: initMessaging: got connection factory " + factory); tConnect = factory.createTopicConnection(); tConnect.start(); tSession = tConnect.createTopicSession(false, Session.AUTO_ACKNOWLEDGE); try { requestT = (Topic)jndiEnc.lookup(JNDINames.JMS_DIRECTORY + topicName); } catch (NameNotFoundException nnfex) { requestT = tSession.createTopic(queueName);} publisher = tSession.createPublisher(requestT); } } catch (JMSException jmsex) { throw new UndeclaredThrowableException(jmsex, "MessageSender: initMessaging: " + jmsex.getMessage()); } catch (NamingException nex) { throw new UndeclaredThrowableException(nex, "MessageSender: initMessaging: Problem looking up JmsQueueConnectionFactory"); } } protected void finalize() { try { if (qConnect != null) qConnect.close(); qConnect = null; qSession = null; qSender = null; requestQ = null; if (tConnect != null) tConnect.close(); tConnect = null; tSession = null; publisher = null; requestT = null; } catch (JMSException jex) { } } private void writeObject(java.io.ObjectOutputStream out) throws IOException { try { if (qConnect != null) qConnect.close(); qConnect = null; qSession = null; qSender = null; requestQ = null; if (tConnect != null) tConnect.close(); tConnect = null; tSession = null; publisher = null; requestT = null; } catch (JMSException jex) { throw new IOException("MessageSender: writeObject: " + jex.getMessage()); } } protected String queueName = null; protected transient QueueConnection qConnect = null; protected transient QueueSession qSession = null; protected transient QueueSender qSender = null; protected transient Queue requestQ = null; protected String topicName = null; protected transient TopicConnection tConnect = null; protected transient TopicSession tSession = null; protected transient TopicPublisher publisher = null; protected transient Topic requestT = null;} You will need to define the JNDINames interface with the appropriate values for its attributes. Then any class that needs to send messages can extend MessageSender and use the appropriate attributes This works for me. Let me know if you still have problems or questions Dave -Original Message-From: Kesav Kumar [mailto:[EMAIL PROTECTED]]Sent: Wednesday, August 22, 2001 3:17 PMTo: Orion-InterestSubject: RE: Orion and JMS: javax.naming.NameNotFoundException] If you want to get any resource in your Servlet/jsp you got define resource-ref in your web.xml. One basic information as long as you are in the same container you don't need any parameters to JDNI context. You need jndi.properties only when you try to access from outside the container. Your servlets/jsp/ejb/applicationclient are in the same orion container so in all these components you can directly get JNDI context by Context ctx = new InitialContext(); As long as you are in the same container there is no need for jndi.properties. Regarding the JMS you got define resource-ref in your web.xml. Any container resource of ejb resource you want to use in web tier i.e in servlets/jsp you have to define resource-ref and ejb-ref correspondingly. For JMS which is a resource so
RE: Invoke a method on myself in a Stateful Session Bean.
You code is illegally written. The following edit will accomplish what you want. public class FooBean extends SessionBean { /** * @ejb:create-method */ public void ejbCreate() { } /** * @ejb:remote-method // do you mean a 'Business Method' that a Foo client calls? */ public void foo() { // do something interesting bar(); // do something interesting } /** * @ejb:remote-method // does a Foo client call this method? */ public void bar() { // do something interesting } } If foo() is under a transaction then calling bar() from foo() puts bar() under the same tranaction. The question becomes does bar() really need to be public? Is bar() called by the Foo client directly? Dave -Original Message- From: Juan Lorandi (Chile) [mailto:[EMAIL PROTECTED]] Sent: Wednesday, August 22, 2001 10:51 AM To: Orion-Interest Subject: RE: Invoke a method on myself in a Stateful Session Bean. Neat. I've been having similar problems trying to execute a findByPrimaryKey in the ejbCreate method of a bean. Errors, however, just come and go away randomly. -Original Message- From: Mikael Ståldal [mailto:[EMAIL PROTECTED]] Sent: Miércoles, 22 de Agosto de 2001 3:34 To: Orion-Interest Subject: Invoke a method on myself in a Stateful Session Bean. When I try to do like the code below, I get this error: com.evermind[Orion/1.5.2 (build 10460)].server.rmi.OrionRemoteException: Recursive call to non-reentrant bean Is there any other way to do this? I don't want to invoke the methods directly, since I want to make use of container managed transactions. /** * @ejb:ejb-name Foo * @ejb:stateful-session */ public class FooBean extends SessionBean { private Foo me; /** * @ejb:create-method */ public void ejbCreate() { me = (Foo)PortableRemoteObject.narrow( sessionContext.getEJBObject(), Foo.class); } /** * @ejb:remote-method */ public void foo() { // do something interesting me.bar(); // do something interesting } /** * @ejb:remote-method */ public void bar() { // do something interesting } }
RE: Concurrency
Greetings, Unfortunately the only way to resolve your concurrency problem is to use an Entity bean containing you list. That way your Session bean acquires in its create and activate methods a reference to the list entity bean and releases it in the passivate and remove methods. Your Entity bean must have Transaction required as its property, which can be either container or bean managed. The entity bean is the 'critical section' and the transaction is the 'monitor'. When Orion supports (hopefully in the near future) EjbLocalBeans we won't be burdened with the network hit. See EJB 2.0 specifications. Dave -Original Message- From: Lachezar Dobrev [mailto:[EMAIL PROTECTED]] Sent: Monday, August 06, 2001 11:26 AM To: Orion-Interest Subject: Re: Concurrency Hi. Reposting this message. the next has already been received. This list lacks stability a lot. Not sure, if this has something to do with your problem. 1: java.util.List is an Interface. You can't have the Interface live, except in a class/object, implementing this interface. For an instance the class java.util.AbstractList is the first one, that implements this interface. so having a parameter/return value of type java.util.List means actualy an instance of a class implementing java.util.List. 2. Orion subclasses AbstractList in many places to implement it's lists. Quite handy. One place is the list OR-mapping, com.evermind.server.ejb.ORList. Are you sure, you don't use container managed Lists? BTW. I'm not exactly sure how do you access Concurently a StateLess Session Bean? I tried and got no result... Hmmm... Be well: Lachezar Hi ted, You are right, but the exeption is in an AbstractList and I'm not using any extension of AbstractList. In addition, the exeption is in com.evermind pakage. I have analyzed this package and I've seen that the method com.evermind.server.rmi.RMIServer.gb uses a java.util.List. Therefore I suppose that it is an orion problem when the SLSB is created. Thanks, Esteban -Original Message- From: Rice, Ted [mailto:[EMAIL PROTECTED]] Sent: Friday, July 27, 2001 1:45 PM To: Orion-Interest Subject: RE: Concurrency you are working with a non-synchronized collection. if you get an iterator and attempt to modify the backing list with multiple threads you will receive a ConcurrentModificationException. synchronize on the the iterator or list. ./ted -Original Message- From: Lopez Esteban [mailto:[EMAIL PROTECTED]] Sent: Friday, July 27, 2001 3:44 AM To: Orion-Interest Subject: Concurrency Hi Please help me. I am working with a stateless EJB and I have about 250 clients which has to use this EJB. When the clients access to the SLEJB concurretly, the Orion crash, and the server.log shows: 7/4/01 6:45 PM Internal server error java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(Unknown Source) at java.util.AbstractList$Itr.next(Unknown Source) at java.util.AbstractCollection.remove(Unknown Source) at com.evermind.server.rmi.RMIServer.gb(JAX) at com.evermind.server.rmi.ba.run(JAX) at com.evermind.util.f.run(JAX) Anyone knows something about this. Thanks! Esteban.
Re: ipchains and Orion
I recommend using IPTABLES.THIS IS HOW I DO ITworks great...i got ipchains working, but didn't log remoteAddr...probably is a workaround out there, but I recommend iptables (on linux) David Darren Gibbons wrote: Hi all, Apologies if this is the second time for this email -- I sent it first while the listserv was down. We're testing Orion running under Linux, and we'd prefer not to run it as root for obvious reasons. I've currently got it running as user 'orion' on port 8000, and am redirecting requests to port 80 via ipchains. Here is the ipchains command I used to handle the redirect: ipchains -I input 1 -d ip_address 80 -p tcp -j REDIRECT 8000 This is working, but I have two questions: 1) In order to get Orion to work, I had to change the web-site host to [ALL] rather than just the specific IP address. I would prefer not to use [ALL] as it could conflict with the Apache server I also have running on the box. Is there another way to set up this rule? Why can't I just set the host to the same IP address I used in the ipchains command above? 2) If I access the application on port 80, it works fine, until I call response.sendRedirect(somefile.jsp). The redirect will automatically prepend the URL with the server address, directing the user to port 8000. Is there any way I can force the app to always redirect to port 80? Thanks for any advice, 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
jsp:useBean Issue / Epicentric ?
First off, is anyone using Orion with Epicentric Foundation Server 3.5? If so, what version of Orion are you succesfully using it with? It seems that alot of the 'stock modules' (jsp files) and other jsp's that ship with EFS 3.5 aren't using bodyless tags, ie: jsp:useBean foo=bar/jsp:useBean and that Orion (?) is complaining about this: jsp:useBean without a set 'class' or 'beanName' attribute cannot have a body, use a bodyless tag (jsp:useBean ... /) Orion wants you to use a bodyless tag: jsp:useBean foo=bar / Question is, is there a 'legacy' switch somewhere that I can turn on that'll allow the JSPServlet to deal with bodyless tags. Or should I just patch all these .jsp files to actually be bodyless? I'd rather not patch because then I'll have to propogate my changes with each EFS update, and potentially patch other oddities as they arise. Env: jdk 1.3.1, Orion 1.4.5 through 1.5.2, EFS 3.5SP1 Any help is appreciated. -- David S. Kenzik [EMAIL PROTECTED] - http://kenzik.com Original Music - http://text.org
RE: communication among ejbs in different applications
Title: All,The problem is Sun's implementation of the classloader's default constructor. It uses the system classloader instead of the loader that loaded the class. To solve this problem you have to write your own app classloaders to properly handle the parent classloader paradigm for classloader. For a good explanation of the problem read chapter 2 pgs 41-49 in Server-Based Java Programming by Ted Neward. Chapter 3 deals with custom classloader approaches. Remember that Java name spaces are defined by the package, class, and loader of the class. Different loader means different name space, which means a ClassNotFoundException. Dave -Original Message-From: Robert Ren [mailto:[EMAIL PROTECTED]]Sent: Wednesday, July 11, 2001 12:25 PMTo: Orion-InterestSubject: RE: communication among ejbs in different applicationsHi, Juan:So, in your case, you have one ear file, which includes two ejb.jar files.My question is, can we have two ear files? Each application has one.Have a very nice day!Rob-Original Message-From: [EMAIL PROTECTED][mailto:[EMAIL PROTECTED]]On Behalf Of Juan Lorandi(Chile)Sent: Tuesday, July 10, 2001 2:30 PMTo: Orion-InterestSubject: RE: communication among ejbs in different applicationsthis is what I have in mindyourapp.ear|+yourejb1.jar+yourejb2.jarIf ejb-link's are defined correctly, everything should work (works for me) -Original Message- From: Robert Ren [mailto:[EMAIL PROTECTED]] Sent: Martes, 10 de Julio de 2001 18:05 To: Orion-Interest Subject: RE: communication among ejbs in different applications Hi, Juan: Thank for your help. In fact, recently, we tested several combinations of App a and App b. ( Becasue the parent attribute is only for Orion, we gave it up.) And, also we tested the context solution by using JNDI. The results are : Senario 1: If we put the appA.jar in the classPath of appB, and put the appB.jar in the classpath of appA, we can pass the compiling sucessfully, but got Class not defined error when we tried to initialize a context in one EJB in App A to look up the EJB in App B; If we forced the App A to jar with App B, so the appA-ejb.jar file contains both App A classes and App B classes. In this way, we did see the all ejbs in App B via context, but when we cast it, we got CastException error message. Still the old question, can we make this kind call? Thanks! Rob -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Juan Lorandi (Chile) Sent: Monday, July 09, 2001 2:20 PM To: Orion-Interest Subject: RE: communication among ejbs in different applications first, let's get one thing out of the way: 'parent' attribute is a JNDI facility, no more, no less. there still are separate "containers" for each app (this may not be useful in all apps, specially since transactions may not function as expected) it allows for JNDI properties to propagate BOTH ways (they always propagate from father to son, default father being the "default-app") Now, this is where I was aiming to: have apps A, B deployed; do not use "parent" attribute. connect A B apps using JNDI parameterized contexts (see connecting from applet, application in www.orionsupport.com) Pray for correct transaction enroling/2PC. Juan Pablo PS: Are you sure these errors you get are provoked by each App correctly 'seeing' the other? the dump looks like a bug in orion's JMS implementation -Original Message- From: Robert Ren [mailto:[EMAIL PROTECTED]] Sent: Lunes, 09 de Julio de 2001 13:47 To: Orion-Interest Subject: RE: communication among ejbs in different applications Hi,Juan: Thank you for your suggestion. Do you think this kind of calls will violate any J2EE specs? I mean that one ejb in parent application should have one container, and the ejbs in child app should have thire own container. So, the question: does this kind call violate any container specs? It's pretty interesting, in one ejb of the parent app, when a new context initialized, I already saw the all ejbs in child app, but if I try to instance one of them, the ejb got removed, and the server complained that the class is not defined, although, I put the .jar file including all class in the classpath and import the ejb's remote and home interface also. The error is following: The lookup is=com.evermind.naming.MapNamingEnumeration@28c19b the Name is =com.qmarkets.mas.commerce.ejb.CommerceService the Name is =com.qmarkets.mas.attachments.ejb.AttachmentService the Name is =com.qmarkets.mas.product.ejb.ProductService the Name is =com.qmarkets.mas.user.ejb.UserService the Name is =com.qmarkets.mas.contact.ejb.ContactService the Name is =com.qmarkets.mas.deliveryorder.ejb.DeliveryOrderService the Name is =com.qmarkets.mas.mlcaller.ejb.MLCaller the Name is =java:comp the Name is =com.qmarkets.mas.subscriber.ejb.SubscriberService the Name is
RE: problems with classloading and Clients, NoSuchMethodError
Erik, If you want to change classes without restarting the server than you must write your own application ClassLoader. What your experiencing is Java name space isolation. The Java name space is defined by the jar, class, and ClassLoader loading the class, which means that a change to anyone of the three constitutes a different name space. Since your jars and classess do not change, then Orion uses a different ClassLoader for your application and the rmi server. This is surely the case if Orion uses ClassLoader's default constructor for serving ejbs, compiled classes, and rmi requests. See Server-Based Java Programming by Ted Neward for help with what you want to do. Dave -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Tuesday, July 24, 2001 1:44 PM To: Orion-Interest Subject: problems with classloading and Clients, NoSuchMethodError Hi, My problem is as follows. I have debloyed every EJB in a jar and deployed it properly in application.xml. I have for a number of reasons decided to have every EJB in one ejb-jar. All that works fine. I have an ant script that builds every ejb-jar and an jar called app.jar, this jar contains all classes not included in the ejb-jar files. The app.jar is deployed using library path=./app-lib/app.jar / in the orion-application.xml. I'm running an orionserver starting it with com.evermind.server.ApplicationServer in a shell script and adds all the 3party jar files (such as log4j.jar etc etc.) When I start the server it find all the classes and every thing works very fine. If I remove the the library path=./app-lib/app.jar / the ejbs do net get deployed because they lack a number of files (which is in the app.jar) this makes me belive that the deployment of the app.jar works. I then access the server using a client with RMIInitialContextFactory. I then get a NoSuchMethodError on the client java.lang.NoSuchMethodError at com.evermind.server.rmi.ba.invokeMethod(JAX)at com.evermind.server.rmi.a1.invoke(JAX) at __Proxy1.genericFinderVH(Unknown Source) at no.lindorff.kb2.core.client.ApplicantProxyManager.genericFinderVH(ApplicantP roxyManager.java:147) at no.lindorff.kb2.core.client.ApplicantProxyManager.main(ApplicantProxyManager .java:206) If I start the server when the classpath points to all compiled classes it works fine. The classes in the ejb jars and in the compiled classes are the same. If I put on java -verbose it looks like this error is thrown on the server but it does give me any further output. The class loading looks different and continues when I start with a classpath containing all classes If I use reflection and print out all methods on the remote interface the method is there. I do all this because I want to change classes without restarting the server all logs application.log rmi.log etc. tells me nothing. Is there no way to get more verbose output from the server? Has anyone any idea what I'm doing wrong and any points of what to do and/or test Regards Erik Romson
RE: Queue or Topic multicast?
Greg, Only Topic is multicast by specification. To keep all objects on the network updated, simply have any object that is subject to caching to publish the appropriate change-Topic message and those that are interested in the change subscribe to that change-Topic. There is basically two ways to propagate the change: 1) use a text message containing the database reference id so that the correct row can be refetched (IO expense) or 2) use an object message containing a DataObjectChangeEvent object with the old and new values so that the subscriber can determine which of its values change by check the old value (no IO expense). Remember all object of a class will be subscribers to the change message, which means that a subscriber must be able to determine readily (simply) whether the received message needs to be processed or not. Dave -Original Message-From: Greg Matthews [mailto:[EMAIL PROTECTED]]Sent: Tuesday, July 24, 2001 3:15 AMTo: Orion-InterestSubject: JMS: Queue or Topic multicast? dear all, are either of the Queue or Topic parts of the JMS multicast? i.e. once one subscriber pulls the message off the queue, can other subscribers see the message? since each of our clustered servers cache some info, i was thinking that a half-reasonable way of dealing with some stuff being updated on one server would be for the updated server to fire an "i've been updated" message, causing the other servers to refresh their cache. i know i could probably look at entity beans, etc, but would just like an answer to my question if anyone knows. thanks very much, greg.
Re: disabling jsessionid
perhaps play with some of these in orion-web.xml session-tracking autoencode-absolute-urls=true/false autoencode-urls=true/false autojoin-session=true|false cookie-domain=.mydomain.com cookie-max-age=123 cookies=enabled/disabled David At 04:41 PM 7/16/01 -0700, you wrote: is there any way in which the addition of jsessionid to URLs can be disabled?
Re: Log Analysis
I figured I'd update this archive message...I believe there was a minor mistake - the access-log format below reverses the agent and referer. No big deal, however, in some reporting packages it shows top referer's in top browsers...and vice - versa here is a nice monthly access log: access-log format=$ip - $user [$time] quot;$requestquot; $status $size quot;$refererquot; quot;$agentquot; path=/blah/access.log split=month suffix=_-MM / http://httpd.apache.org/docs/mod/mod_log_config.html NCSA extended/combined log format from APACHE WEB SITE %h %l %u %t \%r\ %s %b \%{Referer}i\ \%{User-agent}i\ At 02:23 PM 12/3/00 +0100, you wrote: At 14:47 02.12.00 , you wrote: Anybody using standard tools to analyze logs? Anybody have the format string for apache's combined format set up? So it is a quick fix? David this is what we use and it works with standard analyzer tools like webtrends access-log format=$ip - $user [$time] quot;$requestquot; $status $size quot;$agentquot; quot;$refererquot; path=../log/access-playground.log split=day suffix=_-MM-dd / btw. have you checked the archive? I think this has been posted before. HTH robert (-) 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
applet policy
does anyone know the minimum needed policy to run an applet as an orion (ejb) client?
Auto-reply: Re: UserTransaction
I am on holiday returning back to the office on Tuesday the 19th June. For administrative enquiries please contact Sian Norrie at [EMAIL PROTECTED] or (+44/0) 118 9246080, for technology enquiries please contact Mark Reeves at [EMAIL PROTECTED] or (+44/0) 207 816 7865. I don't know, I've never tried it. I would try it and let the list know the result. You're going to need to set the jndi properties using a jndi.properties file in your client. This is well documented elsewhere in this list. Once the jndi context is set up correctly, I see no reason why it wouldn't work. Jeff. Phan Anh Tran wrote: Yeah, but can I do that from a stand-alone APP running in separate VM? Anh - Original Message - From: Jeff Hubbach [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Friday, June 15, 2001 6:05 AM Subject: Re: UserTransaction Check www.orionserver.com, under the FAQ link: How do I get a reference to the TransactionManager? import javax.naming.*; import javax.transaction.*; ... TransactionManager manager = (TransactionManager)new InitialContext().lookup(java:comp/UserTransaction); Jeff Hubbach Phan Anh Tran wrote: With orion, Is it possible to look up a user transaction outside an EJB (a stand-alone app for example)? Thanks -- Jeff Hubbach Internet Developer New Media Designs, Inc. www.nmd.com _ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com -- Jeff Hubbach Internet Developer New Media Designs, Inc. www.nmd.com
Re: UserTransaction
hi guys, i m new to ejb and want to develop them using the orion server...could someone explain where do i put up my ejbs and my jsps..i mean what im looking for is a directory pattern...I tried alot of combos but...does not seem to work... thanks in advance David
Re: Oracle deal gag
From: Jay Armstrong [EMAIL PROTECTED] EW, [snip] After my criticism, subsequent messages from others on the original thread (RE: Oracle deal) also went through fine, but none of them were critical of Ironflare. In fact, all of them either told me to shut up (Greg Stickley and Hani Suleiman, who described the problem as a pebble), were complimentary of the deal, and/or tried to change the subject. Seems odd to me that not one, single critical comment about the most important business deal in Orion Server's history came after mine, unless the thread was being censored. Have you considered the remote possibility that everybody else frequenting this forum might just happen to not share your opinion regarding the deal? I would point out one of Karl's statements in his reply to me: The purpose of the orion-interest has always been to promote the exchange of experiences and knowledge between our users, not as a channel to communicate with us. Sounds fair enough. Paying licensees enjoy the benefits of having a support channel directly to Ironflare. Non-paying users enjoy the benefits of having a public forum in which to discuss issues regarding the Orion product. The state being as it is, at Ironflare, with very few employees so far, and the focus being on development, I would find it surprising to see either Karl or Magnus spending lots of time in this forum. Should a significant portion of the users of this forum come to the conclusion that this forum is unfit for its intended purpose, there is a very simple solution: Start another one, e.g an egroup. I interpret the statement above to be a veiled warning that big brother is watching and not to criticize Ironflare via orion-interest. Oh dear. Let's see if this one comes through, to test the theory. Ironflare: - When it comes to announcing major changes and/or updates in the Orion product and/or the Ironflare company, you, at this time, suck! - Your official website is among the most static ones I have ever seen. You should put more effort in publishing current information regarding the product and the company on a regular basis, as in daily or at least weekly, on the website. If the irony wasn't obvious; I, for one, find the very idea that Ironflare would try to censor this forum ludicrous. I would be _extremely_ surprised to find my criticism above being removed for any reason. I would be happy to receive any feedback from Ironflare regarding it, though, but that seems unlikely at this time, this forum not being an official channel. I have found that an email directly to Ironflare tends to get more attention. I am not saying that I wouldn't like Ironflare to more actively participate in this forum. On the contrary, I think that would be great! But _not_ if it affects development and bug squashing adversely. _DO_, by all means, update the website more regularly, though! Don't you also find it odd that Ironflare did not make this announcement? Rather, it came from Bryan Young's discovery after trying oc4j. My guess is that Ironflare, possibly under orders from Oracle, wanted to keep this quiet and is now attempting damage control. Could you please elaborate on exactly how you came to that conclusion? If it's a list problem, okay, but how can we possibly know? Time will tell, though it could also be that open discussions are not and have never been allowed in this interest group. Ridiculous. It might be that I am a Swede myself, but to me it just seems totally unlikely, from what I have heard and read about Karl Magnus. Let's hope I am not proven to be wrong. That would be a sad day indeed. Jay Best regards, David
Resource connections other than SQL connection
I need a resource connections that is not a connection to a RDBMS . Does Orion support these connections? If not -- when will there be support? If so, then what do I need to do to get this connection? Dave
JNDI help please
I am desperately trying to understand how the JNDI service works. I want to be able to lookup EJBs thru the fully specified path, i.e java:comp/env/ejb/BeanJndiName, but it only works with BeanJndiName directly. This is not so much problem as the second one: I store environment vars in web.xml. These I can only retrieve through a reative lookup too (i.e. just the name of the variable without java:comp/env prepended). Why do I want to use the fully specified URL/path you say? Well, I want to be able to access the environment variables set in web.xml from the EJB layer, but here it only works if I specify ../EnvVarName. I want to have a general code doing these lookups that is being accessed from both the web- and EJB layer, but without a fully specified path, it won't work. /David David Ekholm, System Architect Net Entertainment Hammarby Kajväg 14 120 30 Stockholm, Sweden Phone: +46(0)8 55 69 67 11, mob: +46(0)70 486 77 38 ICQ: 410 993 David Ekholm.vcf David Ekholm.vcf
JNDI help please
I am desperately trying to understand how the JNDI service works. I want to be able to lookup EJBs thru the fully specified path, i.e java:comp/env/ejb/BeanJndiName, but it only works with BeanJndiName directly. This is not so much problem as the second one: I store environment vars in web.xml. These I can only retrieve through a reative lookup too (i.e. just the name of the variable without java:comp/env prepended). Why do I want to use the fully specified URL/path you say? Well, I want to be able to access the environment variables set in web.xml from the EJB layer, but here it only works if I specify ../EnvVarName. I want to have a general code doing these lookups that is being accessed from both the web- and EJB layer, but without a fully specified path, it won't work. /David
Re: Interests sake
Hmm. What _Java_ needs is a way to render graphics (incl. fonts) without relying on a running host windowing system. And, what do you know, that is actually coming our way. :-) I do _not_ need/want a GUI running on my UNIX/Linux servers, thank you very much. Be it X11 or a (highly unlikely) replacement. /David - Original Message - From: Jeff Schnitzer [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Friday, May 04, 2001 5:23 AM Subject: RE: Interests sake From: Alex 'Kazuma' Garbagnati [mailto:[EMAIL PROTECTED]] With Linux it's much easier to configure Java apps as daemons, but I can't render my dynamic images with any reasonable quality - XWindows renders fonts like a three-year-old with a half-eaten crayon :-) You should try pja. It does not require any XWindow server running and I use the same fonts available on win... I tried it. Didn't produce fonts much (if at all) better than XWindows. Also tried the xvfb, which was by far the worst option. One thing you can say about MS Windows is that it does an excellent job of rendering text :-) What Linux needs is a ground-up replacement for XWindows, IMHO. Jeff
Re: Interests sake
I haven't read the docs regarding the upcoming JDK1.4 release in any detail yet. Does anybody know how far it goes in solving the kind of problem discussed here? Anything left out that should have been included as far as people here are concerned? /David - Original Message - From: Kemp Randy-W18971 [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Friday, May 04, 2001 3:00 PM Subject: RE: Interests sake The only problem I found with PJA is that it replaces some core Java packages from Sun with the PJA packages. This may not be a problem, as long as new releases of the JDK and PGA don't present problems. -Original Message- From: David Kinnvall [mailto:[EMAIL PROTECTED]] Sent: Friday, May 04, 2001 1:46 AM To: Orion-Interest Subject: Re: Interests sake Hmm. What _Java_ needs is a way to render graphics (incl. fonts) without relying on a running host windowing system. And, what do you know, that is actually coming our way. :-) I do _not_ need/want a GUI running on my UNIX/Linux servers, thank you very much. Be it X11 or a (highly unlikely) replacement. /David
RE: Interests sake
-Original Message- From: Adam Cassar [EMAIL PROTECTED] Reply-To: Orion-Interest [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Subject: Interests sake Date: 03 May 2001 15:53:28 +1000 Hi all, For interests sake, what OS is everyone on the list running orion on? Windows 2000? WinNT Linux? MPE/iX 6.5 and IMAGE/SQL
list orion here
orion should be listed here: http://www.javaworld.com/javaworld/tools/jw-tools-appserver.html
jsessionid errors
anybody notice that once in a while browsers complain about the way orion encodes session ids? why doesn't the session ID get encoded like: http://www.mysite.com/mypage.jsp?arg=blahjsessionid=BEOKGFBKKKPI what are advantages and disadvantages of above compared to orions method thanks David
Re: A Swedish Idea
;-) Forgot the funny side of it. It has been a long week. /David - Original Message - From: "Kemp Randy-W18971" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Sent: Friday, April 20, 2001 2:53 PM Subject: RE: A Swedish Idea Yes, but it does. It provides comic relief. One tread quest asked what happens if Orion when under. No problem. Eventually Jboss and Enhydra will get there. And no, they really don't compete with Orion. There's enough of the pie to go around, and I want them all to succeed, and get the big overpriced servers a run for the money. Should Mysql and Orion talk? Does it need to be formal? It could go something like this via the phone. Mysql: We should talk, no? Maybe get together for a brew or go ice fishing? Orion: Sounds good, no? A tourist stopped by, and asked what can we do in Sweden. I told him to watch the moose dance on the ice. Mysql: They liked it, no? Orion: Couldn't tell. They said the moose fell all over his own feet. The tourist went on a Wednesday. Mysql: No wonder. You should have them go on weekends. Weekdays are amateur nights. -Original Message- From: David Kinnvall [mailto:[EMAIL PROTECTED]] Sent: Thursday, April 19, 2001 2:32 PM To: Orion-Interest Subject: Re: A Swedish Idea They never get there about as much as this thread in its current shape provides any value whatsoever to Orion users. IMHO. /David
Re: A Swedish Idea
They never get there about as much as this thread in its current shape provides any value whatsoever to Orion users. IMHO. /David - Original Message - From: "Hani Suleiman" [EMAIL PROTECTED] To: "Orion-Interest" [EMAIL PROTECTED] Sent: Thursday, April 19, 2001 7:08 PM Subject: RE: A Swedish Idea Yes, and like many turtles, they never get there. Believing in fairy tales is not a good basis for conducting business. The turtle and rabbit story is a way to tell average children 'yes, you might be stupid and slow, but you should keep trying'. I don't think you should take it too seriously. Hani
RE: Problem with @ character submitted in POST request through CGIServlet, TunnelServlet
Strangely enough, I ran into this problem yesterday. It seems that different browsers report the value of the CONTENT-LENGTH variable differently. for reasons I acn't conceive of, MSIE deducts 2 characters from the length it reports for each @ in the form output. Netscape does not. I don't know if the CGI servlet uses teh CONTENT-LENGTH variable to terminate its read of teh form output, but if it does, that may be where the problem lies. This may be a job for the folks at orion to look into. Dave Oliver X-From_: [EMAIL PROTECTED] Tue Apr 3 04:45:11 2001 Date: Tue, 03 Apr 2001 12:34:55 +0200 From: Peter Beck [EMAIL PROTECTED] Organization: FQSD X-Mailer: Orion ListServer X-Accept-Language: en,de-AT,de-DE To: Orion-Interest [EMAIL PROTECTED] Subject: Problem with "@" character submitted in POST request through CGIServlet, TunnelServlet Reply-To: Orion-Interest [EMAIL PROTECTED] Sender: [EMAIL PROTECTED] There's a bug in the CGI servlet. What happens is: I have an HTML form which is transmitted via POST request. Two parameters are passed: email and action what should arrive is: email=peterb%40sbox.tugraz.at action=Login When perl gets the request the second parameter is truncated [EMAIL PROTECTED] action=Log This happens only if the first parameter contains the "@" character. I suppose the same bug affects the TunnelServlet too. I already informed Orion support about that some time ago, but didn't get a response, and 1.4.7 still doesn't correct this issue. For us this trivial bug is absolutely critical because we need to have orion handle requests and SSL in the front. Certain apps (the IMP PHP webmail) should be tunneled to apache, which still doesn't work! Other URL-encoded characters don't seem to have a negative effect, but the "@" causes the problem with the following parameter. I read on the list that also others have had problems with the Tunnel Servlet and POST requests. Maybe we can track down the bug a bit deeper. I entered it in Bugzilla as Bug Nr. 387 and hope that it finally will be taken care of. Regards, Peter ---
Simultaneous Username/Password Detection
I am building a system that protects content by username and password. No problem there. The more complicated part of the system prevents two people using the same username and password at the same time on our web site. I have a plan to do this, but I haven't seen if there are any common methods/techniques/strategies/design patterns to do this in a jsp environment. Nor do any of our developers have any experience in doing this. Currently, I am just going to store server generated sessionId's and userId's with other necessary data/time checks..of course the user must be able to take over use of that username and password because the browser may crash...or they forget to hit logoutand also I must flag when this happens too many times in a period of time as a red flagobviously with an html web site, there is no 100% accurate way to only have one user using the site at once, however, I can build it well enough that 95% of the users that are giving out their passwords won't because it is annoying to keep re-logging in and being locked out for an hour if you trip one of our red flags.thoughts? experiences? This is not for a porn site, however, I bet that porn people have something like this. David
Re: redhat 7
I am having great success with Redhat 7.0 jdk 1.3/MySQL/javaexchange.com connection broker (autoreconnect=true) and the mm.mysql driver JDBC driver. David At 01:37 PM 3/22/01 -0800, you wrote: Any experience with the latest redhat distro and orion? Has anybody seen any conflicts?
RE: How to install 128 bit cert....
The problem for me was the the type selection (as noted below) and the cert file NEEDS a carriage return at the end of it. Just open it up in an editor and go to the end of the file and hit enter once or twice. -Original Message- From: McLellan, Richard [mailto:[EMAIL PROTECTED]] Sent: Tuesday, March 20, 2001 5:14 AM To: Orion-Interest Subject: RE: How to install 128 bit cert If you are getting the Cert from Thawt make sure that you are selecting the "Test SSL Chained Cert" If you are selecting the 128 it wont work I just tried it. You do get 128 Bit Encryption if you use the Chained Cert.. -Original Message- From: mohan krishna [mailto:[EMAIL PROTECTED]] Sent: Tuesday, March 20, 2001 12:45 AM To: Orion-Interest Cc: [EMAIL PROTECTED] Subject: How to install 128 bit cert Hi to all, I have been following the how-to "Setting up a secure site using ssl" on Windows NT+jdk 1.3 and I get the following error C:\certificateskeytool -keystore keystore -keyalg "RSA" -import -trustcacerts - file my.host.com.cer -storepass 123456 keytool error: java.security.cert.CertificateException: Unsupported encoding 1.Plz let me know whether the problem is with ORION or with the cert? 2.Is ORION1.3.8 in a position to support 128bit encryption? 3.Have we to download / set any other things to make Orion to use 128bit? I have tried with Netscape 4.7 and Explorer 5. Any idea? Get free email and a permanent address at http://www.netaddress.com/?N=1
Servlet Mapping Tag
I don't understand how Orion has implemented the servlet-mapping tag for the web.xml file. According to the documentation, I need to declare a pattern /*.thePattern. When I do something like the following, it works. However, I need a separate pattern for each servlet in order for Orion to invoke a unique servlet. My questions are: 1. Is the servlet-mapping tag necessary. (I couldn't invoke a servlet without it.) 2. How is Orion expecting this to be used? servlet servlet-namesnoop/servlet-name servlet-classSnoopServlet/servlet-class /servlet servlet-mapping servlet-namesnoop/servlet-name url-pattern/*.1/url-pattern /servlet-mapping servlet servlet-namedh/servlet-name servlet-classdh.TestServlet/servlet-class /servlet servlet-mapping servlet-namedh/servlet-name url-pattern/*.2/url-pattern /servlet-mapping
Where do I put img files?
I'm fairly new to Orion usage, and the placement of files in the directory and in the various .xml files has me confused. For instance, where do I put an image file so that it can be found, and how do I refer to it in the HTML code so that the reference can find the file? If there is a FAQ with this answer, please let me know, as I did look at the FAQ on the orionserver.com site and did not find an answer. Many thanks, David Groves [EMAIL PROTECTED]
Re: JDom and Orion
Actually, no. No problem at all! /David On Sun, 11 Mar 2001, Randahl Fink Isaksen wrote: Well, David Kinnvall, did you ever get into any trouble from replacing the versions of Xerces and Xalan in Orion? Randahl -- David, [EMAIL PROTECTED]
Re: AW: Java ftp
http://www.savarese.org/oro/products/NetComponents.html At 01:08 PM 3/2/01 -0500, you wrote: There is also a nice FTP package at: http://www.gjt.org/servlets/JCVSlet/list/gjt/com/fooware/net tim. Multithreaded FTP-Bean (OpenSource IBM). Would not reccommend it in a EJB-Class, since it seems to be multithreaded. http://www10.software.ibm.com/developerworks/opensource/cvs/ftp/ Manfred Regele ADIG Investment GmbH 22 MethodenTools Richard-Reitzner-Allee 2 85540 Haar Tel: 089/46268-308 mailto:[EMAIL PROTECTED] http://www.adig.de -Ursprngliche Nachricht- Von:John Miller [SMTP:[EMAIL PROTECTED]] Gesendet am:Freitag, 2. Mrz 2001 10:48 An: Orion-Interest Betreff:Java ftp Off topic, but does anyone know a way of using Java for FTP'ing? Johnny BUY YOUR 2001 ISA AT INTERACTIVE INVESTOR'S NEW ISA CENTRE - visit http://www.iii.co.uk/isa for a choice of 400+ funds, market leading discounts and access to expert advice. FANCY A FREE ISA? Enter our competition now at http://www.iii.co.uk/isa Terms and Conditions apply and are available online. Issued by Interactive Investor Trading Limited, regulated by the SFA.
RE: FAQ-O-MATIC
On Thu, 22 Feb 2001, Tim Endres wrote: More than anything else, though, I think Orion needs a FAQ-O-MATIC. Seconded! +1 -- David, [EMAIL PROTECTED]
Re: restarting orion
Port 90 looks wrong - you should use the admin port not the http port (just leave out :90) java -jar admin.jar ormi://localhost admin mypassword -restart Peter Peltonen wrote: When I give the command "java -jar admin.jar ormi://localhost:90 admin mypassword -restart" I get the error message: Error: 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 Here's some background of my fresh installation: I've installed Orion 1.4.5 on RedHat Linux 6.2 that has j2sdkee-1_2_1 and jdk1.2.2 installed on it. I followed the instructions in Installation Guide and unpacked Orion to /usr/src/orion as root. I ran the command "java -jar orion.jar -install" which asked for an admin password. I gave it a one. I started Orion with "java -jar orion.jar". I tried and I can access the server with my web browser. What's wrong, why won't my Orion restart? Regards, Peter -- David Smith Software Development Manager e-Net Software Ltd [EMAIL PROTECTED]
Re: R: Why is Netscape slower with Orion?
*sigh* On Fri, 9 Feb 2001, Eric Hodges wrote: [snipped suggestion to flatten tables for broader browser support] Are you sure it's not: Don't use Netscape. Sure. And only use English. And require Flash. And ... A very good way to NOT reach the broadest audience possible. Great strategy. Maybe I should adopt it? Or perhaps not... -- David, [EMAIL PROTECTED]
Re: SSL Attributes
Never mind everybody. It looks as if the latest beta version (1.4.7) of Orion has finally started implementing these attributes. It does appear that the key-size is just a placeholder though so will always return 0 at this point so If you're testing, you probably want to test by cipher-suite names. Dave "David C. Papayoanou" wrote: I can't seem to find either javax.net.ssl.cipher_suite or javax.servlet.request.cipher-suite attributes anywhere in Orion. The second of which is required to be compliant with Servlet Spec 2.3, yet it's not even in the latest version (1.4.5) of Orion. I need to get at either the cipher suite name or key size attribute of a SSL connection which is possible in numerous other and older servlet engines. I would prefer to be able to get at this in a Filter now that 1.4.5 truly supports filters. I've searched high and low and written to Orion repeatedly to no avail. If anyone knows anything it would be very helpful. Dave
SSL Attributes
I can't seem to find either javax.net.ssl.cipher_suite or javax.servlet.request.cipher-suite attributes anywhere in Orion. The second of which is required to be compliant with Servlet Spec 2.3, yet it's not even in the latest version (1.4.5) of Orion. I need to get at either the cipher suite name or key size attribute of a SSL connection which is possible in numerous other and older servlet engines. I would prefer to be able to get at this in a Filter now that 1.4.5 truly supports filters. I've searched high and low and written to Orion repeatedly to no avail. If anyone knows anything it would be very helpful. Dave
Re: orion and mysql?
I found it very easy...I use: http://mmmysql.sourceforge.net/ - jdbc driver http://javaexchange.com/ - connection pooling One variable i had was w/javaexchange's DBBroker, set AutoReconnect=true... so far so good...been using awhile David At 05:20 PM 1/30/01 +0100, you wrote: Hi, is there any simple how-to for setting up mysql with orion available? Or can someone explain me how to do it? thanks
Re: orion and mysql?
I just switched to latest and greatest of 3.23 tree from the greatest of the 3.22 tree...so far so goodeven updating the working server was easy. It's fantastic for medium size web sitesI haven't played with the Berkeley DB transactions yet. http://www.mysql.com/doc/B/D/BDB.html here are some excerpts: 'Berkeley DB (http://www.sleepycat.com) has provided MySQL with a transaction-safe table handler. This will survive crashes and also provides COMMIT and ROLLBACK on transactions. In order to build MySQL Version 3.23.x (BDB support first appeared in Version 3.23.15) with support for BDB tables, you will need Berkeley DB Version 3.2.3h or newer which can be downloaded from http://www.mysql.com/downloads/mysql-3.23.html. This is a patched version of Berkeley DB that is only available from MySQL; the standard Berkeley DB will not yet work with MySQL'. Source for DB stuff is at: http://www.mysql.com/downloads/mysql-3.23.html http://www.mysql.com/Downloads/db/db-3.2.3h.tar.gz David At 04:15 PM 1/30/01 -0500, you wrote: I found it very easy...I use: http://mmmysql.sourceforge.net/ - jdbc driver http://javaexchange.com/ - connection pooling One variable i had was w/javaexchange's DBBroker, set AutoReconnect=true... so far so good...been using awhile Which mysql are you using? Not all versions support transactions. tim.
Re: Re: Port forwarding
YesI got it working by binding orion to host="[ALL]" and port="10080" and executing the following two: echo "1" /proc/sys/net/ipv4/ip_forward ipchains -I input 1 -d MYIP 80 -p tcp -j REDIRECT 10080 It is odd that i had to do thatI originally was going to bind all instance of orion to different IPs but all on port 10080.but because this solution works effectively I will have each instance bind to a different port and [All]ipchains then redirects to appropriate server through above command...I will be talking to redhat about this, if I find out more I'll let you knowAlthough this solution appears effective and I will probably not look into anymore unless dealing with the new 2.4 kernel that has different firewall/portfw features (Net Filters).
Port forwarding
Has anybody gotten port-forwarding to work? I want orion to run as non-root user on Linux.I did see: http://www.orionsupport.com/articles/unixprocess.html The following is an excerpt: IP Chains (ipfw) IP Chains is a program that comes with recent versions of Linux that uses the ipfw library to specify rules for TCP/IP packets. For information about using it, refer to the howto. Here's a simple rule to tell all incoming TCP packets destined for port 80 to be forwarded to port 10080: [root@myhost]$ ipchains -A input --destination-port 80 -p tcp -j REDIRECT 10080 Warning: Use ipchains at own risk... You are recommended to read the documentation first, and have the machine in easy reach. This command needs to be executed each time the system is booted, so you may want to place it in a startup file somewhere. I tried ipchains rule with one change: ipchains -A input -d 192.168.0.4 80 -p tcp -j REDIRECT 10080 it didn't work. any suggestions? If anyone has working on one ip only (on a machine that has multiple ips like mine)...please send output of 'ipchains -L'...and any other ipmasqadm table output... Thanks David
Re: Please Help Me, How to congfig Postgres DataSours on Orion?
Not quite right, the class line is wrong - this should be the driver manager class, not the driver class i.e. class="com.evermind.sql.DriverManagerDataSource" Whether the driver is postgresql.Driver or org.postgresql.Driver depends on the driver version. Mike Cannon-Brookes wrote: Easy, the driver class is org.postgresql.Driver - fix it and you're away.Mike -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of urey Sent: Wednesday, November 22, 2000 7:50 PM To: Orion-Interest Cc: Orion-Interest Subject: Please Help Me, How to congfig Postgres DataSours on Orion? Dear, I used Orion 1.3.8, Postgres 6.5,and its JDBC Driver jdbc6.5-1.2.jar.I'm config the Orion DataSours: data-source name="Postgres" class="postgresql.Driver" location="jdbc/javatest" pooled-location="jdbc/javatest" xa-location="jdbc/xa/javatest" ejb-location="jdbc/javatest" url="jdbc:postgresql://192.168.0.88/javatest" connection-driver="postgresql.Driver" username="postgres" password="" schema="./database-schemas/postgresql.xml" />And copy the jdbc6.5-1.2.jar to Orion\Lib.But When I run Orion it's said: "Error initializing server: Unknown DataSource type: postgresql.Driver" I don't know how to config Postgres DataSours, and how to write the line Class="" and connection=""? and where can i get more info. of this?help me Please.Thank you!yoursUrey - Original Message -From: "Kays, Jeff" [EMAIL PROTECTED]>To: "Orion-Interest" [EMAIL PROTECTED]>Sent: Thursday, December 21, 2000 8:22 AMSubject: RE: Database behind entity beans? > We're using Postgreslql with Linux. Seems to be working great, ask again in > a > couple of months when we're finished with our prototype. > > j > > > -Original Message- > > From: Hegyi Tibor [SMTP:[EMAIL PROTECTED]] > > Sent: Wednesday, December 20, 2000 4:20 AM > > To: Orion-Interest > > Subject: Database behind entity beans? > > > > Hi all, > > > > I just wonder what options we have for selecting the proper RDBMS/OODBMS > > to serve as persistent storage for our BMPs/CMPs or just for being > > accessed via JDBC. Oracle is the obvious choice, but might be rather > > expensive. > > > > I would like to hear some opinion on the databases you're using with > > Orion. > > > > Thanks, > > > > Tibor > > > > > > > -- David Smith Software Development Manager e-Net Software Ltd [EMAIL PROTECTED]
SV: Access EJB's from a standalone client.
I'm sorry I forget to tell you that you also have to add namespace access in the application-deployments/yourAppName/orion-application.xml file too (i.e on the server side only). Like this (in my case) namespace-access read-access namespace-resource root="" security-role-mapping name="lt;jndi-user-rolegt;" group name="administrators" / group name="users" / /security-role-mapping /namespace-resource /read-access write-access namespace-resource root="" security-role-mapping name="lt;jndi-user-rolegt;" group name="administrators" / group name="users" / /security-role-mapping /namespace-resource /write-access /namespace-access Also in $ORION/config/principals.xml I have set up normal and admin users and their passwords. It is this information that is put into the jndi.properties file on the client side I referred to in my previous post. /David -Ursprungligt meddelande- Från: Martin Andersson [mailto:[EMAIL PROTECTED]] Skickat: den 22 december 2000 10:17 Till: Orion-Interest Ämne: RE: Access EJB's from a standalone client. Thanks for your help. Even though I followed you instructions this error ocurred. java.lang.SecurityException: Not allowed to look up java:comp/env/ej b/CalendarReminderHome, check the namespace-access tag setting in orion-applicat ion.xml for details I thought that you didn't need any settings in the XML files when you used this syntax? Properties prop = new Properties(); prop.setProperty("java.naming.factory.initial","com.evermind.server.rmi.RMII nitialContextFactory"); prop.setProperty("java.naming.provider.url","ormi://foo.com/appName"); prop.setProperty("java.naming.security.principal","admin"); prop.setProperty("java.naming.security.credentials","123"); Context con = new InitialContext(prop); Any ideas? /M Andersson -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of David Ekholm Sent: 21 December 2000 17:21 To: Orion-Interest Subject: RE: Access EJB's from a standalone client. In order to connect a stand-alone client to my EJBs I place a jndi.properties file next to the .class files of the client like this -- java.naming.factory.initial=com.evermind.server.rmi.RMIInitialContextFactory java.naming.provider.url=ormi://hostNameOfOrionServer/yourAppName java.naming.security.principal=admin java.naming.security.credentials=passwordOfAdmin -- By using the RMIInitialContextFactory I don't have to deal with creating an extra META-INF directory + XML file for the client. If I want to leave the jndi.properties file out completely, I can put the content inside a Properties object and pass it as parameter to new InitialContext(). Then I copy these jar files from the orion directory to the client computer: ejb.jar, jndi.jar, mail.jar, orion.jar, xerces.jar (2.86 MB in total) I finally run the client and pass the path of the following jar files as classpath: orion.jar, ejb.jar, jndi.jar I also add the path to the ejb.jar file containing the home- and remote interfaces of my EJB application. Orion will automatically and instantly create stub code from the interfaces when I run the application. /David
RE: Access EJB's from a standalone client.
In order to connect a stand-alone client to my EJBs I place a jndi.properties file next to the .class files of the client like this -- java.naming.factory.initial=com.evermind.server.rmi.RMIInitialContextFactory java.naming.provider.url=ormi://hostNameOfOrionServer/yourAppName java.naming.security.principal=admin java.naming.security.credentials=passwordOfAdmin -- By using the RMIInitialContextFactory I don't have to deal with creating an extra META-INF directory + XML file for the client. If I want to leave the jndi.properties file out completely, I can put the content inside a Properties object and pass it as parameter to new InitialContext(). Then I copy these jar files from the orion directory to the client computer: ejb.jar, jndi.jar, mail.jar, orion.jar, xerces.jar (2.86 MB in total) I finally run the client and pass the path of the following jar files as classpath: orion.jar, ejb.jar, jndi.jar I also add the path to the ejb.jar file containing the home- and remote interfaces of my EJB application. Orion will automatically and instantly create stub code from the interfaces when I run the application. /David
Re: JDom and Orion
Hi Mark, and the list, I ran into this as well, just two days ago. I tried putting the new xerces.jar in WEB-INF/lib as well as in orion/lib, with no effect. Finally I simply replaced the $ORION_DIR/xerces.jar with the new one as you are thinking about. It worked nicely, and I have not seen any ill effects from it yet. JDOM is very nice! I guess your question is still valid though: Are there any bad effects from doing this that will surface along the road that I haven't seen yet? Something that is not triggered by my current code? Or is Orion compatible with newer versions of Xerces? Oh, almost forgot, I took the opportunity to replace the old Xalan with the latest one as well... Regards, David. On Fri, 15 Dec 2000 [EMAIL PROTECTED] wrote: Hi all, I am trying to use the most excellent JDom in my web app on Orion (1.3.9) and running into a little snag. For certain parts of its funcationality, JDom requires a very recent version of Xerces. The datestamp on it is Sep 1, 2000 and it is approx 1,464KBs. As you can tell this is almost three times as big as the xerces jar that is shiped with Orion. I have tried to include the new xerces.jar in the /WEB-INF/lib directory of my war file but to no avail. Orion seems content to pick up its version of the jar (I imagine its a classloader thing). So my question is, is it ok to swap out Orion's old xerces.jar for the new one? Will I run into unforseen trouble down the road? Is there another way of solving this problem that i am unaware of or too ignorant to figure out? thanks a bunch... mark Mark R Mascolino The Procter Gamble Co. [EMAIL PROTECTED] Reach me by - Email: [EMAIL PROTECTED], WWW: http://www.dtek.chalmers.se/~d0dak/ - --/David---
Re: Inconsistent EJB JNDI Locations
How are you ejb-ref entries set up in your ejb-jar.xml? Peter Pontbriand wrote: We haven't been using any jndi.properties file. We've always gotten our contexts from simply invoking the default constructor for javax.naming.InitialContext. Obviously some change in our code or DDs has caused Orion to change its behaviour, but we have no idea what, and cannot waste any more time trying to determine what. Unless anyone has a better idea, I guess we'll have to catch the NamingException thrown with jndiContext.lookup("java:comp/env/ejb/whatever") and retry with jndiContext.lookup("whatever") everywhere we need a home interface - and live without a working env-entry> implementation - while investigating other J2EE server offerings. P.Pontbriand Canlink Interactive Technologies Inc. - Original Message - From: "Tim Endres" [EMAIL PROTECTED]> To: "Orion-Interest" [EMAIL PROTECTED]> Sent: Wednesday, December 13, 2000 9:50 PM Subject: Re: Inconsistent EJB JNDI Locations > Is it possible that your jndi.properties file has changed? From this posting, > and the other posting regarding env-entry>'s, it sounds like your getting an > InitialContext that is not correct. Could this happen if the factory specified > in jndi.properties changed? > > tim. > > > For quite some time, our Stateless Session EJBs have been finding the home > > interfaces for our Entity EJBs using "java:comp/env/ejb/whatever" in the > > context lookup() invocation. Suddenly and for no apparent reason, we now get > > a "javax.naming.NameNotFoundException" exception when doing so. The home > > interfaces are now to be found only if we specify "whatever" in the lookup() > > invocation, without the "java:comp/env" prefix. I've been rooting around for > > an extremely long time now trying to ascertain exactly what it is that we > > might have done to cause this to happen without any luck. Our code has not > > changed in this regard, nor has the version of Orion we've been using > > (1.4.4). > > > > Any ideas as to what has happened? > > > > P.Pontbriand > > Canlink Interactive Technologies Inc. > > > > > > > -- David Smith Software Development Manager e-Net Software Ltd [EMAIL PROTECTED]
RE: Faster encryption
I did a check upon the JSSE spec. It comes in two versions. One for the US and one for non-US countries. The international version does not allow other "service providers" to be plugged-in, thus I am stuck with the slow performance of the Sun JSSE implementation :-((( I hate it when those morons at the US export agency make every effort to hinder the spread of good technology :-( Seems we have to go for hardware encryption to gain speed or set up a cluster of, say, 8 PCs just to get acceptable performance using the JSSE with 128 bit encryption. BTW do anyone know of a native code implementation of JSSE or a significantly faster implementation? /David -Ursprungligt meddelande- Från: Michael S. Kelly [mailto:[EMAIL PROTECTED]] Skickat: den 12 december 2000 01:37 Till: Orion-Interest Ämne: RE: Faster encryption No, SSL will eat up the CPU. It takes CPU cycles to do the encryption, and the more the bits the greater the cost. This is the reason that companies like Intel have developed special hardware devices that will handle the encryption step. -=michael=- == Michael S. Kelly [EMAIL PROTECTED] _ Axian, Inc. [EMAIL PROTECTED] // |_ __(_) ___ _ __ 4800 SW Griffith Dr., Ste. 202 //| |\\/ /| |/ _ \| '_ \ Beaverton, OR 97005 USA _//_| | / / | | |_| | | | | Voice: (503)644-6106 x122 (( // |_|/_/\\|_|\_/|_|_| |_| Fax: (503)643-8425 ``-'' ``-'' http://www2.axian.com Software Consulting and Training == -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
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
Default transaction isolation level
What is the default transaction isolation level for Orionserver? I would like to be able to specify this in datasources.xml, but it seems it is only specifiable in orion-ejb.xml, only pertaining to CMP beans and not session beans. The way think it works, Orion default to "Serializable" as CMP beans seem to obtain exclusive lock when simple getter methods are invoked. A too pessimistic approach IMHO (In my case this causes DeadlockExceptions) /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
Too many exceptions logged
I noticed that all exeptions generated from my EJB layer shows up in the application.log file. I actually only want system exceptions or unhandled exceptions to show up there. Is this configurable. I mean the fact that one of my business methods return a NotEnoughMoneyException should not make it into application.log but rather be handled by my web layer (as is the case). /David "The Las Vegas of Online Gaming" David EkholmSystem ArchitectHammarby Kajväg 14, 120 30 Stockholmtel: +46 (0)8 55 69 67 11mob: +46 (0)70 486 77 38fax: +46 (0)8 55 69 67 07icq: 410993
Deadlock exception when accessing entity bean
During heavy stress testing of my application I noticed that I get the following exception: com.evermind.server.DeadlockException: Transactions was rolled back: timed out, while waiting for primary key for one of my CMP entity beans here I can't see why this happens. The database has not reported any deadlock problem, and there is a row in the database for the primary key I am trying to look up. What can trigger such a problem. The CMP bean has no relations to other beans/tables what so ever, and just a primary-key index on the primary key. /David "The Las Vegas of Online Gaming" David EkholmSystem ArchitectHammarby Kajväg 14, 120 30 Stockholmtel: +46 (0)8 55 69 67 11mob: +46 (0)70 486 77 38fax: +46 (0)8 55 69 67 07icq: 410993
SV: SSL Ipaddres
I successfully obtained a Thawte "Supercert" for 128 bit encryption and successfully installed it in Orion. When given the choice of what type of format to use (from the Thawte web) I choose the generic, most compatible option (don't remember the exact phrase, but you will understand when you see it) /David -Ursprungligt meddelande- Från: Mike Fontenot [mailto:[EMAIL PROTECTED]] Skickat: den 8 december 2000 15:39 Till: Orion-Interest Ämne: RE: SSL Ipaddres as long as your domain remains the same you should have no trouble changing the actual port that SSL requests are serviced on. I'm curious to know exactly what kind of certificate you obtained from Thawte. A few months ago they were unable to produce an actual production cert for Orion. If they can now, let us know what kind you obtained. Regards, Mike Fontenot -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Todd Renner Sent: Friday, December 08, 2000 6:51 AM To: Orion-Interest Subject: SSL Ipaddres We have a Thawte cert. implemented successfully on our server and everything works ok, but now we want to move our server onto a different network, giving the machine a different ipaddress. Will this adversely effect our SSL even though the doname name is the same?Thanks. Todd Renner Bell Howell
Re: org.apache.struts.action.MESSAGE exception with orion 1.4
>> To: '[EMAIL PROTECTED]' >> Subject: RE: org.apache.struts.action.MESSAGE exception with orion 1.4 >> >> Struts 1.0 example (11/15 nightly) is not working on Orion (1.2.9) either. >> It seems something is wrong with 'jndi' as it use jndi to resolve >> 'struts-config_1_0.dtd'. >> >> Here is a common exception ... >> >> java.net.MalformedURLException: unknown protocol: jndi >> at >> org.apache.struts.digester.Digester.resolveEntity(Digester.java:619) >> at >> com.sun.xml.parser.ExternalEntity.getInputSource(ExternalEntity.java:46) >> at com.sun.xml.parser.Parser.pushReader(Parser.java:2768) >> at >> com.sun.xml.parser.Parser.externalParameterEntity(Parser.java:2504) >> at com.sun.xml.parser.Parser.maybeDoctypeDecl(Parser.java:1137) >> at com.sun.xml.parser.Parser.parseInternal(Parser.java:481) >> at com.sun.xml.parser.Parser.parse(Parser.java:284) >> at javax.xml.parsers.SAXParser.parse(SAXParser.java:155) >> at javax.xml.parsers.SAXParser.parse(SAXParser.java:77) >> at org.apache.struts.digester.Digester.parse(Digester.java:754) >> at >> org.apache.struts.action.ActionServlet.initMapping(ActionServlet.java, >> Compiled Code) >> at >> org.apache.struts.action.ActionServlet.init(ActionServlet.java:393) >> at javax.servlet.GenericServlet.init(GenericServlet.java) >> at com.evermind.server.http.HttpApplication.vt(JAX) >> at com.evermind.server.http.HttpApplication.vc(JAX) >> at com.evermind.server.http.HttpApplication.tp(JAX, Compiled Code) >> at com.evermind.server.http.d5.rx(JAX, Compiled Code) >> at com.evermind.server.http.d5.rw(JAX, Compiled Code) >> at com.evermind.util.f.run(JAX, Compiled Code) >> >> -Original Message- >> From: Denis Hanson [mailto:[EMAIL PROTECTED]] >> Sent: Sunday, November 19, 2000 4:12 PM >> To: [EMAIL PROTECTED] >> Subject: org.apache.struts.action.MESSAGE exception with orion 1.4 >> >> Hi all, >> >> I've encountered the ever-popular Missing resources attribute >> org.apache.struts.action.MESSAGE error when trying to access the >> struts-example application using Win NT, orionserver 1.4, jdk1.3 and > > struts > >> from 13Nov. I've searched through the struts message archives and tried > > all > >> the suggestions I could find, but still no luck. (I was able to deploy > > the > >> example on JRun 3.0, but not on orionserver.) >> >> Any help will be greatly appreciated because I definitely want to use >> orionserver instead of JRun. >> >> Here's the error: >> >> javax.servlet.jsp.JspException: Missing resources attribute >> org.apache.struts.action.MESSAGE >> at >> org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:232) >> at /index.jsp._jspService(/index.jsp.java:39) (JSP page line 8) >> at com.orionserver.http.OrionHttpJspPage.service(JAX) >> at com.evermind.server.http.HttpApplication.xa(JAX) >> at com.evermind.server.http.JSPServlet.service(JAX) >> at com.evermind.server.http.d3.so(JAX) >> at com.evermind.server.http.d3.sm(JAX) >> at com.evermind.server.http.ef.su(JAX) >> at com.evermind.server.http.ef.dn(JAX) >> at com.evermind.util.f.run(JAX) >> >> Here's my application.xml entry: >> >> web-module id="strutsExample" >> path="d:\struts\webapps\struts-example.war"/> >> >> Here's my default-web-site.xml entry: >> >> web-app application="default" name="strutsExample" >> root="/struts-example"/> >> >> Orion is at d:\orion and struts is at d:\struts. >> >> Thanks, >> >> Denis Hanson -- Klaus Thiele - Personal Informatik AG mailto:[EMAIL PROTECTED] "There's got to be more to life than compile-and-go." -- David Smith Software Development Manager e-Net Software Ltd [EMAIL PROTECTED]
Re: bug in Orion 1.3.8 when creating InitialContext
At 12:11 02.12.00 , Robert wrote: Hi OrionFolk :-) Tonight I downloaded OrionServer 1.3.8 from the stable link off the orionserver.com. There seems to be a bug having to do with InitialContexts that was not there in version 1.0.3. looks like a bug. best you file it in bugzilla with your test code. Done. Thanks. I'm really, really surprised no one's ran into this before. Everyone must use a jndi.properties file to set up their InitialContexts, not the InitialContext constructor that takes a Properties object. Unfortunately, that scenario doesn't work for me. :-( So, what's the normal resolution process here? It looks like it's probably a very simple fix. Will the fix make it into Orion 1.3.9 and then will 1.3.9 become the new stable version of Orion? Just wondering what the process is here. Thanks, David -- David Sims [EMAIL PROTECTED] Sims Computing, Inc. www.simscomputing.com
Re: bug in Orion 1.3.8 when creating InitialContext
I wrote: Tonight I downloaded OrionServer 1.3.8 from the stable link off the orionserver.com. There seems to be a bug having to do with InitialContexts that was not there in version 1.0.3. For what it's worth, the bug is triggered from an application client. The bug also exists in Orion 1.4.0 and 1.2.9. The bug is *not* triggered if you never call close() on your InitialContexts, but I'm in the situation where my company's J2EE software component has to work with multiple application servers, so not calling close() is not an option. :-/ Thanks again. Here's hoping a fix shows up soon. :^) cheers, david -- David Sims [EMAIL PROTECTED] Sims Computing, Inc. www.simscomputing.com
Log Analysis
Anybody using standard tools to analyze logs? Anybody have the format string for apache's combined format set up? So it is a quick fix? David
Entity bean question
I wonder if the EJB specification guarantee that there is only one instance of an entity bean representing a particular row in a database? If so, does that also hold true for a cluster of EJB servers? /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
bug in Orion 1.3.8 when creating InitialContext
Hi OrionFolk :-) Tonight I downloaded OrionServer 1.3.8 from the stable link off the orionserver.com. There seems to be a bug having to do with InitialContexts that was not there in version 1.0.3. If you create an InitialContext object and pass in a Properties object to the constructor containing the InitialContextFactory and so on, you can successfully create an InitialContext object. Then you can call close() on it. If you try to create it the second time, a NullPointerException is thrown out. Below is a small, simple class that definitively shows the bug. A NullPointerException is thrown. The bug does not occur in Orion 1.0.3; no NPE is thrown. Below my signature (see below) is the code and after that is the stack trace. I searched the archives and found nothing on this. Does anyone know about this? Is there a workaround or some kind of fix? Any info at all? thank you, david -- David Sims [EMAIL PROTECTED] Sims Computing, Inc. www.simscomputing.com # import java.util.*; import javax.naming.*; /** In OrionServer 1.3.8, if you create an InitialContext, as shown below, then close it, then try to create a second one, a NullPointerException is thrown. */ public class OrionBug { private static final String ICF = "com.evermind.server.rmi.RMIInitialContextFactory"; public static void main(String[] args) { try { Properties props = new Properties(); props.setProperty(Context.INITIAL_CONTEXT_FACTORY, ICF); props.setProperty(Context.PROVIDER_URL, "ormi://localhost/orion-primer"); props.setProperty(Context.SECURITY_PRINCIPAL, "admin"); props.setProperty(Context.SECURITY_CREDENTIALS, "123"); System.out.println("(1)"); Context c = new InitialContext(props); c.close(); System.out.println("(2)"); c = new InitialContext(props); c.close(); System.out.println("(3)"); c = new InitialContext(props); c.close(); System.out.println("(4)"); } catch (Exception e) { e.printStackTrace(); } } } java.lang.NullPointerException at com.evermind.server.rmi.RMIInitialContextFactory.getInitialContext(JAX) at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:668) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246) at javax.naming.InitialContext.init(InitialContext.java:222) at javax.naming.InitialContext.init(InitialContext.java:198) at OrionBug.main(OrionBug.java:25)
Re: Orion slow startup
What O/S are you using? If you are using Win95 or Win98 then it takes an age and then runs like a crippled dog. I agree with the Jikes suggestion - an absolute must. I would recommend removing javac from your system and copying jikes in its place. Full Stop. Mike Atkin wrote: - Original Message - From: [EMAIL PROTECTED]> To: "Orion-Interest" [EMAIL PROTECTED]> Sent: Wednesday, November 29, 2000 3:24 PM Subject: Orion slow startup > I've been experiencing extremely slow startup times for the Orion server. > It takes at least a few minutes to start the server. I've only been using > Orion for a few weeks, but this seems a little excessive. I'm running it on > a laptop with a PII/300 and 128MB ram, so I don't think it's the machine. > I'm using version 1.4.0. > > Does any have any ideas why it's starts so slowly? Try configuring Orion to use jikes as a compiler instead of the standard jdk compiler. Jikes is an order of magnitude faster than javac. Edit server.xml and add something like compiler executable="c:\jikes\jikes.exe" classpath="whatever>" /> Mike -- David Smith Software Development Manager e-Net Software Ltd [EMAIL PROTECTED]
Re: jdk version
Suresh Ajja said... Now recently i installed Jbuilder 4.0, which took jdk1.3 as default jdk ver.in built in it.from command prompt, I was not able to run my programs, hence I installed jdk1.2 after that, but now I am not able to run my Inprise server (jdk1.2.2 or later ver. not found error) .can somebody tell me How can i configure only one ver. of jdk to run my IAS as well from Command pr. In the jbuilder "bin" directory, there is a file called "jdk.config". It's self-explanatory-- you can set the path to your JDK in there. Just set it to the one you use from your command line. However, I can't comment on the JDK requirements for IAS. -- David S. Kenzik [EMAIL PROTECTED] - http://kenzik.com Original Music - http://mp3.com/text
Re: Turbine with Orion?
Neal Kaiser said... I'm getting ready to set this up (Turbine and Velocity) with Orion. Before I pull my hair out figuring it out, I wanted to see if anyone has already documented this? If/when you endeavor to set this up, please report your findings to the list so the orionsupport.com guys can publish it. I'm sure many others will benefit from it. -- David S. Kenzik [EMAIL PROTECTED] - http://kenzik.com Original Music - http://mp3.com/text
Re: OpenBSD
I am running the latest orion on FreeBSD 4.2-STABLE, using Sun's JDK1.3 for Linux, and it works a treat. Mathias Bogaert wrote: Hello, Has anyone got Orion running on OpenBSD (www.openbsd.org), or any other BSD unix? TIAMathias Bogaert -- David Smith Software Development Manager e-Net Software Ltd [EMAIL PROTECTED]