Oracle Java Cloud is especially appropriate for moderate to complex Java applications. Due to BYOL licensing, it is also works well when you are planning to do dev and test in-house and then deploy it on Oracle Java Cloud. It is not well suited for simple Java applications due to the cost of Oracle Java Cloud. Simple applications don't need the fully managed aspect of Oracle Java Cloud.
In our organisation we are the only team that uses Platform.sh to host any site. This was a cost effective way for us as we were using Acquia Cloud earlier for these websites. We mostly use Platform.sh for those sites which are always in development as it is simpler and faster to handle these operations in Platform.sh. Then we do a lift and shift to Acquia as we move more towards the go live and post production maintenance side.
Platform.sh is not for beginners in my opinion. It has a good amount of learning curve in my opinion.
As this is a PaaS, teams habituated with cloud infrastructure may miss the server side support from their cloud teams. I believe you will have to work on server bugs more on your own.
During normal maintenance periods, integrations may fail if you are working on your sites in that time, in my experience.
We selected Oracle Java Cloud for its native integration with other Oracle solutions and its focus on Java applications. Overall, our experience with Oracle Java Cloud has been positive, as it has improved our efficiency, security, and scalability in developing cloud applications.
In our team we use Platform.sh mostly while sites are in developmental phase. Then we do a lift and shift to either Acquia or AWS depending on the type of sites we have. Platform.sh is really cost effective and more fluid in terms of Continuous Development hence the usage. After said development is done, we generally lift and shift to Acquia for more content heavy sites and to AWS for more transaction oriented sites.