RE: Updating DataMap through ROP client

From: Zissis Trabaris (z.trabari..nsysware.com)
Date: Tue Feb 17 2009 - 13:29:32 EST

  • Next message: Andrey Razumovsky: "Re: Updating DataMap through ROP client"

    The ROP server is controlled by an instance of HessianServlet. I have
    tried to run Configuration.getSharedConfiguration() to get the map from
    the server and then clear the EntityResolver that way but it seems like
    the HessianServlet has its own version of the Configuration instance
    therefore its EntityResolver does not get cleared. The reason I must
    modify the Maps from the ROP client is that our application is
    distributed over the Web and has an MDA modeling component that allows
    our business users to modify the application at runtime. By doing so,
    they can create new tables or modify existing tables. Once they have
    finished modeling, they need the capability to synchronize Cayenne with
    the new models right from their ROP client in order for everyone else to
    use the changes. The client application must work through firewalls and
    HTTP proxies so I am forced to code everything in the ROP client layer.
    If I knew how to get access to HessianServlet's instance of the
    Configuration instance on the server side I could clear the
    EntityResolver and everything would work perfectly.

    Zissis Trabaris * Chief Technology Officer * INSYSWARE * 3235 West River
    Road, Grand Island, New York, 14072, USA
    Mobile (716) 930-5654 * Office (518) 636-4118 * Fax (716) 625-1305 *
    z.trabari..nsysware.com * www.insysware.com

    CONFIDENTIALITY: This email (including any attachments) may contain
    confidential, proprietary and privileged information, and unauthorized
    disclosure or use is prohibited. If you received this email in error,
    please notify the sender and delete this email from your system. Thank
    you.

    -----Original Message-----
    From: Andrey Razumovsky [mailto:razumovsky.andre..mail.com]
    Sent: Tuesday, February 17, 2009 12:21 PM
    To: use..ayenne.apache.org
    Subject: Re: Updating DataMap through ROP client

    The most common case to fetch Configuration instance in server is via
    Configuration.getSharedConfiguration(). But I still don't understand why
    you
    don't want to apply all changes on server side. This way, in theory, no
    reloading will be required on server (except cache cleaning).

    2009/2/17 Zissis Trabaris <z.trabari..nsysware.com>

    > I can clear the EntityResolver on the client side but since I don't
    know
    > how to get to the Configuration instance on the server side I can't
    > re-load the maps. Without re-loading the maps on the server side, I
    will
    > always get an entity not found exception when I try to use a newly
    added
    > ObjEntity.
    >
    > Zissis Trabaris * Chief Technology Officer * INSYSWARE * 3235 West
    River
    > Road, Grand Island, New York, 14072, USA
    > Mobile (716) 930-5654 * Office (518) 636-4118 * Fax (716) 625-1305 *
    > z.trabari..nsysware.com * www.insysware.com
    >
    > CONFIDENTIALITY: This email (including any attachments) may contain
    > confidential, proprietary and privileged information, and unauthorized
    > disclosure or use is prohibited. If you received this email in error,
    > please notify the sender and delete this email from your system. Thank
    > you.
    >
    >
    > -----Original Message-----
    > From: Andrey Razumovsky [mailto:razumovsky.andre..mail.com]
    > Sent: Monday, February 16, 2009 3:15 PM
    > To: use..ayenne.apache.org
    > Subject: Re: Updating DataMap through ROP client
    >
    > I don't know details of Hessian, but I don't think HessianServlet
    caches
    > any
    > data. Have you tried simply clearing client context's cache?
    >
    > 2009/2/16 Zissis Trabaris <z.trabari..nsysware.com>
    >
    > > I have solved the DataMap problem with the following: I have created
    > an
    > > HTTP back-channel that send the map xmls to the client. The client
    > then
    > > creates a new Configuration instance, modifies the data maps,
    > serializes
    > > the results to XML, sends them to the server and the server saves
    them
    > > to disk. The remaining problems to solve are the following:
    > >
    > > 1) I need to somehow refresh the configuration instances that are in
    > > memory for the HessianServlet.
    > > 2) Once refreshed, I need to somehow clear the object caches of the
    > > HessianServlet.
    > >
    > > All of this without dropping any connections that the HessianServlet
    > is
    > > servicing.
    > >
    > > Zissis Trabaris * Chief Technology Officer * INSYSWARE * 3235 West
    > River
    > > Road, Grand Island, New York, 14072, USA
    > > Mobile (716) 930-5654 * Office (518) 636-4118 * Fax (716) 625-1305 *
    > > z.trabari..nsysware.com * www.insysware.com
    > >
    > > CONFIDENTIALITY: This email (including any attachments) may contain
    > > confidential, proprietary and privileged information, and
    unauthorized
    > > disclosure or use is prohibited. If you received this email in
    error,
    > > please notify the sender and delete this email from your system.
    Thank
    > > you.
    > >
    > >
    > > -----Original Message-----
    > > From: Andrey Razumovsky [mailto:razumovsky.andre..mail.com]
    > > Sent: Sunday, February 15, 2009 1:10 PM
    > > To: use..ayenne.apache.org
    > > Subject: Re: Updating DataMap through ROP client
    > >
    > > Hi Zissis,
    > >
    > > DbEntities are not being sent to client (and DataMap is sent
    trimmed).
    > > So I
    > > don't think you can perform DataMap changes from client. What I
    would
    > > try to
    > > do is to write a custom query which performs your operations and the
    > > fire it
    > > from the client. I'm not sure this will work though.
    > >
    > > Regards,
    > > Andrey
    > >
    > > 2009/2/15 Zissis Trabaris <z.trabari..nsysware.com>
    > >
    > > > We have an ROP client that acts as a modeler for our runtime
    > > > application. Is there any way to modify a DataMap via an ROP
    client
    > > > layer, synchronize the DB schema like I would do using
    > > > ExecutingMergerContext at the server layer and then clear the
    server
    > > and
    > > > client object caches without dropping the ROP connection?
    > > >
    > > >
    > > >
    > > > Zissis Trabaris * Chief Technology Officer * INSYSWARE * 3235 West
    > > River
    > > > Road, Grand Island, New York, 14072, USA
    > > > Mobile (716) 930-5654 * Office (518) 636-4118 * Fax (716) 625-1305
    *
    > > > z.trabari..nsysware.com
    > > <mailto:%20%20z.trabari..nsysware.com
    <20%2520z.trabari..nsysware.com>
    > <20%2520z.trabari..nsysware.com <20%252520z.trabaris@insysware.com>><
    > > 20%2520z.trabari..nsysware.com <20%252520z.trabaris@insysware.com>
    <
    > 20%252520z.trabari..nsysware.com
    <20%25252520z.trabari..nsysware.com>>>>
    > > > *
    > > > www.insysware.com <http://www.insysware.com/>
    > > >
    > > > ________________________________
    > > >
    > > > CONFIDENTIALITY: This email (including any attachments) may
    contain
    > > > confidential, proprietary and privileged information, and
    > unauthorized
    > > > disclosure or use is prohibited. If you received this email in
    > error,
    > > > please notify the sender and delete this email from your system.
    > Thank
    > > > you.
    > > >
    > > >
    > > >
    > > >
    > >
    >



    This archive was generated by hypermail 2.0.0 : Tue Feb 17 2009 - 13:23:46 EST