Page 1 of 1

COM Object and serverExecutions

Posted: Fri Aug 07, 2009 11:23 am
by ConvertFromOldNGs
by Stephen Persson >> Wed, 28 Feb 2001 1:59:53 GMT

Hi,
I have a problem...
We have an web app in which users can upload files to the server, where they are immediately zipped using a COM object, and all bundled together with other like files. Works great.
However we now want to give thin client users the same functionality.
The user browses for files locally, they get send back to the server where they are added or removed from the zip file. At least thats what is supposed to happen. I made the method that creates the COM object and does the zipping a serverExecution method, which had nasty effects. A COM object can not be created and used within a serverExecution method - it is always created and used via the local jade.exe. Hence it works fine for the web app - since this uses a jade.exe on the server, but not for thin clients using there own jade.exe.

Now I need a tricky way to get around this.
My first thought was a seperate little app running on the server using notifications. The client would copy the files to the server, then let the app know it needs to be zipped, letting the server do the COM object zipping stuff, then letting the client know how it got on.
This seems pretty messy to me, so I was hoping someone had possibly come across something similar and had worked out a nicer way to do this!

Thanks in advance...
Stephen Persson
Kinetix Group Ltd

Re: COM Object and serverExecutions

Posted: Fri Aug 07, 2009 11:23 am
by ConvertFromOldNGs
by Michael Jones >> Thu, 1 Mar 2001 1:47:22 GMT

Stephen,
Your problem is a common one, Hopefully in the future Jade will support this feature (see below). I resorted to a solution similar to the one you have
described, a bit ugly but relatively easy to implement in jade through notifications.
If you do discover a better solution (or anyone else), would you mind posting
a brief explanation/description here...



18766 pr B NFS status open. Opened 01Sep00
Headline
MSXML and server applications.

Platform
Windows NT 4.x opened against 5.1.7

Topic
Active X Exposure

Details
When starting an app through server execution method it will start the application through Jadrap.exe.
The current implementation of the Com/ActiveX support requires Jade.exe. We will open a new feature suggestion with the plant to see if it can be supported in the Jadrap.

Re: COM Object and serverExecutions

Posted: Fri Aug 07, 2009 11:23 am
by ConvertFromOldNGs
by Stephen Persson >> Thu, 8 Mar 2001 1:18:55 GMT

Hi,
How do you go about recieving notifications across different nodes? Reading back through an old posting (Notification of transient Objects - 20/6/99) Krull wrote the following:

Events caused by transient objects are only notified to subscribers on the node causing the event, for both system and user events. That means events caused by transient objects on a client node are managed entirely by the client node and no network traffic is involved; Only subscribers on the same node are notified....
..... transient notifications caused by methods executed on a
client node are handled entirely within the client node, the server is not involved.


Is there any way to get a notification caused on a client node to be recieved by an app on the server node?
How did you get around this Michael?

Thanks
Stephen

Re: COM Object and serverExecutions

Posted: Fri Aug 07, 2009 11:23 am
by ConvertFromOldNGs
by Krull >> Thu, 8 Mar 2001 6:40:48 GMT
Hi,
How do you go about recieving notifications across different nodes? Reading back through an old posting (Notification of transient Objects 20/6/99) Krull wrote the following:

Events caused by transient objects are only notified to subscribers on the node causing the event, for both system and user events. That means events caused by transient objects on a client node are managed entirely by the client node and no network traffic is involved; Only subscribers on the same node are notified....
... transient notifications caused by methods executed on a
client node are handled entirely within the client node, the server is not involved.

Hi Stephen,

The aforementioned crap applies specifically to *transient* event notifications, that is events caused by transient objects.
Is there any way to get a notification caused on a client node to be recieved by an app on the server node?

Yep, just subscribe and cause the event on a suitable persistent object. A convenient object to use for inter-node user notifications is the system singleton object (system is generally preferable to global for this usage, since there is only one instance of system whereas global can vary depending on the schema respective apps are running from).

To subscribe to a notification event in your server app:
beginNotification(system, myEvent, responseType, eventTag);

To cause an event from a client app:
system.causeEvent(myEvent, true, userInfo);

cheers
kRuLL