[Mule 4]Catch numeric exceptions inside DataWeave

 Numbers are a simple data type, but become complex in real-time integration transformation scenarios. Number data type, we consider number system in base 10 and perform all kinds of arithmetic operations e.g. +, -, *, / etc. We do this starting in childhood: multiply two numbers, divide one number by another, or add two numbers. Now, where is the tricky part 🤔?  Let’s start with, various tricky aspects and possible remedies to these. This article is published on the MuleSoft Community  LinkedIn page. To continue reading please visit the below link. Please share your valuable feedback 😊😊😊

Number System Conversion in MuleSoft(Mule 4) using Dataweave

 The number 11, we call it eleven in the decimal system. Still, it can be a representation of three in a binary system or it can be seventeen in a hexadecimal system. The actual value of a number depends on the base it is calculated. It is interesting changing the base changes the value of the representation. Let us assume in some integration flow we are getting values in binary number system but target system accepts values in a decimal system or hexadecimal system or vice versa. Examples depicting values in various number systems: # DECIMAL BINARY HEXADECIMAL OCTAL BASE 10 BASE 2 BASE 16 BASE 8 I 5 101 5 5 II 14 1110 E 16 III 54 110110 36 66 IV 123 1111011 7B 173 V 240 11110000

DECIPHER: Dynamic XSLTs in BPEL (SOA 12c)

 While developing integrations in BPEL 12c, XSLT is most commonly used to transform different XML message structures. We generally come across scenarios wherein based on specific input fields, our transformation logic changes. What we generally do is have all conditions within the same XSLT file. This makes our XSLT look a lot bigger and difficult to maintain. A better way would be to have different XSLTs and move deciding factor out of XSLT. Once we create different XSLTs for specific use cases having the same output format, now the question will come how to configure these XSLTs to be picked at runtime? This blog is curated with answers to such and many more questions. Let's take the example of account creation. There is a source application sending account information in an XML document which we need to update in a backend database. Now source system can send different types of address information like home address, business address, or shipping address. We get this information

Creating and Using Key-Value Lookups in MuleSoft (Mule 4)

Lookups or key-value pairs are really helpful while developing integrations. Suppose, we get a value from the source system but the target system requires a corresponding value for that key(incoming data). One way is to store such cross-reference in a database table and fetch values. What if, these values are not changed frequently, and accessing a database will probably pose an overhead. A better approach would be to have a static lookup file included within the Mule application. This lookup file can be a .csv, JSON, XML, Excel, etc. file. For simplicity, in this blog, we will be using CSV files as an example for creating and using lookups in Mule 4. A CSV file is easy to maintain and use. Let's start with the below use case. Let's take a use case of Country codes. From the source system, the country field contains Country Name e.g. India but our target system requires 2 character Country Code e.g. IN as input in one of the fields. Now

Playing with XML Namespaces in Mule 4 Dataweave

 Today, the world is full of REST APIs which use JSON as a major message type. But we have a lot of applications and APIs in the middleware world which rely on XML message structures. XML messages are a bit more complex than JSON messages, as in XML messages namespaces play a vital role. A miss in the namespace can lead to errors that are sometimes unseen to normal eyes. In this blog, we will discuss various ways by which we can handle the transformation of XML messages with or without namespaces in Mule 4 using Dataweave. Transforming XML messages without namespaces Transforming XML messages with namespaces  1. Transforming XML messages without namespaces This conversion is pretty simple, all we need to consider is XPath and do the mapping accordingly. This is similar to the JSON data transformation Let's take an example of 2 XMLs, wherein both input and output XMLs don't have namespaces. The output we need to specify is application/xml . IN

Popular posts from this blog

DateTime formatting using xp20:format-dateTime ()

Import and Export MDS artifacts in SOA 12c

Create Delimited String from XML Nodes and Vice Versa in SOA 12c