• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Multiple Servers and Shared Editing Contexts
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Multiple Servers and Shared Editing Contexts


  • Subject: Re: Multiple Servers and Shared Editing Contexts
  • From: David Aspinall <email@hidden>
  • Date: Tue, 18 Nov 2003 12:06:34 -0500

I had some of difficulty with the JMS kit also. I wanted multiple messages (data changes, forecast request, and eventually session events) I ended up rewriting the kit.

My classes ended up as

JMSCoordinator.java
JMSClient.java
+ -- JMSChangeNotificationClient
+ -- + -- JMSChangePublisher
+ -- + -- JMSChangeSubscriber
+ -- JMSForecastClient
+ -- + -- JMSForecastRequester
+ -- + -- JMSForecastProcessor

The forecast request is initiated much like the change notification, in that it listens for interesting EO changes, then requests the forecaster tool to recompute the client's plan automatically, which then updates cached forecast values in the database, which the client apps pick up as change notification.

For the notification I also altered it to check the current database context to see if the updated object was even loaded and only re-fault it if it was already in memory.

I have also been thinking about only passing global ID's around, rather than snapshots. Although it seems efficient to send the snapshot, I found large objects could really hit the JMS server. So if I passed just the ID and made the object into a fault, then it is re-fetched only if it is still being accessed.

I also had difficulty with the Java Class Loader. The JMS jar's were loading in one framework, but it was being initialized by a different class loader than the frameworks. I was constantly getting class not found errors for things that I knew were loaded. I ended up having to create a JAR's framework to merge all the 3rd party jars and allow them to be loaded by the same loader that the application was using.

Oh, and I had more trouble using RMI on windows, so I switched to TCP for everything.

I submitted some of the early stuff (before I started rewriting) to wonder, but I didn't notice if they used any of it.

If you are interested I have placed the JMS and change notification stuff on my .Mac directory (heh, as a jaguar archive).
http://homepage.mac.com/daspinall


David


On 18-Nov-03, at 10:40 AM, Karl wrote:

Did you ever try using one of the notification frameworks? I am playing with the Wonder JMS-based framework but can't seem to get it working just yet.

I would like to propagate updates individual rather than having to reload all of the data. The number of updates is small compared with the total amount of data.

Karl
_______________________________________________
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.

  • Follow-Ups:
    • RE: Multiple Servers and Shared Editing Contexts
      • From: "Karl Gretton" <email@hidden>
References: 
 >Re: Multiple Servers and Shared Editing Contexts (From: Geoff Hopson <email@hidden>)
 >Re: Multiple Servers and Shared Editing Contexts (From: Karl <email@hidden>)

  • Prev by Date: Re: EOUtilities.rawRowsForSQL Deprecated?
  • Next by Date: serializing an NSTimestamp
  • Previous by thread: Re: Multiple Servers and Shared Editing Contexts
  • Next by thread: RE: Multiple Servers and Shared Editing Contexts
  • Index(es):
    • Date
    • Thread