Jarvis Pizzeria blog refresh part 2 of 3

 

In this blog I do a quick refresh of the second 13 Jarvis Pizzeria blog posts
(note: the different headers in this blog contain a link to the actual blog).

14. Using an imported XSD in PCS

In this post we make an attempt to use an imported XSD containing a complex type in a web form. It is possible to ‘use’ the type, but things are not working very well (as described in the blog). In the current version (19.3.2) this works even less good. It is no longer possible to save the web form. The following error appears.

At various places in OIC the tooling has quite a bit of trouble with data types, and that in particular with complex data types but also with simple data types, not everything goes smoothly. These are generally not insurmountable issues, but in my opinion Oracle still has some work to do.

15. Testing in PCS against the Development or Production environment

In this post, testing in PCS is discussed for both the test and the production modes. In an earlier post we have already shown how a PCS process can be started from postman via a rest call (Using the REST interface to start a Process).
In this blog we show how this rest call must be adjusted to distinguish between a call in test or production modes. In a nutshell: we need to set the ‘pcs_mode’ param in the request header and give it the value ‘dev’.

16. Handling SOAP Faults in PCS

In this blog post we show how PCS deals with SOAP errors in the following two situations: the out of the box fault policies ON and OFF.

Are there any scenarios conceivable where a developer should turn off the fault policies? The disadvantage of turning on fault-policies is that the fault policies are turned on for the entire application. If one – for whatever reason – wants to build a proprietary error handling framework than this feature should be turned off.

For example, in the situation that an email has to be sent to one of our customers (like an order confirmation), and the process fails for some reason we do not want to use the retry policy of the default error handling, because that could mean that we send the same email 4 times to the customer. Isolating such functionality in a separate dedicated application is preferred in this case.

17. Human Tasks – Design First WebForms

In this post we make our first web form. On the form we use a dropdown list whose content is retrieved via a REST service call.

In PCS this is the common way to create web forms, but is that still the case in OIC? This does not seem to be the case for larger and more complex applications. VBCS with a PCS integration is then the more obvious solution. How to do this we will describe in a future post.

18. Workaround for XSD list-element issue in WebForm

This blog provides a workaround for the XSD list element issue in the web forms (Using an imported XSD in PCS).

For the reason given at the top of this blog in ‘Using an imported XSD in PCS’ this blog is no longer applicable at this time.

19. Notification Task in PCS

In this blog we show how easy it is to send an email notification in PCS.

In the example we send the notification using the notification activity. As an addition to the blog I want to mention that it is also possible to send notifications triggered from a humantask activity.

20. Different presentations for same WebForm

In this blog we show how easy it is to create a web form with different presentations. With presentations it is possible, for example, to use different data views per user (group)

If many different presentations are used, maintaining the web form can still be a challenge. This requires the necessary accuracy and attention. But yes, isn’t that always the case?

21. Deploying and reverting to Snapshots

This blog covers the use and possibilities of snapshots in PCS. Snapshots can be very helpful if the publish represents a certain version of the application. Later these snapshots can be deployed or reverted to in case you want to roll back to a previous version. It is also possible to see what was in the application at the time of the snapshot creation.

22. First step in Implementing the Order Processing, Interface Definition

This blog deals with the definition of the input and output payload and how the payload flows through a structured process.

23. Send Task vs Throw Message Event

This blog tells about the difference between a Send Task and a Message Throw Event within PCS and when you should pick one over the other.

24. Second step in Implementing the Order Processing, Multi Instance Subprocess

In this post we show how to run Multi Instance Subprocesses sequential and in parallel.

At the time we wrote the original blog, correlation was not working properly yet, so it was not possible to execute the sub-processes in parallel (gave a ‘conflicting receive’ error). In the meantime Oracle has solved this problem and it works very simply and smoothly. We will probably show this again in a future post.

25. Creating a Custom Tasklist for PCS

Is this blog we provide the tools to develop a custom task list. The url to get to these tools has changed slightly since we wrote the original blog (was “/bpm/components”, is now “ic/pub/components/”). We aim to develop a custom worklist in the future as well. We will certainly write about this.

26. Third step in Implementing the Order Processing, Correlation

So the correlation violation was caused by initializing the same correlation key twice. How was this solved back in the days when using BPM suite? The trick we could use in BPM suite was to use so-called scoped conversations. Instead of using the default conversation, the send and receive task in an embedded subprocess each uses this advanced conversation.

In the post we wrote:

“ So where does this leaves us? In PCS we haven’t seen the option to use Advanced Conversations (yet), thus you should find a way to work around this if you want to use send and receive tasks in a multi-instance parallel subprocess. Or you should stick with the sequential option and don’t use correlation.”

The good news is that Oracle has recognized that correlation is a necessary functionality and has now implemented it in a very useful way. We will also come back to this in the future.

This has brought me to the end of part 2 of 3 of the Jarvis Pizzeria blog refresh.

note: also check Rick Keller’s blog for the latest Jarvis Pizzeria news.

2 thoughts on “Jarvis Pizzeria blog refresh part 2 of 3

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s