I am using Read Resource Content operation in repository service in one of our core processes. Its being used to pull XSL file from the repository.
I have used this lightening bolt to catch com.adobe.repository.RepositoryException exception. As per workbench documentation, this exception will be thrown when an error occurs while retrieving the item from the repository. But whenever a file which process is trying to pull is not available in the repository, exception is not being caught through this lightning Bolt.
I need to have more insight around this as I am getting general unhandled exception (DSC: Invocation Error) thrown in this case which leads to no clue about what went wrong in the process.
Try to catch the generic SYSTEM EXCEPTION and see if it catches it.
Thanks for the quick reply Jasmin.
That was my first thought SYSTEM EXCEPTION should catch everything but surprising its not cathing anything.
Well I tried both SYSTEM EXCEPTION and com.adobe.repository.RepositoryException(Only two are available). Both are not cathing any exception when file is missing in the respository. I just get the unhandled exception from LiveCycle -
There is this Exception event you can use under the Events view.
Create a new process and drag the Exception event to it and make it a Start Point.
Once you've activated this process, the exception catcher should catch any exception being thrown. This way you can send a notification or something.
Thanks for the suggestion Jasmin.
I have couple of questions about the usage of this event. I already have one process which has this respository service being used in it. my process has already one starting point in it. Shall I drop it in my process and make this event as starting point?
Also when I drop this event and make it starting point, i get a big dialogue box to put some data in it. I am not sure what to put in there.
I would have a separate process for you event catcher. They don't need to be on the same process.
The dialogue box if for configuring two things:
1- A filter that allows you to catch only exceptions of a specific type.
If you expand the Exception tree under 'Filter Keys Data Set', and double click on one of the property (i.e. Fault Name), this will allow you to only catch events with a Fault Name that you set.
2- A process data map, that allow you to put some of the Exception property (Fault Name, Source, Message) into local process variables. Don't forget to make the process variable to your local process as 'Input' for them to populate properly.
I undestood the event concept. Thanks! I made one separate process named catchException and dropped this exception event in it making it start point. I did not populate anything in the dialogue box which popped up since I don't want to filter any exception and at this point no data needs to be passed back to the process.
My next question is how to tie this catchException process with my original process which has repository service used in. I need to catch repository service process in my main process.