Is it possible to convert Java objects into Ballerina objects and/or JSON types? I want to use the POI Java package to read XLSX and make it available in Ballerina land as a record[] or json[] or something else.
Convert Java object to a Ballerina JSON value
68 Views Asked by Ayesh Almeida At
1
There are 1 best solutions below
Related Questions in BALLERINA
- Got a timeout error when I send an email using gmail:ClientConnector in ballerinalang
- Starting wso2 3.0.0 gateway windows "Could not load Logmanager"
- Ballerina java.jms: How to set up request reply communcation
- How to handle xml inside foreach? --> incompatible types: expected 'xml', found '(xml|string)'
- IOException when trying to run new ballerina project
- Ballerina "type 'json' does not support field access for assignment"
- How to pass a value to a method in an isolated object in Ballerina?
- Type narrowing doesn't work when a record defined with rest field
- How to include special characters like "-" in a resource path of a ballerina service
- Setting Time-To-Live and Expiration for RabbitMQ Queue in Ballerina Using RabbitMQ Client
- How can I mock a Ballerina HTTP Client when writing Ballerina unit tests?
- How can I prevent ResponseInterceptors from executing when using a RequestErrorInterceptor in Ballerina?
- `cannot resolve module` compilation errors after downgrading the Ballerina version
- How to build a Ballerina project with tests
- How to convert string to SQL Query
Related Questions in BALLERINA-SWAN-LAKE
- Error - "cannot infer type for parameter 'rowType'" when using the find function with MongoDB in Ballerina
- How to programatically determine if a function is isolated or not in Ballerina?
- Is there a way for a mock Function to return different values in subsequent calls?
- Open API generator - two generations, order is not same
- Ballerina dependencies are resolved for the latest available than what specified in Ballerina.toml
- How can I return a stream value in a http resource function in Ballerina?
- Facing compilation error while trying to import the package in Ballerina
- How to mock a function in a imported ballerina local module in unit test
- How to convert a data of `byte[]` coming from RabbitMQ broker into a record type in Ballerina
- Are string numeric literals with floating point suffix the valid CLI arguments in Ballerina?
- What is the use of `regexp:Groups` and how to access it in ballerina regexp?
- How to check if an object exists in an array in Ballerina
- Do we have dynamic code loading and execution support in Ballaerina?
- Should Asynchronous function calls be cancelled before wait if error occurs in Ballerina?
- Insights on the Access Log Format in Ballerina
Related Questions in BALLERINA-JAVA-INTEROP
- Convert Java object to a Ballerina JSON value
- How to pass java Map to a java function from ballerina?
- Issues calling Java from Ballerina
- Ballerina Java Cast Exception
- How to invoke user defined non-static Java method from Ballerina
- Ballerina java.lang.ClassNotFoundException while running module/project
- How to create a docker file for a Ballerina program which uses Java interoperability?
- Is there a way to use a java library in my ballerina project?
- Ballerina: undefined function 'getItemType' in type 'xml'
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Yes, you can achieve this using Java interoperability and the bindgen tool to generate Ballerina objects corresponding to Java objects. Check out the following resources for more information:
However, note that there is no direct way to convert Java objects to Ballerina records or JSON types. Here are a couple of options:
If you have a string representation in JSON format, you can use the
fromJsonStringWithTypefunction to convert it to an array of JSON or records.You could create the Java representation of
json[]in an external function you implement (actual conversion would happen in Java). For example, creating aio.ballerina.runtime.api.values.BArrayvalue usingio.ballerina.runtime.api.creators.ValueCreator#createArrayValue.This approach involves more work since you'll have to create a new array type and recursively parse/map the values too.