> -----Mensaje original-----
> De: Diederik de Groot [SMTP:[EMAIL PROTECTED]]
> Enviado el: jueves 18 de abril de 2002 13:36
> Para: Turbine Users List
> Asunto: RE: Extending TurbineUser in TDK 2.2b1
>
> Hi Simon,
>
> To Be honest, I have not been able to test everything yet. I implemented
> this and it compiled correctly but i haven't had time to test the actual
> implementation. It looks promissing and I think it's the way to go in the
> future. Modeling a seperate person and a user instance is done a lot
> outside turbine in other application and i feel more confortable with that
> model. It makes the implementation a lot simpler and could be implemented
> as a standard in turbine i hope.
>
> Who do i write about this proposal, do you know ?
[SM] I think you've just done that ;)..the list is the best place I
know...
> Lot's of success and let me know if it works ok :-)
[SM]
will do... ;)
> Diederik
>
> On Thu, 18 Apr 2002, Simon Moore wrote:
>
> > Thanks Diederik...
> >
> > That helped a lot...I like your model and will probably do the same
> thing
> > until all this get's cleared up. (I'll post and let you know how it
> went)
> >
> > With any luck somebody will clear all this up with some form of
> > documentation soon...I volunteer as soon as I 'get it' myself.
> >
> > > -----Mensaje original-----
> > > De: Diederik de Groot [SMTP:[EMAIL PROTECTED]]
> > > Enviado el: jueves 18 de abril de 2002 13:16
> > > Para: Turbine Users List
> > > Asunto: RE: Extending TurbineUser in TDK 2.2b1
> > >
> > > Hi Simon,
> > >
> > > I'm not sure about all you questions, i can show you what i did and
> maybe
> > > you can derive the solution for you case from that.
> > >
> > > Instead of extending user I actually deminished TurbineUser to
> > > (Turbine-schema.xml):
> > >
> > > <table name="TURBINE_USER" idMethod="idbroker">
> > > <column name="USER_ID" required="true" primaryKey="true"
> > > type="INTEGER"/>
> > > <column name="LOGIN_NAME" required="true" size="32"
> type="VARCHAR"/>
> > > <column name="PASSWORD_VALUE" required="true" size="32"
> > > type="VARCHAR"/>
> > > <column name="MODIFIED" type="TIMESTAMP"/>
> > > <column name="CREATED" type="TIMESTAMP"/>
> > > <column name="LAST_LOGIN" type="TIMESTAMP"/>
> > > <column name="OBJECTDATA" type="VARBINARY"/>
> > > <unique>
> > > <unique-column name="LOGIN_NAME"/>
> > > </unique>
> > > </table>
> > >
> > > Now I have a pure User Implementation without FirstName and LastName
> > > stuff.
> > > It only holds the necessary User Entries.
> > >
> > > Then I added an Alias to Turbine User in my Application-schema.xml
> (Note
> > > that i have not specified anything but just this)
> > >
> > > <table name="APP_USER" javaName="APPUser" alias="TurbineUser">
> > > <column name="USER_ID" primaryKey="true" required="true"
> > > type="INTEGER"/>
> > > </table>
> > >
> > > Now i don't really extend the user but actually create a new object
> called
> > > Member with all the fields that i need to define a real live person.
> > >
> > > <table name="MEMBER" idMethod="none">
> > > <column name="MEMBER_ID" primaryKey="true" required="true"
> > > type="INTEGER"/>
> > > <column name="NICK_NAME" size="35" type="VARCHAR"/>
> > > <column name="INITIALS" size="8" type="VARCHAR"/>
> > > <column name="FIRST_NAME" required="true" size="99"
> type="VARCHAR"/>
> > > <column name="MIDDLE_NAME" size="15" type="VARCHAR"/>
> > > <column name="LAST_NAME" required="true" size="99"
> type="VARCHAR"/>
> > > <column name="CONFIRM_VALUE" size="99" type="VARCHAR"/>
> > > <column name="MODIFIED" type="TIMESTAMP"/>
> > > <column name="CREATED" type="TIMESTAMP"/>
> > > <column name="LAST_LOGIN" type="TIMESTAMP"/>
> > > <column name="LAST_PASSWORD_CHANGE" type="TIMESTAMP"/>
> > > <column name="STREET" size="70" type="VARCHAR"/>
> > > <column name="HOUSE_NUMBER" size="5" type="VARCHAR"/>
> > > <column name="POSTAL_CODE" size="7" type="VARCHAR"/>
> > > <column name="CITY" size="35" type="VARCHAR"/>
> > > <column name="PROVINCE_ID" type="INTEGER"/>
> > > <column name="COUNTRY_ID" type="INTEGER"/>
> > > <column name="PHONE_NUMBER" size="15" type="VARCHAR"/>
> > > <column name="MOBILE_NUMBER" size="15" type="VARCHAR"/>
> > > <column name="EMAIL" size="99" type="VARCHAR"/>
> > > <column name="HOME_PAGE" size="35" type="VARCHAR"/>
> > > <column name="GENDER" size="1" type="BOOLEANINT" default="0"/>
> > > <column name="BIRTH_DATE" size="10" type="VARCHAR"/>
> > > <column name="PLACE_OF_BIRTH" size="35" type="VARCHAR"/>
> > > <column name="PAYMENT_METHOD" type="CHAR" size="1"/>
> > > <column name="MEMBERSHIP_TYPE" size="1" type="BOOLEANINT"
> > > default="0"/>
> > > <column name="BANK_ACCOUNT_NUMBER" type="VARCHAR" size="16"/>
> > > <column name="CARD_NUMBER" type="VARCHAR" size="16"/>
> > > <column name="CARD_HOLDER_NAME" type="VARCHAR" size="35"/>
> > > <column name="EXPIRATION_DATE" type="DATE"/>
> > > <column name="COMPANY_ID" type="INTEGER"/>
> > > <column name="POINTS" type="INTEGER" default="0"/>
> > > <column name="BRANCH_ID" type="INTEGER" description=""/>
> > > <column name="INFO" type="LONGVARCHAR" description=""/>
> > > <column name="LOOKING_FOR" type="LONGVARCHAR" description=""/>
> > > <column name="PHOTO_ID" type="INTEGER" description=""/>
> > > <index name="IX_USER_NAME">
> > > <index-column name="FIRST_NAME"/>
> > > <index-column name="MIDDLE_NAME"/>
> > > <index-column name="LAST_NAME"/>
> > > </index>
> > > <index name="IX_MEMBER_PREFERENCE_BRANCH">
> > > <index-column name="BRANCH_ID"/>
> > > </index>
> > > <foreign-key foreignTable="APP_USER">
> > > <reference local="MEMBER_ID" foreign="USER_ID"/>
> > > </foreign-key>
> > > <foreign-key foreignTable="COMPANY">
> > > <reference local="COMPANY_ID" foreign="COMPANY_ID"/>
> > > </foreign-key>
> > > <foreign-key foreignTable="PROVINCE">
> > > <reference local="PROVINCE_ID" foreign="PROVINCE_ID"/>
> > > </foreign-key>
> > > <foreign-key foreignTable="COUNTRY">
> > > <reference local="COUNTRY_ID" foreign="COUNTRY_ID"/>
> > > </foreign-key>
> > > <foreign-key foreignTable="BRANCH">
> > > <reference local="BRANCH_ID" foreign="BRANCH_ID"/>
> > > </foreign-key>
> > > <foreign-key foreignTable="PHOTO">
> > > <reference local="PHOTO_ID" foreign="PHOTO_ID"/>
> > > </foreign-key>
> > > </table>
> > >
> > > As you can see this Member has a one-to-one relation to APP_USER,
> which
> > > makes the connection to the security system. It might look like a
> dirty
> > > fix
> > > but i must say that i use this model in other situation outside
> turbine
> > > aswell. When defining our network security system i have a seperation
> in
> > > real live people and userid's aswell. My Person account can have
> several
> > > UserId's to log on to the network, but I remain to be the same person.
> I
> > > can
> > > log in to turbine as a standard user, a developer or an administrator.
> And
> > > i
> > > don't like to mix those users for logging purposes.
> > >
> > > This model works for me.
> > >
> > > > Question 1: I was under the impression that commenting out services
> in
> > > > tr.props and uncommenting them in fulcrum.properties enabled the
> fulcrum
> > > > services rather than the turbine services, is this wrong?
> > >
> > > As far as i can see the fullcrum properties file is loaded at the end
> of
> > > TR.props and will therefore overload the previously set properties.
> > > Therefor
> > > i think i'm using the Fullcrum properties. I actually set both to the
> new
> > > path in my sources.
> > >
> > > > Question 2: What's the equivalent of the MapBrokerService and the
> > > > PoolBrokerService in Fulcrum, or do we still need them in
> tdk-2.2.b1?
> > >
> > > I Don't know. There must be someone else able to answer this one.
> > >
> > > > Note:scarab is an excellant guide but as it uses turbine 3 it's a
> pain
> > > to
> > > > figure out what is applicable to turbine 2.x and what is not!
> > >
> > > It's a shame that there is no extensive standard sample for turbine
> like
> > > the
> > > PetShop example for J2EE. That would be so nice to have. Maybe we
> should
> > > initiate something like this. It would be better than any Howto in my
> > > eyes.
> > [SM]
> >
> > I agree...It's a shame but I think that both of the extensive open
> > source turbine projects (Scarab and Tambora) are both using turbine 3.
> > I think the newapp is good for starters (I learned a lot) but [SM]
> > it needs extending ;)
> >
> > > > Question 4: Do I still need to write adapters in 2.2-b1 (You mention
> > > that
> > > > this is not necessary)?
> > >
> > > If you go back to turbine security i think you do. I made a little
> > > adaptation to torque to generate this for me in 2.1 maybe that is
> still
> > > applicable. I would go fo Fulcrum though, as this is supposedly the
> new
> > > standard.
> > [SM] That's what I'd prefer to do aswell....;)
> >
> > > > Question 5: What services in turbine are redundant if fulcrum is
> used?
> > >
> > > Maybe do a little pattern match and find out :-) I think quite a lot
> as
> > > fullcrum has been derived from the original. Maybe someone could go
> > > through
> > > turbine and remove the old fulcrum stuff.
> > >
> > >
> > > > Question 6: Could somebody clear up this mess I've gotten into ;)?
> > >
> > > We are all in the same trouble here. I'm in a big mess as we are
> running a
> > > live application in 2.1 and i'm trying to adapt it to 2.2 but at the
> > > sametinme the still want additions made to 2.1. Getting a little
> confused
> > > here too.
> > >
> > [SM]
> > That's bigger trouble than I'm in.. ;)
> >
> > > Lot's of success and i hope my comments help a little,
> > >
> > [SM] likewise...
> > > Diederik de Groot
> > > Talon v.o.f
> > >
> > >
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Simon Moore [mailto:[EMAIL PROTECTED]]
> > > > Sent: donderdag 18 april 2002 8:23
> > > > To: Turbine Users List
> > > > Subject: RE: Extending TurbineUser in TDK 2.2b1
> > > >
> > > >
> > > > Hi Diederik,
> > > >
> > > >
> > > > I need to be able to reference the TurbineUser (and possibly extend
> it)
> > > > table in my other tables so I've tried the following:
> > > >
> > > > 1. The Scarab approach using fulcrum:
> > > >
> > > > <table name="TURBINE_USER" javaName="MyUserImpl" alias="TurbineUser"
> > > >
> baseClass="org.apache.fulcrum.security.impl.db.entity.TurbineUser"
> > > >
> > > basePeer="org.apache.fulcrum.security.impl.db.entity.TurbineUserPeer">
> > > > <column name="USER_ID" primaryKey="true" required="true"
> > > > type="INTEGER"/>
> > > > </table>
> > > >
> > > > <table name="MY_TABLE" >
> > > > <column name="USER_ID" primaryKey="true" required="true"
> > > > type="INTEGER"/>
> > > > <column name="my_column" primaryKey="true" required="true"
> > > > type="TIMESTAMP"/>
> > > >
> > > > <foreign-key foreignTable="TURBINE_USER">
> > > > <reference local="USER_ID" foreign="USER_ID"/>
> > > > </foreign-key>
> > > > </table>
> > > >
> > > >
> > > > Torque created all the OM objects and everything compile correctly!
> > > >
> > > > I then commented out the security service entries in my tr.props
> > > > and enabled
> > > > them in Fulcrum.properties
> > > > making reference to MyUserImpl and MyUserImplPeer where
> appropriate...
> > > >
> > > > When I tried to access http://localhost:8080/secur/servlet/secur I
> got a
> > > > horrible exception complaining that Turbine (the turbine broker
> service)
> > > > could not find the security service.
> > > >
> > > > Question 1: I was under the impression that commenting out services
> in
> > > > tr.props and uncommenting them in fulcrum.properties enabled the
> fulcrum
> > > > services rather than the turbine services, is this wrong?
> > > > Question 2: What's the equivalent of the MapBrokerService and the
> > > > PoolBrokerService in Fulcrum, or do we still need them in
> tdk-2.2.b1?
> > > >
> > > > Question 3: I noticed in scarab's tr.props that there was a
> > > > fulcrum database
> > > > service but I can't find this in tdk-2.2-b.
> > > >
> > > > Note:scarab is an excellant guide but as it uses turbine 3 it's a
> pain
> > > to
> > > > figure out what is applicable to turbine 2.x and what is not!
> > > >
> > > >
> > > > As you can see, There are various questions that I need clearing up
> as
> > > > regards the change over to using fulcrum (it's not as simple as
> > > > changing the
> > > > import statements)
> > > >
> > > > After this first attempt I then decided to revert to using
> > > > turbines security
> > > > service:
> > > >
> > > > <table name="TURBINE_USER" javaName="MyUserImpl" alias="TurbineUser"
> > > > baseClass="org.apache.turbine.om.security.TurbineUser"
> > > > basePeer="org.apache.turbine.om.security.peer.TurbineUserPeer">
> > > > <column name="USER_ID" primaryKey="true" required="true"
> > > > type="INTEGER"/>
> > > > </table>
> > > >
> > > > <table name="MY_TABLE" >
> > > > <column name="USER_ID" primaryKey="true" required="true"
> > > > type="INTEGER"/>
> > > > <column name="my_column" primaryKey="true" required="true"
> > > > type="TIMESTAMP"/>
> > > >
> > > > <foreign-key foreignTable="TURBINE_USER">
> > > > <reference local="USER_ID" foreign="USER_ID"/>
> > > > </foreign-key>
> > > > </table>
> > > >
> > > > Torque created all the om code but I got many compilation errors
> > > > complaining
> > > > about not find methods in TurbineUser/Peer etc...
> > > >
> > > > I didn't write any adapters as per the extended-users howto
> > > > because i wasn't
> > > > extending the user-table (for the moment), I just wanted to
> > > > reference it in
> > > > my other tables.
> > > >
> > > > Question 4: Do I still need to write adapters in 2.2-b1 (You mention
> > > that
> > > > this is not necessary)?
> > > > Question 5: What services in turbine are redundant if fulcrum is
> used?
> > > > Question 6: Could somebody clear up this mess I've gotten into ;)?
> > > >
> > > >
> > > > I appreciate any advice you or others can offer.
> > > >
> > > > Saimon
> > > >
> > > >
> > > >
> > > > > -----Mensaje original-----
> > > > > De: Diederik de Groot [SMTP:[EMAIL PROTECTED]]
> > > > > Enviado el: jueves 21 de marzo de 2002 20:02
> > > > > Para: Turbine Users List
> > > > > Asunto: RE: Extending TurbineUser in TDK 2.2b1
> > > > >
> > > > >
> > > > > >Hi Cameron,
> > > > >
> > > > > >You might have seen that i too have been stuggling under the
> previous
> > > > > >version to extend the User. I had everything working fine until
> 2.2b1
> > > > > came
> > > > > >about. I found you van at least do without the
> TurbineUserAdapters
> > > now
> > > > > >because you can directly access the extended TurbineUsers.
> > > > That is what i
> > > > > >have done at least. I need the Aliased table only for refering to
> > > > > >foreignkeys. I know it's not a good solution but it works for me.
> > > > >
> > > > > >I'm not a hunderd percent sure this is the way it was meant to
> > > > be but it
> > > > > >seems to work fine.
> > > > > >Just Change everything over to torque where criteria are
> > > > involved and you
> > > > > >seem to be fine.
> > > > > >I can't answer your actually question about things being in flux
> at
> > > the
> > > > > >moment. Let's see what the creators say :-)
> > > > > >Lots of success,
> > > > >
> > > > > >Diederik de Groot
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: [EMAIL PROTECTED]
> > > > > > [mailto:[EMAIL PROTECTED]]On Behalf Of
> > > > Cameron Cole
> > > > > > Sent: donderdag 21 maart 2002 19:26
> > > > > > To: Turbine Users List
> > > > > > Subject: Extending TurbineUser in TDK 2.2b1
> > > > > >
> > > > > >
> > > > > > Hello again everyone,
> > > > > >
> > > > > > Previously with version 2.1 I successfully extended
> > > > TurbineUser but ran
> > > > > > into some difficulty when attempting to add a foreign key to
> > > > my extended
> > > > > > user so I could place them on teams. I decided to put the
> > > > project aside
> > > > > > for a bit and return when 2.2b1 came out. Well 2.2b1 has come
> out
> > > > > > (Congrats btw! :) and I have again started to revisit the
> problem
> > > and
> > > > > > have run into a few interesting issues. TurbineUserPeer extends
> the
> > > > > > org.apache.turbine.om.peer.BasePeer where as all of my om
> objects
> > > > > > (including the ExtendedBaseUser) extend the
> torque.util.BasePeer. As
> > > > > > such when I attempt to compile my ExtendedBasePeer all of the
> > > > > > doSelect(Criteria, DBConnection) methods no longer compile b/c
> the
> > > > > > turbine BasePeer expects a turbine Criteria and my generated
> > > > > > BaseUserPeer is passing a torque criteria. This is also true of
> the
> > > > > > retrieveByPK methods.
> > > > > >
> > > > > > I have two main questions:
> > > > > >
> > > > > > 1. Is the user/security system in a state of flux and should I
> just
> > > > > > holdoff? If so, where can I get more information? (I have read
> the
> > > > > > archives, but haven't seen any conclusions as yet)
> > > > > >
> > > > > > 2. Is there another/better way I could go about this? If there
> is a
> > > > > > newer/better way to do this, and someone can kick me in the
> right
> > > > > > direction I'll try to document my trials and tribulations and
> > > > see if it
> > > > > > makes a reasonable how-to... (or how-not-to :) I understand from
> the
> > > > > > archives and current mail threads that the security system is
> > > > undergoing
> > > > > > review and rewrite, but I don't know where to get more
> > > information...
> > > > > >
> > > > > > Thanks,
> > > > > >
> > > > > > -cam.
> > > > > >
> > > > > > --
> > > > > > To unsubscribe, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > > For additional commands, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > To unsubscribe, e-mail:
> > > > > <mailto:[EMAIL PROTECTED]>
> > > > > For additional commands, e-mail:
> > > > > <mailto:[EMAIL PROTECTED]>
> > > >
> > > > --
> > > > To unsubscribe, e-mail:
> > > > <mailto:[EMAIL PROTECTED]>
> > > > For additional commands, e-mail:
> > > > <mailto:[EMAIL PROTECTED]>
> > > >
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> > > For additional commands, e-mail:
> > > <mailto:[EMAIL PROTECTED]>
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> >
> >
>
>
> --
> To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>