Custom rate-limiting policy for OSB services

LimitSign

A rate limiting policy is a policy which you can configure so that certain clients can only make a certain amount of calls on your service. For example you can make it SLA based. Another benefit is that you can prevent clients to flood your service which requests which can overload a backend system. This could be accidental or it might be on purpose (DDOS attack). Most API platforms like Continue ReadingCustom rate-limiting policy for OSB services

Monitor and analyse SOA Suite data using ElasticSearch and Kibana

SoaSuiteElasticSearchKibana

In this article I am going to create a light-weigh dasboard build on ElasticSearch and Kibana which can monitor and analyse SOA Suite data. It is fast and easy to create. It is also extendible if you would like to do more analysis (Apache Spark), transform data before storing it (Logstash) or get data from other sources (Beats) and so on. In this example I will setup a SOA Suite Continue ReadingMonitor and analyse SOA Suite data using ElasticSearch and Kibana

Undeploy non default, retired or inactive soa suite composites using java

When building a lot of soa suite composites, your environments end up with many different versions. So we might end up with 3 LocationService composites with versions[1.0.0.0], [1.0.1.0] and [1.0.2.0] which is the default. This takes up resources and clutters the EM. So you might want to have a way to remove these easily with having to go to the EM and manually uninstalling all of them with the risk Continue ReadingUndeploy non default, retired or inactive soa suite composites using java

Issue Soa Suite 12.1.3 Context of the same RID xxxxxx already present in this family

Lately in our production environment we saw that when some of our services where called in rapid succession, some of them failed. Under normal load we never had issues but under bigger load we saw the following error in our BPEL instances: Failure in Oracle WSM Agent, category= security, function=agent.function.client, stage=fault due to RuntimeException. java.lang.IllegalArgumentException: Context of the same RID, 0:1:4 already present in this family, f42da30f-5c89-49d9-a4fd-bd2b7e80644e-00154a3f. It also seemed Continue ReadingIssue Soa Suite 12.1.3 Context of the same RID xxxxxx already present in this family

Using JMX to list installed 12C OSB and SOA projects including versions using Java

OFM

Lately we where looking for a way to easily list all the services (OSB and SOA) installed on our DTAP machines. A CMDB works as well as it is maintained. As this is tedious and manual labour, we all know from experience that the CMDB is never fully correct. So how do we know then what is installed where? We can open the EM and the sbconsole and have a Continue ReadingUsing JMX to list installed 12C OSB and SOA projects including versions using Java

SOA Suite 12C: Generating a JSON Web Token (JWT) in OSB

“JSON Web Token (JWT) is a JSON-based open standard (RFC 7519) for creating access tokens that assert some number of claims. For example, a server could generate a token that has the claim “logged in as admin” and provide that to a client. The client could then use that token to prove that it is logged in as admin. The tokens are signed by the server’s key, so the client Continue ReadingSOA Suite 12C: Generating a JSON Web Token (JWT) in OSB

Using the Coherence Adapter in SOA Suite 12C

Retrieving data from a back-end system or executing something in a business rule engine can cost quite some time. When we build services we want to strife for performance but sometimes you make services which you just can’t make any faster. One thing to keep in mind is that it is possible to cache in SOA Suite using the coherence adapter. For example retrieving data from a back-end system in Continue ReadingUsing the Coherence Adapter in SOA Suite 12C

Installing SOA BP 12.1.3.0.5 makes the flowinstance title disappear. Incoming workaround!

After installing bundle patch 12.1.3.0.5 we noticed that the flowinstance title of our instances in SOA where flakey. Meaning sometimes they appeared, but sometimes they didn’t. After some testing and going back and forth with Oracle support, we where not able to steadily reproduce the bug. We did come to a work-around though and that is forcing a dehydrate. Not the best option in my opinion but a possible workaround. Continue ReadingInstalling SOA BP 12.1.3.0.5 makes the flowinstance title disappear. Incoming workaround!

Custom 11G XPath function not showing up in JDeveloper 12C

You can write your own XPath lib in Java to make certain things easier and re-usable. For an example see here. From the documentation of 12C, nothing indicated that things would have been changed so I stuck in an old library and restarted JDev. When I opened the xslt mapper, I didn’t see my functions under User Defined. This made me wonder if maybe something did have changed. Last week Continue ReadingCustom 11G XPath function not showing up in JDeveloper 12C

SOA Suite 12C: Simple example of using the Spring component

A few days ago, we needed a some business functionality to validate an IBAN account number. You can use inline Java in your BPEL process but there are more elegant ways as you don’t want to pollute your orchestration layer with business functionality. An nice and elegant way, in my opinion, is the use of the Spring component. By using this component you can expose a Java bean as simple Continue ReadingSOA Suite 12C: Simple example of using the Spring component