I would like to have your suggestions on this.
I am new to ActiveVOS BPEL, please don't mind if my question seems dumb to you!
When we pass the data through SOAP UI, in ActiveVOS Designer upon removing the fault handler and change]ing the PDD Option "Suspend on uncaught Fault" to "true" for the BPEL process, I'm able to suspend and resume the process in the activeVOS Admin console.
Although, whenever I send the data through SOAP UI, it is giving me the time out exception without any response, but I could see the instance created in the Console.
When a request is sent through the SOAP UI, if we add FaultHandler to the BPEL process, the process directly ends up with the completed state. The options to resume the suspeneded process are disabled. Instead, I would like to resume the suspended process as well as response from the SOAP UI. Please address this and help me to achieve the intended result.
Thanks in advance!
the only thing that you can do is to place a scope (BPMN subprocess) and placing all activities from the initial receive (message catch event) to the initial reply (message throw event) in it. Then you can place an catch all fault handler in this scope. This will catch all errors that you want to suspend the process. Place a reply (message throw event) and a suspend after it in the fault handler. The reply will take care that the process caller will get some meaningful response and the ActiveVOS-specific suspend activity will then suspend the process. You can then rewind it or repair it by any means available in the ActiveVOS Console as long as you have a high enough persistence level configured in your PDD/server.
Related
I have to design windows service and I have some question:
Proper error handling, if there is an error what happens to the
service? Does he continue to be up and logging in? Error recording
in event viewer? Is he falling?
What happens to a long run? How do you know for sure that everything
is running as required, and he is not stuck?
How to handle high memory consumption, out of memory, or other error
that wasn't been write to the log?
Handle users - what happened if create log to user A and changed to
user B? Rewrite or continue from same point?
How to handle times? - Is the service automatically up?
Thank you.
For error handling, the best I can recommend is taking advantage of try / catch cases. This way you ensure that you handle the cases where something unexpected happens and you can either try to correct it or bring the service down cleanly. Keep in mind that exceptions are not propagated outside the scope of a thread so you need to handle them in each thread.
To be able to tell if the service is doing fine, you can periodically log into the Event Log what the service does. If you do proper try / catch for each thread, it should go smoothly. In C# you can use log4net and the EventLogAppender to log crucial / error info in the Event Log.
If your service causes high memory usage for no apparent reason, it is likely a memory leak. Microsoft has a free tool called ".Net CLR profiler" that allows you to properly profile your service and see what exactly is causing the leak.
Unless you are dealing with user-protected files (in which case you need to consult the Log On tab of your service to give it the appropriate credentials), your service shouldn't depend on any logged-in user. Services run independently of the users on the computer.
A service can be set to start automatically, to start only on-demand, or to simply be disabled completely.
I am getting this error when i am trying to start my app
Handling of 'touchstart' input event was delayed for 2147483647 ms due to main thread being busy. Consider marking event handler as 'passive' to make the page more responsive.
Now I know that this is related to making event handlers passive but what I want to know is how to make event handlers passive in whole project because there are many types of event handlers used.
I am geting this error in my ionic.bundle.min.js file
I have a QuickFIX initiator which receives frequent market data updates.
Altough i process each update as quickly as possible, still i have a concern regarding the callbacks.
Lets say, QuickFIX called my callback function and while i'm processing it, it's again called my function before the previous call is going on. What will happen in this situation? Is it guaranteed that i will be called for the next call or the engine can skip it because of the previous call is still going on?
Thanks
If the message is not malformed, then yes, a callback should be triggered for every message received.
(If it is malformed, the engine will reject automatically and will not pass the message to your application code.)
Incoming messages are actually collected in a queue while you are processing them. For this reason, you should not perform time-intensive operations in the the callbacks. If you have some lengthy processing, you should dispatch it to another thread so as to not cause the queue to back up.
I am developing an app in C++ that uses UIAutomation to receive notification of significant events related to user interaction. I have tried anevent handler by calling AddAutomationEventHandler to listened for window opened events, but I am having problems stopping the notification and cleaning up before exiting. If the user has launched certain applications, such as Firefox, the call to RemoveAutomationEventHandlerhangs. (Calling RemoveAllEventHandlers also hangs in this case.) Note that all calls to add or remove event handlers are done in the context of the same non-UI thread.
Note: I am seeing this behavior on Windows 7 and on Windows 8.
Any ideas on why this is happening or how to fix it? What makes the structure changed event different from all the others?
Window open/close events are implemented via the kernel WinEvent handlers; the structure change events involve the client app. Does your non-ui thread pump messages? UI Automation needs to pump messages to get cross-process communications working.
I want to put an Abort Label or button below...the processing message is shown in ZK. or is there any way to load my custom components instead of the default Processing. message in ZK.
Want will happen if do abort while processing is it ideal to do that, I want to do that anyways as few times my application sleeps while loading
ZK is built on Servlets. When the busy button is shown on the ui awaiting the ajax response then the servlet thread is doing long running work on the server. Perhaps it would be possible to send another thread to interrupt the first thread but really that is high risk as all the servlet threads can end up doing long running work and no new ones will be available to cancel them.
The best solution is that long running work should not be on the servlet thread but handed off to a background thread or message queue. See zk-asynchronous-ui-updates-and-background-processing. In that example the work is offloaded to a java.util.concurrent.ExecutorService which has an API to cancel the work.
Note that cancelling of a working thread uses interruption and it is not guaranteed that code which doing the work will respond to the interrupt properly such that it is actually cancellable. The answers on the thread cancel with executor service outline some of the issues and you should test whether the work you are doing can be interrupted using the API.