Sharing data between two Web Apps

Hi,
I have got two web applications that share a MySQL database accessed by
Kodo JDO. I have tremendous difficulty to share the state that one web
application writes to the database with the second web application. The
data seems to stay in the cache of the first app and I have not found a
way to flush the data to the SQL database, so that the second can read it.
I do a refresh on the relevant object within the second app. The problem
seems to be flushing the cache of the first app.
Best regards
Wolfgang
PS: To Solarmetric: Thanks for this wonderfull technology. I am building a
complex database application, without having to learn SQL.

Hi Greg,
this:
properties.setProperty("kodo.DataCache", "false");
does not do the trick. There is no difference in behaviour. To use
kodo.RemoteCommitProvider I would need the performance pack at 900 bucks a
pop, which is not an option right now.
Best regards
Wolfgang
Greg Campbell wrote:
Hi Wolfgang,
Are you using Kodo's Datastore cache in both web apps? I suspect that what
is happening is that the data actually is being flushed to the database
appropriately (assuming that you commit your transactions), but that your
cache in your second app has stale data. Could you turn off the datastore
cache in both apps just test that hypothesis?
If your applications start to work as expected with the datacache off, then
you should check out (assuming you're using Kodo v. 3.1.3)
http://www.solarmetric.com/Software/Documentation/3.1.3/docs/ref_guide_event.html#ref_guide_event_conf
That section of doc describes how to get the datastore caches in the two
JVMs talking to each other.
Thanks,
Greg
"Wolfgang Kundrus" <[email protected]> wrote in message
news:ccli85$lae$[email protected]..
Hi,
I have got two web applications that share a MySQL database accessed by
Kodo JDO. I have tremendous difficulty to share the state that one web
application writes to the database with the second web application. The
data seems to stay in the cache of the first app and I have not found a
way to flush the data to the SQL database, so that the second can read it.
I do a refresh on the relevant object within the second app. The problem
seems to be flushing the cache of the first app.
Best regards
Wolfgang
PS: To Solarmetric: Thanks for this wonderfull technology. I am building a
complex database application, without having to learn SQL.

Similar Messages

  • Sharing data between two separate user sessions

    Hi all!
    I have been trawling my brain for a solution to this - any help will be appreciated!
    I would like to create a single instance of a class but share that instance over more than one user session (two separate users but both running concurrently).
    Just as you can pass data between sessions using ABAP memory - I would like to pass data (specifically an object reference) between two separate users that could even be logged in to two separate application servers...
    Even a mini Client/server solution would suffice but I cannot figure one out!
    Is this possible?
    Many thanks for your thoughts in advance...
    N

    Hello N K,
    sorry thats not possible. Sharing a data item / object instance requires at least a common physical memory. As this is not guaranteed between different app. server this is technical not possible.
    With release 640 ABAP offers the new feature Shared Objects. These mechanism allows access by different users and some propagation to differnt servers.There is an interesting article on the ABAP SDN homepage
    https://www.sdn.sap.com/sdn/developerareas/abap.sdn
    For relases below more or less the database is the only chance to store data accross application servers (known to me). One exception might be the ENQUEUES which might (mis)used to store some Flags.
    Kind Regards
    Klaus
    Link to Shared Objects PDF
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/shared objects in abap

  • How to exchange data between two web application (servlet)

    Hello, all,
    I have two servlets: SerlvetA and ServletB, they are deployed as web appA and appB in the same web container(tomcat)
    How ServletA exchange data with ServletB?
    I have tried follow methods:
    1) appA and appB could not share HttpSession, so I could not transfer data through session
    2) I write a new sigleton java class called AppBroker, servletA get AppBroker's instance, and set some data into the it. ServletB could not get the same instance of the AppBroker, because the appA and appB use different class loader.
    tell me how to?

    thanks reply, but
    1. static class can not solve the problem, it is same
    as my sigleton class method, as different web app use
    different class loaderhmm... at least in tomcat this seems not be true since i can use static classes in one webapp that are available in another web app on the same host/servlet runner.
    Maybe if you build your own classloader than the "scope" of the static class is limited to that classloader (for my understanding this shouldn't be the case since i think it depends on the instance of the jvm and not of the classloader..?!).
    2. rmi and object serialization are too expensive!
    I am working on how to use jndi to solve this problem.
    And I think this maybe a Sevlet specification's
    shortcoming: maybe a Local Method as EJB local
    interface need been introduced into servlet spec.
    could you suggestion other methods?none at the moment. i guess the basic methods are listed.
    Maybe there's just one left, a really ugly one. Depending on what kind of data and how often you have to exchange you could think of building a file-based queue, i.e. a dir where you drop files in an read out from the other web app (maybe based on a file/directory listener). But this would only be an appropriate way to go for kind of email and messaging systems i guess...

  • Best way to transfer file between two web apps

    I'm looking for some architectural suggestions. Seems like a simple problem, but I'm really struggling.
    -- Problem:
    We have two web servers, both running apps in JBoss. I need to pass a file of roughly 20MB from one server to the other, and get the other server to process it as soon as it receives it.
    -- Details:
    Seems simple enough... My plan was to write a web service to pass it. Our company is all onboard the SOA train. I wrote a service that encoded the file as a byte[] and passed it. Works amazing for small files, but throws an Axis OutOfMemory error when trying to base64 encode the file. I then looked at using attachments for web services, but dismissed that. It creates malformed XML since it treats the service as a multipart MIME message wraps the webservice inside. It quickly became messy and I couldn't get it working. Seemed to defeat the purpose of an XML service too.
    I've considered just doing a HTTP POST of the file to the other server, but that's poorly documented and a bit of a hack way to do it. I also considered just dropping the file in a web accessible folder, then using a web service to pass a URL and get the other server to retrieve it via HTTP. Again, not a very nice solution.
    Anyone have any suggestions? Thanks.

    Kimos2 wrote:
    I don't have access to run/configure services on these machines, so FTP is out. It has to be JVM to JVM. Even if I did, I'd have to worry about triggering JBoss to process the file right away after it had been dropped there. I know i could poll the directory or send a message to trigger the process, there'd be synchronization issues etc to work through and seems to introduce unneeded complication.Yes, I agree with that. Having been through the polling directories and grabbing partially uploaded files scenario ad nauseam. It's much worse with large files too.
    Barring any suggestions I haven't thought of, I'll probably end up settling on the HTTP POST solution. My problem is that it's providing a service without a specification and is not self-describing. No WSDL file to pass to clients that plan on using it. I would do HTTP POST as well. I didn't understand the part about "without a specification". You do have a specification, don't you? Wasn't this it: "I need to pass a file of roughly 20MB from one server to the other, and get the other server to process it as soon as it receives it." Informal, yes, but I don't have a problem with that. Post it to a URL on the receiving server and set up the receiving server to do whatever it's supposed to do with the file.

  • Sharing data between two canvases on the same form ?

    Hello,
    I have one form with two canvases and two data blocks.
    Datablock A and datablock B are same tables.
    The reason I split is so I can have a search field on canvas A, then after executing the query, I want to populate canvas B.
    I'm having trouble sharing the data across both data blocks.
    Note: I set up a relation in datablock B to correspond with A, and I've chosen field name "Horse" to be my master and detail item.
    "When-button-pressed-trigger" --> Here is part of my code after the user presses the "Search" button (in datablock A).
         execute_query;
         SHOW_VIEW('CANVAS_HORSE');
         HIDE_VIEW('CANVAS_SEARCH');
         :fox_horse.horse := :fox_horse1.horse     ;                         GO_BLOCK('FOX_HORSE');
    When I go back to my "FOX_Horse" datablock, why is the :fox_horse.horse field the only one populated? I though by creating a relation btwn the two blocks they would syncronize automatically ?
    Any advice ?
    Thanks,
    Bob

    Alex,
    I have tried your suggestion, yet I'm still having a problem once I issue my execute_query command.
    In my Search button I have this code:
    BEGIN
    :fox_horse1.horse := :fox_horse.horse;
    GO_BLOCK('FOX_HORSE1');               
    execute_query;
    END;
    Note that FOX_HORSE is NOT a database block (as you suggested), but FOX_HORSE1 is a database block.
    So when I click on the "Search" button I can see the :fox_horse1.horse field getting populated immediately, but then the system asks me if I want to save changes. When I say NO, the actual data block portion of my screen just defaults to the first record, so my exec_query show no effect at all.
    What am I doing wrong in my search button trigger ?
    Thanks so much for your advice,
    Bob

  • Sharing data between two computers

    Hi
    I have a mac running itunes in my office, it is not connected to the Internet any more. At home I have a PC which is connected to the Internet with itunes running on it. Can I purchase songs on the PC and then transfer them to the mac? How would I do this?
    Thanks!

    *Can I purchase songs on the PC and then transfer them to the mac?*
    Yes you can. Have a look at these guides:
    iTunes for Mac: How to copy purchases between authorized computers
    iTunes for Windows: How to copy purchases between authorized computers

  • Sharing data between two iPads with different iclouds

    Hi basically I want to be able to link notes etc from my iPad to my bosses iPad, obviously we have different iCloud's and we don't mind using a third party app. anything anyone can suggest.

    Thank you! The itunes accounts are on different computers. The movies I want to share are digital downloads that came with movies I purchased. Example Rio. My son has an Ipad2 and and I have an ipad. I mainly want to be able to share the movies with him on his ipad.

  • Use of SAP memory to transfer data between two different sessions.

    Hello experts,
    I wish to know how to use SAP memory to transfer data between two different sessions.
    The scenario is that when I run a report and change a variable, the value of changed variable should be availabe to another user on another terminal.
    Thanks & Regards!
    Sumit

    Hello,
    Just to add what Max has already mentioned. IMPORT TO / EXPORT FROM DATABASE statements can be used to store data in special "cluster" tables (you can't use any DDIC table) e.g., INDX.
    @OP: You can opt for Shared Memory(SHM) for this specific requirement as well. In my opinion SHM is a bit tricky to code, but it is easier to monitor. The opposite holds true for "data clusters".
    You should remember SHM is app-server specific. So if you've a load balancing scenario, using SHM can cause problems.
    Hope i'm clear.
    BR,
    Suhas
    Edited by: Suhas Saha on Nov 19, 2010 4:12 PM

  • In BC how do you display fields between 2 web apps

    I have successfully connected two web apps by creating a 1 to 1 relationship between my two web apps Article and Author.
    So, when a user is on the details page of my Article, they see the Authors info.
    But, now, I need to do the reverse..create a page that displays ALL of the Articles written by a specific Author.
    Thanks

    Hi there,
    You actually should set up categories rather then using a custom field like that. Under site settings in the admin, you will see them there.
    On a web app item, the button in the top left.. If you click that you will see the classification option.
    Once you do that in you can insert web app item lists based on that specific category and the Web app search, can search just for those.

  • Sending data between 2 AIR apps on seperate machines

    Hi.
    I am wondering if it is possible to somehow send data, i.e
    input text or image data between an AIR app installed on 2 seperate
    machines? I dont want to have to send the data from the first
    machine to an online server and have the second machine have to
    check the server for updates. If possible i would like to link the
    two apps directly? is this possible?
    Barry

    This isn't possible right now. Flash 10 has a new feature
    that allows a connection between two machines after going through a
    "matchmaking" server. This will become available to AIR
    applications in the next release.

  • How can I share data between two forms on different lists

    Using a custom content type, I created two lists that I want to share the same data - one is a calendar.  Our employees complete a form from the "Out of Office Request" list that has workflow functionality that sends an email to that person's
    manager.  If the manager approves the request, the item automatically populates the "Out of Office Calendar."  The problem is that the only information from the request list that populates the calendar is the Title field and date/time fields. 
    I need the manager name in order to create a view for each manager.  
    How can I connect the other information in the request list to the calendar list.  It seems to me that if the title and date fields carry over the information, there should be a way to connect the other information.  I'm using Designer.
    I've tried to connect the two lists' webparts with the wizard, but when I get to the page that maps the two lists, there are no column names and the "Next >" button is grayed out.  This seems like the logical place to connect the two lists,
    but it isn't working.

    Hi,
    According to your post, my understanding is that you wanted share data between two forms on different lists.
    To show external  information on the calendar event, there are two methods: Calculated column, workflow. You can refer to:
    A Simple Guide to Show More Information on a Calendar Event
    I recommend to use workflow to achieve what you want. But you need to create a people column to display the manager.
    You can create a workflow associated to the "Out of Office Request" list, add action to Start Approve Process. If the manager approves the request, you can create a item in the calendar, and then update the people column and the title column.
    Then the calendar will display the Title, date/time and the manager.
    To create a view for each manager, you need to modify the Filter. You can use the people column is equal to the manager name or the Title contains the manager name.
    Thank you for your understanding.
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Different ways to copy data between two schemas in one instance

    Hi there,
    I am searching a good way to copy data between two schemas in the same instance.
    Both schemas have an identical structure such as triggers, tables, views and so on. The only difference is the purpose: one is the productivity system and one is for development.
    I looked at datapump but I do not explicit want to export / import. I want to keep the data in the productivity schema as well as copy it to the other schema. Any ideas? I found out there is a copy statement but I dont't know how that works.
    Thank you so far,
    Jörn

    Thank you for your replies!
    I also thought of creating a second instance for development and move the dev - schema to it. I just don't know whether our server can handle both (performance?). Anyway the idea is to have a possibility to quickly rebuild the data inside a schema without indixes or triggers, just pure data. I thought the easiest way would be to copy the data between the schemas as they are exactly the same. However if you tell me DataPunp is the best solution i won't deny using it :).
    When you export data a file is created. does that also mean that the exported data is deleted inside the schema?
    best regards
    Jörn
    Ps: Guido, you are following me, aren' t you? ;-)

  • How can I get extract the data between two cursors on an XY graph

    How can I get extract the data between two cursors on an XY graph

    Well, you say xy graph, so this might be a more complicated problem.
    For a waveform graph it's trivial. Simply get the two cursor indices (property: cursor index) and apply them to array subset of the data. Is that all you need?
    Here's how the above code would look like. using cursor.index instead of cursor.x elimnates the need to include scaling information.
    For an xy graph, there could be multiple segments (e.g. imagine a spiral that passes the desired x range multiple times from both sides). This would neeed significantly more code for a general solution.
    Message Edited by altenbach on 11-24-2009 07:53 AM
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    cursorsubset.png ‏17 KB

  • How to compare data between two tables?

    Hi,
    My team is trying to develop a SAP data migration tool (DMT) using ABAP.
    One of the functionalities in the DMT is to validate the data in the staging area against the loaded SAP data.
    The tables in the stagin area are customer tables (i.e. user-defined tables starting with Y, Z).
    How do I compare the data in the staging area against data that are loaded into SAP tables? Are there some built-in SAP functions to do this? Or, are there some better ways of doing this (e.g. instead of comparing against data in the SAP tables, we compare with some INTERNAL tables)?
    Any help would be greatly appreciated, thanks!

    Hi Kian,
    Use <b>SCMP</b> transaction to compare data between two tables and you can not use this for comparing internal tables.
    Thanks,
    Vinay

  • Two web apps using the same EJB client jar

    I am currently deploying two web apps on a server. Both web apps use an EJB client
    jar (the same jar) to access EJB's and both apps work when tested independently.
    The problem arises when I log into app A and then log into app B. As soon as
    I do app A loses it's references to the EJBHomes, and other classes.
    It seems a classloader is unloading the first classes and instances loaded by
    the first app and then loading them from app B's client.jar.
    If I put the client.jar in the system classpath everything is fine, but that's
    just a hack.
    Is it not possible to deploy two web apps on a server using the same client.jar's
    in their own WEB-INF/lib's?

    Joe,
    As Pravin mentions, the checking of those boxes in Workbench triggers scheduled jobs within the EAC that kicks off the scripts at the appropriate time/day. But as you've noticed, there's not a ton of flexibility and you don't get cron or Windows Scheduler-type capabilities.
    If you need to do something special, you can manually kick off the report generation scripts from your control directory using the runcommand.bat (or sh) script or place the command into a cron/Windows Scheduler job:
    For example, to kick off the WeeklyReports job, you would do this:
    runcommand.sh WeeklyReports runSo, assuming you go down the route of creating multiple ReportGenerators and scripts, you would create a job to kick off the new script you've created at the appropriate time.
    Hope that helps,
    Patrick
    http://branchbird.com

Maybe you are looking for