RE: orion 1.3.8 on linux - spawning multiple java processes
You can change this by selecting green threads instead of native threads when you run your jvm. Check this out http://java.sun.com/products/jdk/1.1/packs/native-threads/README and then do a search on linux and green threads to get something more specific to Linux. Justin -Original Message- From: Reason [mailto:[EMAIL PROTECTED]] Sent: 02 October 2001 05:07 To: Orion-Interest Subject: RE: orion 1.3.8 on linux - spawning multiple java processes The standard issue blackdown JVM on linux runs Java threads as native threads -- so you see every Java thread as a separate process. Normal behavior, nothing to worry about. The memory issue is a different one; that's a problem with someone's code. Reason http://www.exratio.com/ -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of korosh Sent: Monday, October 01, 2001 3:49 PM To: Orion-Interest Subject: orion 1.3.8 on linux - spawning multiple java processes Why does orion 1.3.8 runnin off of linux spawning bunch of Java processes where as on Solaris there is only one Java Process? Also, it seems that the java process eventually consume so much memory that my ISP shuts down the process. Is there a memory leak with Orion 1.3.8 running on Linux with sun jdk 1.3.0 ???
Newbie - what about EJB 2.0 with Orion?
Hello everybody. I'm trying to deploy "cmpcustomer" application downloaded from Sun. It's implementation of CMP 2.0 - it introduces local interfaces. While deploying I get a message: "unknown etitiy subtag: local-home". Does Orion support local interfaces? Or - more generally - what features of EJB 2.0 does Orion support? Greetings -- Jacek Bialecki $ cd pub $ more beer
RE: Problems with CMP/MySQL
Dear Michael, I have set the schema attribute of my datasource to mysql.xml (which I have written myself). In this file I can only set datatype mappings. I can't tell Orion what are the literals for True or False. tnx, Roozbeh/ -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Michael Simons Sent: Monday, October 01, 2001 11:14 AM To: Orion-Interest Subject: Re: Problems with CMP/MySQL Roozbeh Ghaffari wrote: Hi All, We use Orion CMP features with MySQL. We had problems with boolean and char fields. I used P6Spy (www.provision6.com http://www.provision6.com) to see SQL commands generated by Orion. Orion says: update table_name set boolean_field = 'true' but MySQL expects update table_name set boolean_field = '1' How can I ask Orion to generate the expected SQL? But in case of character field we have a bigger problem. I try to set a character field to 'F' or 'M' Orion says: update table_name set char_field = 0 !!! I don't understand what is happening! Thank you in advance, Roozbeh/ Sounds like You're missing $ORION_HOME/config/database-schemas/mysql.xml michael -- Dipl.-Math. (fh) Michael Simons UNIOPT AG // unique logistic optimization Maximilianstr. 29; D-93047 Regensburg phone: ++49(0)941/59578-0 http://www.uniopt.net/ _ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.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__
Q: Which jdbc JNDI location should I use for my CMP EJBs?
Hello. I've been poundering on this question for quite some time, and even if I look stupid I have to ask it now. Sorry, if this seems dumb. data-sources.xml data-source class=com.evermind.sql.DriverManagerDataSource name=Hypersonic location=jdbc/HypersonicCoreDS xa-location=jdbc/xa/HypersonicXADS pooled-location=jdbc/pooled/HypersonicPooledDS ejb-location=jdbc/HypersonicDS connection-driver=org.hsql.jdbcDriver username=sa password= url=jdbc:HypersonicSQL:./database/defaultdb inactivity-timeout=30 / end data-sources.xml So. I have a CMP entity bean. I want to map it to this data-source. However, in orion-ejb-jar.xml I have to specify a data-source=jdbc/AnyLocation. But there are four different locations, that have been defined for a single data-source. And the question is: Which one should I set in my descriptor: 1. location=jdbc/HypersonicCoreDS 2. xa-location=jdbc/xa/HypersonicXADS 3. pooled-location=jdbc/pooled/HypersonicPooledDS 4. ejb-location=jdbc/HypersonicDS My first guess, is that I should use ejb-location. Right? Then WHY? Please. It may be dumb, but I wouldn't want to miss something serious here. BTW. An explanation on each location, and it's use would be GREAT! May the shade of the tree strengthen you. Lachezar Dobrev.
RE: MAPPING MORE THAN ONE WEB RESOURCE TO SECURITY ROLES
Please cut out the caps from your subject lines, it's much like shouting, and people who get shouted might be less inclined to help! --- Original Message --- From: David Bonilla [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Date: 10/2/01 5:45:15 AM 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=file.js/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 Fuertes THE BIT BANG NETWORK http://www.bit-bang.com Profesor Waksman, 8, 6º B 28036 Madrid SPAIN Tel.: (+34) 914 577 747 Móvil: 656 62 83 92 Fax: (+34) 914 586 176 __
Re: Newbie - what about EJB 2.0 with Orion?
Jacek - Orion has only partial support for EJB 2.0 based on an earlier PFD document. Local interfaces are not part of the Orion build just yet but will be in the coming months I am sure. Cheers Ray --- Jacek Bialecki [EMAIL PROTECTED] wrote: Hello everybody. I'm trying to deploy cmpcustomer application downloaded from Sun. It's implementation of CMP 2.0 - it introduces local interfaces. While deploying I get a message: unknown etitiy subtag: local-home. Does Orion support local interfaces? Or - more generally - what features of EJB 2.0 does Orion support? Greetings -- Jacek Bialecki $ cd pub $ more beer __ Do You Yahoo!? Listen to your Yahoo! Mail messages from any phone. http://phone.yahoo.com
AW: Newbie - what about EJB 2.0 with Orion?
Hey Jacek, That's a good question! I'm still waiting for the answer , too! The current version 1.5.2. supports only EJB 2.0 Public Draft partially. There's nothing about the final draft out since august 17th! (ejb spec. 2.0) So: IS ANYBODY OUT THERE WHO KNOWS IT ?? hopefully, Toni Menzel $ cd cafe $ more coffee -Ursprngliche Nachricht- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Im Auftrag von Jacek Bialecki Gesendet: Dienstag, 2. Oktober 2001 09:24 An: Orion-Interest Betreff: Newbie - what about EJB 2.0 with Orion? Hello everybody. I'm trying to deploy "cmpcustomer" application downloaded from Sun. It's implementation of CMP 2.0 - it introduces local interfaces. While deploying I get a message: "unknown etitiy subtag: local-home". Does Orion support local interfaces? Or - more generally - what features of EJB 2.0 does Orion support? Greetings -- Jacek Bialecki $ cd pub $ more beer
Re: Design strategy
Hello Owen, Thank you for your kind response. Yesterday, while waiting for a response on the Orion mailing list, we thought of a design somehow close to yours. We thought that using 3 different tables (ClassRoles, GroupRoles, UserRoles) was a good ideea. But today, we came up with a solution that we thought would benefit of Orion's powerful features. Thanks to Alex Paransky who helped us a lot, we tried to redesign the system, using OR mapping. So, we designed something like this: public class GroupBean implements EntityBean { ... List users; //1..* relationship with UserBean } public class UserBean implements EntityBean { List groups; //1..* relationship with GroupBean } Practically, we broke every *..* relationship (in this case Group(*) - User(*)) into two 1..* relationships. And so on, for every relationship that we have: Class(1) - Group(*) User(*) - Role(*) Group(*) - Role(*) Class(*) - Role(*) As far as I know, Orion will create an additional table in the database that will store the relationship. For example, for users attribute in GroupBean, it will create a new table Group_users, besides the existing Group and User tables. Practically, for every *-* relationship will have 2 more tables in the database. Is that correct? What I want to know is if this design is correct. Are there any drawbacks that would make this system work unproperly (may be some OR mapping problems)? Tkanks, George. - Original Message - From: Owen Fellows [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Tuesday, October 02, 2001 10:58 AM Subject: RE: Design strategy Hello, We have done a similar thing were we don't know the type of class assign the role except at runtime. The solution we used was to have an Object Type table (contain Class, Group, User). Then created a interface which was Roleable (i.e. this class can have a role assigned). In the database you can store each assignment in a different table (ClassRoles, GroupRoles, UserRoles), or have a generic table that stores Roleable_id, Role_id and Object_type_id. This does have drawbacks e.g. the Database does not have enforced consistence as the Roleable_id is not a foreign key on any one table. It may also be slower to retrieve the Roles for a particular (Class, Group, User) as you will have to lookup it object type and then its roles. (You could always cache object types as there will not be that many). I'm sure you can implement a Bean with the above functionality (we haven't used beans for this so I can help there). Hope this is of some help. Owen -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of George Mardale Sent: 02 October 2001 06:06 To: Orion-Interest Subject: RE: Design strategy Hello Alex, Thank you for your prompt response. Your suggestions are excellent. You're right, the analysis is not correct. I tried to reduce the problem to a simple example. To avoid complexity, I just limited the relationships to 1..*. Maybe the example is not the best, but I only wanted to know if I could model the Abstract being bean in Orion. There are still 2 issues we are unclear about: 1. what are the advantages of dumping entity Class? (Class has specific fields that Group does not have) 2. could you please detail the best way to implement a *-* relationship in Orion? Thanks, George.
NullPointerException and DataSource
Greet the sun all: I am trying to execute a Oracle query using a data source an I am receiving the following NullPointerException: testCreateAuditLog(com.ingenix.hisit.subrotrack.test.audit.ejb.AuditLogTest)java.lang.NullPointerException at com.evermind.sql.OrionPooledDataSource._bsb(Unknown Source) at com.evermind.sql.OrionPooledDataSource._brb(Unknown Source) at com.evermind._wp._pud(Unknown Source) at com.evermind._wp._bl(Unknown Source) at com.evermind._lo.createStatement(Unknown Source) at com.ingenix.hisit.subrotrack.audit.dao.AuditEventDAOImpl.generateAuditEventId(Unknown Source) at com.ingenix.hisit.subrotrack.test.SubroTestUtils.getAuditRawData(Unknown Source) at com.ingenix.hisit.subrotrack.test.audit.ejb.AuditLogTest.beginCreateAuditLog(Unknown Source) at org.apache.cactus.AbstractTestCase.callBeginMethod(AbstractTestCase.java:203) at org.apache.cactus.AbstractTestCase.runGenericTest(AbstractTestCase.java:404) at org.apache.cactus.ServletTestCase.runTest(ServletTestCase.java:130) at org.apache.cactus.AbstractTestCase.runBare(AbstractTestCase.java:371) at com.ingenix.hisit.subrotrack.test.audit.ejb.AuditLogTest.main(Unknown Source) If I do a toString on the database connection, I see: [jdbc/OracleDS connection] I have tried both PreparedStatement and CreateStatement. What other things can I try in order to debug this problem? -- Perry Hoekstra E-Commerce Architect Talent Software Services [EMAIL PROTECTED]
RE: Design strategy
Owen You're design looks to handle the problem well. You can even adapt it slightly to get the database to help you with referential integrity. However, what you are doing is handling the inheritance manually. (This is not intended as a criticism.) EJB does not give you any support to do this. That is why you have to do it manually. You cannot create an Entity EJB that is abstract, and then create sub-classes for Class EJB, Group EJB and User EJB. Remember an EJB is a component. It has at least 2 interfaces (Home and Remote) and 1 class (Bean). Which one(s) do you sub-class? I had exactly the same problem with one of the most common sets of business entities to do with managing participants/parties. These are an abstract class called Party, and 2 concrete sub-classes called Person and Organisation. My solution was to implement an EJB for Party that handled Persons and Organisations. I had to manage the differences between the sub-classes manually. It also meant that my DAO were acting like AbstractFactories in that they could return Person or Organisation details, depending on what was actually retrieved from the db. Hopefully, a future version of the EJB spec will deal with inheritance. HTH James -Original Message- From: Owen Fellows [mailto:[EMAIL PROTECTED]] Sent: 02 October 2001 10:58 To: Orion-Interest Subject: RE: Design strategy Hello, We have done a similar thing were we don't know the type of class assign the role except at runtime. The solution we used was to have an Object Type table (contain Class, Group, User). Then created a interface which was Roleable (i.e. this class can have a role assigned). In the database you can store each assignment in a different table (ClassRoles, GroupRoles, UserRoles), or have a generic table that stores Roleable_id, Role_id and Object_type_id. This does have drawbacks e.g. the Database does not have enforced consistence as the Roleable_id is not a foreign key on any one table. It may also be slower to retrieve the Roles for a particular (Class, Group, User) as you will have to lookup it object type and then its roles. (You could always cache object types as there will not be that many). I'm sure you can implement a Bean with the above functionality (we haven't used beans for this so I can help there). Hope this is of some help. Owen -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of George Mardale Sent: 02 October 2001 06:06 To: Orion-Interest Subject: RE: Design strategy Hello Alex, Thank you for your prompt response. Your suggestions are excellent. You're right, the analysis is not correct. I tried to reduce the problem to a simple example. To avoid complexity, I just limited the relationships to 1..*. Maybe the example is not the best, but I only wanted to know if I could model the Abstract being bean in Orion. There are still 2 issues we are unclear about: 1. what are the advantages of dumping entity Class? (Class has specific fields that Group does not have) 2. could you please detail the best way to implement a *-* relationship in Orion? Thanks, George.
Form-based login
Hi! In WebLogic 6, the j_security_check recognizes a parameter j_target_url. I don't think this is part of the J2EE spec, but a WebLogic feature instead. Do you know if there's an equivalent to this in Orion? At least, this j_target_url doesn't seem to work. I need this in a website where there is always (at least, when user has not logged in) a small login form visible in the left column, and this form should be submitted to j_security_check and then a specific welcome page should be displayed. If I just post the form to j_security_check, I get an error message in the browser You are not authorized to view this page.. The only way I've managed to make the form-based login to work, is by surfing to some page that has a security-constraint. In this case, Orion takes me to the login form and then to the originally requested page, just as it is supposed to do.. Thanks, Juha
When will Orion support IIOP ? What to use today ?
Does anyone know when orion will support IIOP ? What can I use today to access Orion EJBs from a C++ app ? J.D.
Re: Design strategy
Hi George, I don't know about EJB, as we don't use them, but having an extra table to represent an n-m relationship is a well stablished technique when designing relational databases. AFAIK there's no other way to do that while providing db-enforced consistency and avoiding redundancy. You represent a logical n-m relationship, you create a new table that implements two real 1-n relationships, thus creating one extra table. I don't see where you get two extra tables per relationship from. regards, D. George Mardale wrote: Hello Owen, Thank you for your kind response. Yesterday, while waiting for a response on the Orion mailing list, we thought of a design somehow close to yours. We thought that using 3 different tables (ClassRoles, GroupRoles, UserRoles) was a good ideea. But today, we came up with a solution that we thought would benefit of Orion's powerful features. Thanks to Alex Paransky who helped us a lot, we tried to redesign the system, using OR mapping. So, we designed something like this: public class GroupBean implements EntityBean { ... List users; //1..* relationship with UserBean } public class UserBean implements EntityBean { List groups; //1..* relationship with GroupBean } Practically, we broke every *..* relationship (in this case Group(*) - User(*)) into two 1..* relationships. And so on, for every relationship that we have: Class(1) - Group(*) User(*) - Role(*) Group(*) - Role(*) Class(*) - Role(*) As far as I know, Orion will create an additional table in the database that will store the relationship. For example, for users attribute in GroupBean, it will create a new table Group_users, besides the existing Group and User tables. Practically, for every *-* relationship will have 2 more tables in the database. Is that correct? What I want to know is if this design is correct. Are there any drawbacks that would make this system work unproperly (may be some OR mapping problems)? Tkanks, George. - Original Message - From: Owen Fellows [EMAIL PROTECTED] To: Orion-Interest [EMAIL PROTECTED] Sent: Tuesday, October 02, 2001 10:58 AM Subject: RE: Design strategy Hello, We have done a similar thing were we don't know the type of class assign the role except at runtime. The solution we used was to have an Object Type table (contain Class, Group, User). Then created a interface which was Roleable (i.e. this class can have a role assigned). In the database you can store each assignment in a different table (ClassRoles, GroupRoles, UserRoles), or have a generic table that stores Roleable_id, Role_id and Object_type_id. This does have drawbacks e.g. the Database does not have enforced consistence as the Roleable_id is not a foreign key on any one table. It may also be slower to retrieve the Roles for a particular (Class, Group, User) as you will have to lookup it object type and then its roles. (You could always cache object types as there will not be that many). I'm sure you can implement a Bean with the above functionality (we haven't used beans for this so I can help there). Hope this is of some help. Owen -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of George Mardale Sent: 02 October 2001 06:06 To: Orion-Interest Subject: RE: Design strategy Hello Alex, Thank you for your prompt response. Your suggestions are excellent. You're right, the analysis is not correct. I tried to reduce the problem to a simple example. To avoid complexity, I just limited the relationships to 1..*. Maybe the example is not the best, but I only wanted to know if I could model the Abstract being bean in Orion. There are still 2 issues we are unclear about: 1. what are the advantages of dumping entity Class? (Class has specific fields that Group does not have) 2. could you please detail the best way to implement a *-* relationship in Orion? Thanks, George.
JSP Tags
Hi, I am having problem in passing argument to a Tag. I have created a Tag and it works fine. When I pass hardcoded argument to the Tag it works fine. But my JSP requries the data to come from a request which is dynamic with user input. So I have a problem passing JSP Variable data as input argument to TAG. Is there any way I Can do that. Any help is appreciated. Thanks Ritesh.
RE: orion 1.3.8 on linux - and Memory leaks in general
3)Leaks,leaks,leaks. Yes there are leaks in Orion. We've run into a very nasty one that no one seems to know why it happens. It's got to do with JMS. For some reason Property objects don't get cleaned up. As such, memory usage will keep on going. We are trying one way of dealing with this: usrin the -Incgc option with the JVM (incremental garbage collector). passing on some personal experiences and thoughts I've had with \ leaks in what appears to be correct java; The nature of heap managers has always allowed for perfect and correct java to fragment the heap and cause memory growth. No amount of GC will fix some dynamics if the timing of the new this() is is interleaved with that.finalize() and gc() doesn't create enough contiguous space for the next new somemore(). Java 2's smarter gc() did go along way to reducing the heap fragmentation potential, I believe and have observed. For some applications that experience intermittant leaks were the factors are load and use case interactions, the only fix is to re-think your object creation and gc()'ing. The solutions that worked for me (last hope and desparation) was the general strategy of object pooling (re-use and not destruction). I.E. most objects have a MyClass.clear() and it's ready for re-use. By reducing the amount of load on the heap, I've fixed or reduced leakage to tolerable levels... Yes it does make sense that more frequent increamental gc()ing might reduce the orion/JMS problem from my obervations too... As the previous poster said; good luck! A thought on Linux VM threading and process creation; The Linux kernel does not have the concept of a light weight thread/process (LWP) as does Solaris and win32. This means that all VM threads are mapped to Linux processes which are more effort for the Linux kernel to manage due to larger kernel data structures and scheduler effort to task switch a full task as apposed to a LWP in Solaris or win32. Until Linux addes this more efficient structure into the kernel we'll see somewhat lower perfs for java apps on Linux vs Solaris x86 or win32 on the same HW. The design of the Linux VM in no way causes the runaway tasks or task memory growth as was observed. A java Thread spinning or new yetMoreObjects() is likely caused by java program issues and not the Linux VM or linux kernel... IMHO. :) curt J2EE / EJB Architect Curt Smith [EMAIL PROTECTED] (w) 404-463-0973 (h) 404-294-6686 winmail.dat
AW: Form-based login
hi juha, regarding your last paragraph, i think this is the intention of the servlet-spec - and the only real usage. all other types of login should be done differently but not via j_security_check. jan -- Jan Heise / Tel: +49-163-4803237 / E-Mail: [EMAIL PROTECTED] -Ursprungliche Nachricht- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Im Auftrag von Juha Paananen Gesendet: Dienstag, 2. Oktober 2001 15:52 An: Orion-Interest Betreff: Form-based login Hi! In WebLogic 6, the j_security_check recognizes a parameter j_target_url. I don't think this is part of the J2EE spec, but a WebLogic feature instead. Do you know if there's an equivalent to this in Orion? At least, this j_target_url doesn't seem to work. I need this in a website where there is always (at least, when user has not logged in) a small login form visible in the left column, and this form should be submitted to j_security_check and then a specific welcome page should be displayed. If I just post the form to j_security_check, I get an error message in the browser You are not authorized to view this page.. The only way I've managed to make the form-based login to work, is by surfing to some page that has a security-constraint. In this case, Orion takes me to the login form and then to the originally requested page, just as it is supposed to do.. Thanks, Juha
RE: Design strategy
george, this design issue should not be dependant on orion or any application server. orion can help becuase it supports ejb 1.1 and partially ejb 2.0. so there are a few options, you could write custom entites to manage the relationships, use ejb 1.1 or ejb 2.0. doing an ejb 2.0 implementation means you can model all the relationships in the ejb architecture, but be careful becaue i dont know how much of the ejb 2.0 specification orion supports. for ejb 2.0, doing the Class, Group and User relationships is pretty straight forward, all are standard one-to-many relationships. you may just need one entity bean for the Class entity and have the others as helper classes, orLocal ejbs, or have all three as entity beans. Class 1-* Group Group 1-* User To do the roles, is seems like you want 3 relationships. your diagram shows the one to many relationship Entity 1-* Role. It seems like you want the opposite Entity *-1 Role. Or if you want the entity to be able to map to severaldifferent roles, you would want Entity *--* Role. So each Entity (Class, Group and User) has the relationship defined. You would not have an abstract entity. So you would have 3 relationships like Class *---* Role Group *---* Role User *---* Role regards, simon [EMAIL PROTECTED] -Original Message-From: George Mardale [mailto:[EMAIL PROTECTED]]Sent: Monday, October 01, 2001 8:29 AMTo: Orion-InterestCc: [EMAIL PROTECTED]Subject: Design strategy Hi everybody, During our last application design, I have encountered the following issue and I don't know ifOrion can handled it in a specific manner: I have a hierarchy of users that consists of 3 levels: Class, Group, User. A class can contain one or more groups, a group can contain one or more users. For instance, an instance of Class can be "professor", an instance of Group can be "chemistry professor", and an instance of User can be "John" (John is a chemistry professor). We have 1..* relationship for each of the 3 levels. Of course, theseare entity beans. Furthermore, we have another entity bean, called Role. The ideea is that every User canhave a Role in an application (for instance, John can be a SystemAdmin inan application), but also, a Group or a Class canhave one or moreRoles (instead of assigning a Role to every User in a Group or a Class, we assign the Role to the whole Group or Class,saving a lot of time this way, thus all the User in the respective Group or Classwill have that Role). For all the Roles, we need to keepthe id of the person(s) to whomthe Role was assigned.But only at run-time Ican find out the type of the component in the user hierarchy (either Class, Group, or User), to which the rolehas beenassigned.In other words, an attribute in class Role has to store a value that is sometimes an instance of Class, sometimes an instance of Group and sometimes an instance of User. Analyzing this issue, we came along with this diagram: 1 * Abstract being -- Role | inherits -- | | | | | | Class Group User 1--- * 1- * How can we achieve this in Orion? Is it possible? Thank you for your time, best regards, George.
Finder query problem.
Hi, I'm not sure what the problem is, since I am using a non-partial query to rteturn all 3 attributes of the bean. Is there a requirement that they be named the same ? This is the error I'm getting from the server: Auto-deploying kona-ejb.jar (Classes were updated)... Error compiling C:\orion\applications\kona-app/kona-ejb.jar: Field used in finder query not found in bean, valid fields are: permName, permDesc at column 388 in query 'select stpermissions.PERMISSION_ID, stpermissions.PERMISSION_NAME , stpermissions.PERMISSION_DESCRIPTION from stgroupperm, stgroup, stuser, stpermissions where stuser.USER_GROUP = stgroup.GROUP_ID and stgroupperm.GROUP_ID = stgroup.GROUP_ID and stpermissions.PERMISSION_ID = stgroupperm.GROUP_PERM_ID and stgroupperm.GROUP_PERM_ALLOWED = 'Y' and stuser.USER_ID = ?' Yet my orion-ejb.jar has this section for the bean: entity-deployment name=UserPermissions location=UserPermissions wrapper=UserPermissionsHome_EntityHomeWrapper51 max-tx-retries=3 table=STPERMISSIONS data-source=java:jdbc/ejbDS primkey-mapping cmp-field-mapping fields cmp-field-mapping name=permID persistence-name=PERMISSION_ID / /fields /cmp-field-mapping /primkey-mapping cmp-field-mapping name=permName persistence-name=PERMISSION_NAME / cmp-field-mapping name=permDesc persistence-name=PERMISSION_DESCRIPTION / finder-method partial =false query=select stpermissions.PERMISSION_ID, stpermissions.PERMISSION_NAME, stpermissions.PERMISSION_DESCRIPTION from stgroupperm, stgroup, stuser, stpermissions where stuser.USER_GROUP = stgroup.GROUP_ID and stgroupperm.GROUP_ID = stgroup.GROUP_ID and stpermissions.PERMISSION_ID = stgroupperm.GROUP_PERM_ID and stgroupperm.GROUP_PERM_ALLOWED = 'Y' and stuser.USER_ID = ? method ejb-nameUserPermissions/ejb-name method-namefindByUser/method-name method-params method-paramjava.lang.String/method-param /method-params /method /finder-method /entity-deployment
RE: JSP Tags
This is a known bug. Basically, the work around that I have found is to create a single String before passing the dynamic data to the tag. Given that your dynamic data is going into a String called file, if you try to do this: blah:blah path=/path/to/some/%=file% / It doesn't work. But if you do this: % String dynamicpath = /path/to/some/+file; % blah:blah path=%=dynamicpath% / That works for some reason. This is a new bug that cropped up recently. Hope that helps, Carl -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Shah, Ritesh Sent: Tuesday, October 02, 2001 12:41 PM To: Orion-Interest Subject: JSP Tags Importance: High Hi, I am having problem in passing argument to a Tag. I have created a Tag and it works fine. When I pass hardcoded argument to the Tag it works fine. But my JSP requries the data to come from a request which is dynamic with user input. So I have a problem passing JSP Variable data as input argument to TAG. Is there any way I Can do that. Any help is appreciated. Thanks Ritesh.
test
test __ Do You Yahoo!? Listen to your Yahoo! Mail messages from any phone. http://phone.yahoo.com
Recieved Messages in Write/Only Mode???
Greetings. I am using Orion 1.5.2 and Java 1.3.1. I am trying to send a MapMessage to a MessageDrivenBean. When the MDB receives the message, it throws an exception saying the message is in Write mode(see attached). Is there an issue with the Orion JMS functionality and Mapped Messages? This has me really perplexed -Steve ImportMDB.onMessage: Starting error reading Message javax.jms.MessageNotReadableException: In write mode at com.evermind._es.getString(Unknown Source) at com.hrnexus.importer.ejb.ImportMDB$ImportHelper.init(ImportMDB.java:252) at com.hrnexus.importer.ejb.ImportMDB.onMessage(ImportMDB.java:91) at com.evermind._djb.run(Unknown Source) at com.evermind._if.run(Unknown Source) From ImportMDB broker = msg.getString(BROKER_KEY); //Line 252
RE: Q: Which jdbc JNDI location should I use for my CMP EJBs?
In your case you need to use HypersonicDS in orion-ejb-jar.xml. Dobromir Lachezar Dobrev [EMAIL PROTECTED] wrote: Hello. I've been poundering on this question for quite some time, and even if I look stupid I have to ask it now. Sorry, if this seems dumb. data-sources.xml data-source class=com.evermind.sql.DriverManagerDataSource name=Hypersonic location=jdbc/HypersonicCoreDS xa-location=jdbc/xa/HypersonicXADS pooled-location=jdbc/pooled/HypersonicPooledDS ejb-location=jdbc/HypersonicDS connection-driver=org.hsql.jdbcDriver username=sa password= url=jdbc:HypersonicSQL:./database/defaultdb inactivity-timeout=30 / end data-sources.xml So. I have a CMP entity bean. I want to map it to this data-source. However, in orion-ejb-jar.xml I have to specify a data-source=jdbc/AnyLocation. But there are four different locations, that have been defined for a single data-source. And the question is: Which one should I set in my descriptor: 1. location=jdbc/HypersonicCoreDS 2. xa-location=jdbc/xa/HypersonicXADS 3. pooled-location=jdbc/pooled/HypersonicPooledDS 4. ejb-location=jdbc/HypersonicDS My first guess, is that I should use ejb-location. Right? Then WHY? Please. It may be dumb, but I wouldn't want to miss something serious here. BTW. An explanation on each location, and it's use would be GREAT! May the shade of the tree strengthen you. Lachezar Dobrev. __ 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/
RE: Design strategy
1) It seemed to me that a class was merely a container of N groups. From your example, it seems that group (chemistry professor) was just a sub-group of a group called (Professor). In other words: Professor | +-- Chemistry Professor I was not aware of other fields in the Class, and this was the reason for the suggestion. Since you can still attach roles to the groups, from the example above Chemistry Professor could inherit the roles from the Professor Group 2) You can use standard many/many relationships for this. I have had limited success with this. -AP_ -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of George Mardale Sent: Monday, October 01, 2001 10:06 PM To: Orion-Interest Subject: RE: Design strategy Hello Alex, Thank you for your prompt response. Your suggestions are excellent. You're right, the analysis is not correct. I tried to reduce the problem to a simple example. To avoid complexity, I just limited the relationships to 1..*. Maybe the example is not the best, but I only wanted to know if I could model the Abstract being bean in Orion. There are still 2 issues we are unclear about: 1. what are the advantages of dumping entity Class? (Class has specific fields that Group does not have) 2. could you please detail the best way to implement a *-* relationship in Orion? Thanks, George.
Equivalent to Apache's mod_usertrack?
Title: Equivalent to Apache's mod_usertrack? Hi all, I wanted to know if there is an equivalent to Apache's mod_usertrack for J2EE/Orion? I would hate to have to put Apache in front of Orion just for this but we are having issues trying to reflect a unique visitor in the weblogs. http://www.webtrends.com/support/Solution.asp?id=5689050555 thanx, Larry
RE: Equivalent to Apache's mod_usertrack?
Title: Equivalent to Apache's mod_usertrack? Larry, You can of course create a cookie, and put it into your client's machine. See the servlet spec and api...this is relatively easy to do with Orion and a filter. Regards, the elephantwalker www.elephantwalker.com -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Larry VelezSent: Tuesday, October 02, 2001 3:50 PMTo: Orion-InterestSubject: Equivalent to Apache's mod_usertrack? Hi all, I wanted to know if there is an equivalent to Apache's mod_usertrack for J2EE/Orion? I would hate to have to put Apache in front of Orion just for this but we are having issues trying to reflect a unique visitor in the weblogs. http://www.webtrends.com/support/Solution.asp?id=5689050555 thanx, Larry
recursive calling from servlets
I have a servletA calling ServletB via an URL. If I click, I find that the doGet() method from ServletA gets called recursively. Is there a fix to this problem. -- Vinay Vaze M/S : 7H-80 Phone : (425)-865-2929 Email : [EMAIL PROTECTED]
RE: Problem implementing Custom User Management using SimpleUserManager
I am also experiencing this - no matter what I try (and I'm pretty sure I've tried everything), I cannot get an application client user to log in using a custom user manager (either SimpleUserManager-derived or DataSourceUserManager). Note that the application client logs in just fine using admin or any of the principals.xml users. But I get the Invalid username/password exception when trying users produced by the custom user manager. This is with Orion 1.5.2. Does anyone have application clients working with a custom user manager? Jeff -Original Message- From: Adam Maliborski [mailto:[EMAIL PROTECTED]] Sent: Saturday, September 29, 2001 7:09 AM To: Orion-Interest Subject: Problem implementing Custom User Management using SimpleUserManager Hi, I am trying to validate users of my ejb server via a database using the SimpleUserManager. I have extended SimpleUserManager and overridden the three methods and confirmed that they are being called and returning true. I have made the following changes to the descriptors. ORION-APPLICATION.XML orion-application deployment-version=1.5.2 ejb-module remote=false path=ejb.jar / web-module id=web path=web.war / security-role-mapping name=administration group name=administration / /security-role-mapping security-role-mapping name=productbuilder group name=productbuilder / /security-role-mapping security-role-mapping name=enduser group name=enduser / /security-role-mapping persistence path=persistence / library path=c:\test\ejb.jar / principals path=principals.xml / user-manager class=com.test.rms.user.orion.UCIServerUserManager / log file path=application.log / /log namespace-access read-access namespace-resource root= security-role-mapping name=lt;jndi-user-rolegt; group name=administration / group name=productbuilder / group name=enduser / /security-role-mapping /namespace-resource /read-access write-access namespace-resource root= security-role-mapping name=lt;jndi-user-rolegt; group name=administration / group name=productbuilder / group name=enduser / /security-role-mapping /namespace-resource /write-access /namespace-access /orion-application PRINCIPALS.XML principals groups group name=administration permission name=administration / permission name=rmi:login / permission name=com.evermind.server.rmi.RMIPermission / /group group name=productbuilder permission name=rmi:login / permission name=com.evermind.server.rmi.RMIPermission / /group group name=enduser permission name=rmi:login / permission name=com.evermind.server.rmi.RMIPermission / /group /groups users /users /principals ORION-EJB-JAR.XML orion-ejb-jar deployment-version=1.5.2 deployment-time=e93e1950d0 enterprise-beans .. .. (EJB DECLARATION) .. assembly-descriptor security-role-mapping name=administration /security-role-mapping security-role-mapping name=productbuilder /security-role-mapping security-role-mapping name=enduser /security-role-mapping default-method-access security-role-mapping name=lt;default-ejb-caller- rolegt; impliesAll=true / /default-method-access /assembly-descriptor /orion-ejb-jar When I try to access the ejb server through an external java client using the following code : Properties prop = new Properties(); prop.put (java.naming.factory.initial, com.evermind.server.ApplicationClientIn itialContextFactory); prop.put(java.naming.provider.url, ormi://localhost/UCIServer); prop.put(java.naming.security.principal, adammal); prop.put(java.naming.security.credentials, adammal); Context initial = new InitialContext(prop); I get the following error : java.lang.SecurityException: Invalid username/password for UCIServer (adammal) at com.evermind._cd._mu(Unknown Source) at com.evermind._cd._mu(Unknown Source) at com.evermind._cd._np(Unknown Source) at com.evermind._ce._np(Unknown Source) at com.evermind.server.rmi.RMIContext.lookup(Unknown Source) at com.evermind.server.administration.LazyResourceFinder._np (Unknown Source) at com.evermind.server.administration.LazyResourceFinder.getEJBHome (Unknown Source) at com.evermind._ck._ho(Unknown Source) at com.evermind.server.ApplicationClientInitialContextFactory.getInitialCon text(Unknown Source) at javax.naming.spi.NamingManager.getInitialContext (NamingManager.java:668) at javax.naming.InitialContext.getDefaultInitCtx
RE: Form-based login
resend...fourth time didn't catch ;. -Original Message- From: The elephantwalker [mailto:[EMAIL PROTECTED]] Sent: Tuesday, October 02, 2001 4:34 PM To: Orion-Interest Subject: RE: Form-based login resend...third time didn't catch ;(((. -Original Message- From: The elephantwalker [mailto:[EMAIL PROTECTED]] Sent: Tuesday, October 02, 2001 3:09 PM To: Orion-Interest Subject: RE: Form-based login resend...resend, second time didnt catch ;((. -Original Message- From: The elephantwalker [mailto:[EMAIL PROTECTED]] Sent: Tuesday, October 02, 2001 2:44 PM To: Orion-Interest Subject: RE: Form-based login resend...first time didn't catch ;(. -Original Message- From: The elephantwalker [mailto:[EMAIL PROTECTED]] Sent: Tuesday, October 02, 2001 2:16 PM To: Orion-Interest Subject: RE: Form-based login Dear juha, Jan is correct. This little oversight in the servlet spec doesn't allow any built-in portlet type behaviour. There is a work around, however. Put in a little login form on every page (like with the jsp:include). Wrap the form with the ifInRole tag from the util tag library. If its in your role, display a logout, or change account link. Likewise, use the inInRole tag to switch out or in any protected content. For your little login form, choose an action to a login servlet. In the login servlet, use the roleManager to log the user in...and forward to the requesting page, which was a hidden input in your little login form. You have to bend over and scratch your back, but you can do this with j2ee and orion. Come join the www.elephantwalker.com web site, and join the discussions. We have many on user security. Regards, the elephantwalker www.elephantwalker.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Jan Heise Sent: Tuesday, October 02, 2001 10:38 AM To: Orion-Interest Subject: AW: Form-based login hi juha, regarding your last paragraph, i think this is the intention of the servlet-spec - and the only real usage. all other types of login should be done differently but not via j_security_check. jan -- Jan Heise / Tel: +49-163-4803237 / E-Mail: [EMAIL PROTECTED] -Ursprungliche Nachricht- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Im Auftrag von Juha Paananen Gesendet: Dienstag, 2. Oktober 2001 15:52 An: Orion-Interest Betreff: Form-based login Hi! In WebLogic 6, the j_security_check recognizes a parameter j_target_url. I don't think this is part of the J2EE spec, but a WebLogic feature instead. Do you know if there's an equivalent to this in Orion? At least, this j_target_url doesn't seem to work. I need this in a website where there is always (at least, when user has not logged in) a small login form visible in the left column, and this form should be submitted to j_security_check and then a specific welcome page should be displayed. If I just post the form to j_security_check, I get an error message in the browser You are not authorized to view this page.. The only way I've managed to make the form-based login to work, is by surfing to some page that has a security-constraint. In this case, Orion takes me to the login form and then to the originally requested page, just as it is supposed to do.. Thanks, Juha
ejbLoad is getting called during a transaction
I have a piece of code that looks like this: debug(Before); for (int i = 0; i values.length; i++) programValueEntityHome.create(us, attribute, values[i]); debug(After); For some reason an ejbLoad is sneaking into the picture. As you can see from the following output, when Before prints the size of certain collection 1 (because I just added something to it), then before the ejbCreate is called in responce to programValueEntityHome.create(...) an ejbLoad sneaks in. The ejbLoad, clears the collection again because it refreshes from disk. Now during the operation and after, the collection remains EMPTY. Before Object: ProgramEntityBean_PersistenceManager812@5bfb5d values collection: [com.indnet.common.model.base.EntityKey@268 id: 616] size: 1 ejbLoad: ProgramEntityBean_PersistenceManager812@5bfb5d During create of value Object: ProgramEntityBean_PersistenceManager812@5bfb5d values collection: [] size: 0 After Object: ProgramEntityBean_PersistenceManager812@5bfb5d values collection: [] size: 0 Does any one have any ideas why would an ejbLoad sneak in? The entire operation is done in a single transaction. I am puzzled as to why this might be happening? This all is occuring during the create operation here is a stack trace when excpetion occurs because the collection is EMPTY: javax.ejb.EJBException: Attribute: Actors not a valid attribute for program: 3971 at com.indnet.symbiosis.model.entity.program.ProgramEntityBean.setValues(Progra mEntityBean.java:344) at com.indnet.symbiosis.model.entity.program.ProgramEntityBean.createDefaultVal uesFor(ProgramEntityBean.java:196) at com.indnet.symbiosis.model.entity.program.ProgramEntityBean.addProgramType(P rogramEntityBean.java:157) at com.indnet.symbiosis.model.entity.program.ProgramEntityBean.ejbPostCreate(Pr ogramEntityBean.java:63) at ProgramEntityHome_EntityHomeWrapper813.create(ProgramEntityHome_EntityHomeWr apper813.java:806) at com.indnet.symbiosis.service.programmanagement.ProgramManagementServiceBean. createProgram(ProgramManagementServiceBean.java:50) at ProgramManagementService_StatelessSessionBeanWrapper26.createProgram(Program ManagementService_StatelessSessionBeanWrapper26.java:70) at com.indnet.symbiosis.client.jsp.admin.programadmin.pagegen.beans.ProgramCrea teBean.initialize(ProgramCreateBean.java:106) at com.slsideas.pagegen.beans.Bean.processRequest(Bean.java:106) Thanks. -AP_
RE: Equivalent to Apache's mod_usertrack?
Of course there is a far better way to do this. - turn on cookie based sessions (which are on by default) - you then have a jsessionid cookie given to all users, which tracks by session - therefore add $cookie:[jsessionid] into your format string of your access log Done! No filters, no custom cookies. Enjoy ;) -mike Mike Cannon-Brookes :: [EMAIL PROTECTED] Atlassian :: http://www.atlassian.com Supporting YOUR J2EE World -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of The elephantwalker Sent: Wednesday, October 03, 2001 9:33 AM To: Orion-Interest Subject: RE: Equivalent to Apache's mod_usertrack? Larry, You can of course create a cookie, and put it into your client's machine. See the servlet spec and api...this is relatively easy to do with Orion and a filter. Regards, the elephantwalker www.elephantwalker.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Larry Velez Sent: Tuesday, October 02, 2001 3:50 PM To: Orion-Interest Subject: Equivalent to Apache's mod_usertrack? Hi all, I wanted to know if there is an equivalent to Apache's mod_usertrack for J2EE/Orion? I would hate to have to put Apache in front of Orion just for this but we are having issues trying to reflect a unique visitor in the weblogs. http://www.webtrends.com/support/Solution.asp?id=5689050555 thanx, Larry
or-mapping - cmp fields - finder methods - a problem
hi, i've an entity bean named Test, in which i've put a cmp field named difficulty of a class tpye DifficultyLevel. I've definded difficulty in orion-ejb-jar.xml as fields cmp /field everything is fine when i create, remove, load, store, etc. to Test. BUT, when i try to use findByDifficulty(DifficultyLevel d) which is defined in my orion-ejb-jar.xml as quesry=$difficulty=$1 then i've found orion (using p6Spy htpp://www.provision6.com) is passing the address of my DifficultyLevel object's adderss (like when serializing) and so my finder fails. i think this is sth. like a bug. it would be great if anybody could help me about this situation. thnx in advance. --MS.