Re[2]: Inheritance problem in EOModeler
Re[2]: Inheritance problem in EOModeler
- Subject: Re[2]: Inheritance problem in EOModeler
- From: Marcelo Ruiz Camauer <email@hidden>
- Date: Tue, 24 Feb 2004 11:42:17 -0300
- Organization: Banco Rio
If you can make a view of ExtendedUser in OB into the other database, that should work...
WO will consider the join local. I don't know if OB can do it. Oracle
can, for instance...
--
Saludos,
Marcelo mailto:email@hidden
-----------------------------------
Monday, February 23, 2004, 7:12:59 PM:
AI> On Feb 23, 2004, at 10:58 AM, Marc Desjardins wrote:
>> The client framework contains a User table. In our
>> data framework, we are extending their user object to add more fields
>> and
>> relationships with our items.
>> The ExtendedUser and the User table are in two different openbase
>> database,
>> I'm not sure if this can create a problem.
>> When I try to run the application, I get the following error:
>> Error:
>> com.webobjects.jdbcadaptor.JDBCAdaptorException: EvaluateExpression
>> failed:
>> : Next exception:SQL State:42000 -- error code: 0 -- msg: SQL ERROR -
>> [position 236, near 'WHERE' in ' USER T1 WHERE t0.ID'] (1) table
>> 'USER' does
>> not exist. SQL: SELECT T1.FIRSTNAME, T1.LASTNAME, t0.USERNAME, t0.ID
>> FROM
>> EXTENDED_USER t0, USER T1 WHERE t0.ID = T1.ID
AI> Your problem is occurring because you are writing EOF code that
AI> results in SQL being generated that specifies a join of tables in
AI> different databases. OpenBase apparently does not support joins across
AI> databases.
AI> You can probably accomplish what you are trying to do (i.e., isolate
AI> your extensions in a different table and database from your client's
AI> table and database). To do so, you must avoid writing any EOF code
AI> that results in cross-DB join SQL being generated (including flattened
AI> attributes and WO component bindings that are attribute paths involving
AI> the ExtendedUser.user relationship). This will require two separated
AI> fetches, one from each DB, instead of a single join fetch. In your
AI> example, you would need to first fetch the desired ExtenderUser object
AI> and then use the value of the ExtendedUser.user relationship to access
AI> properties of the related User object (possibly by merely referring to
AI> the User property which would fire a fault if the User object has not
AI> already been fetched).
AI> Aloha,
AI> Art
AI> _______________________________________________
AI> webobjects-dev mailing list | email@hidden
AI> Help/Unsubscribe/Archives:
AI> http://www.lists.apple.com/mailman/listinfo/webobjects-dev
AI> Do not post admin requests to the list. They will be ignored.
*********************************************************************
Visite http://www.bancorio.com.ar y tenga el Banco al alcance de su
mano.
*********************************************************************
NOTA DE CONFIDENCIALIDAD / CONFIDENTIALITY NOTE
Este mensaje (y sus anexos) es confidencial y puede contener
informacion (i) de propiedad exclusiva de Banco Rio de la Plata S.A.
sus afiliadas o subsidiarias; o (ii) amparada por el secreto
profesional. Si usted ha recibido este fax o e-mail por error, por
favor, comuniquelo inmediatamente via fax o e-mail y tenga la
amabilidad de destruirlo; no debera copiar el mensaje ni divulgar su
contenido a ninguna persona.
Muchas gracias.
This message (including attachments) is confidential. It may also
contain information that (i) is exclusively property of Banco Rio de
la Plata S.A. or its affiliates or subsidiaries; or (ii) is
privileged or otherwise legally exempt from disclosure. If you have
received it by mistake please let us know by fax or e-mail
immediately and destroy or delete it from your files or system; you
should also not copy the message nor disclose its contents to anyone.
Thank you.
*********************************************************************
_______________________________________________
webobjects-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/webobjects-dev
Do not post admin requests to the list. They will be ignored.