I have a custom assembler, that uses the interface approach, which returns an
object with a XML property.
When I open two clients and edit one through LCDS the other updates as
expected. I then have server code which updates the same XML property and calls
the newer DataServiceTransaction refreshFill("...", null, propertySpecifier)
and again both clients update to the new XML property value.
However, if I restart both clients and first update via the push API the
clients DO NOT receive the changed XML property value. If I next update from a
client, both change and from here on out they will respond to the server
property change pushes.
It appears to me that something is being registered when an object is updated
via the assembler that allows it to respond to future server API property
pushes. I need the push API to work even when no client updates occur.
I should note that when using the push API I am only calling refreshFill with a
propertySpecifier and am never calling updateItem. I'm doing this because the
XML value is actually a compound property and changes depending on a given fill
parameter (it happens to be a date window which I cannot predict from the other
server code where the push occurs).
Anyone have any thoughts?