WSO2 integration approach - wso2

We are planning to use WSO2 in the scenario where we are receiving a file from people soft application with customer/user details (file size: approx 2GB) and that need to be inserted in SAP success factor. We want to use the WSO2 product for integration between People soft and SAP. We were looking into some of the WSO2 product to achieve this, like DSS for streaming file or batch processing and ESB to use for our scenario.
Can DSS/ESB help in our scenario for streaming the data from file and call SAP webservice to create user?
Is there any approach in WSo2 Product to read row by row from source (here txt /csv file) and then do transformation and then call webservice to create data in target system. Please advise.

You can read a file in streaming mode with WSO2 ESB (with a "VFS" proxy) and use smooks mediator with a smooks config file describing your csv structure.
You will find different samples over the net, one of them : http://vvratha.blogspot.fr/2014/05/processing-large-text-file-using-smooks.html
In most of the samples, when smooks split the content of your huge file in small parts, routing fragments in JMS or in other files, you will find a "highWaterMark" in the config with an attribute named "mark" with a huge value : you absolutly need to replace this value with -1 to avoid poor performance

Related

wso2 esb poll files, read data, transform data publish record message

My tech req is the following :
Poll CSV Files
Read Data line by line
Transform data to desired format
convert to JSON/XML
Publish data thru REST/JMS
Deploy in WSO2 EI6.1.1
How is this possible in DS Tooling 3.8.0 of WSO2 ?
I know inbound endpoints,mediators,sequences proxy services etc can be used, but cant find a single document/article that helps in doing this.
Where do I start? How do I sequentially execute these steps? Artifacts are independently created, but dont how to automate them to an integration flow.
Appreciate if someone can shed some light.
Solution :
Create empty ESB solution project.
Create Proxy-Service.
Use Smooks-config for tranformation of CSV flat data to XML format
Create endpoint, for producing JMS messages to JMS queue of ActiveMQ.
Use datamapper mediator, if transformation is required
Use log mediator , for logging.
Use property mediator for setting endpoint related properties.
Config - axis2.xml,axis2Client.xml for enabling transport settings on E1611.
Export to CAR file, deploy on EI611 management console.
Happy Testing!!

WSO2 Data Mapper Mediator

Is it possible to use the mapping technique with the dynamic input/output?. Because WSO2 documentation shows only the input/output from the file system.
Basically I would like to map output of one webserive as input of the other webservice
As long as you know the schema of the output and the expected schema for the input, this can be done. [1] provides a sample where an output from a web service is written to a csv file using the data mapper. In a similar manner if the schema is known of the input and the output your requirement can be achieved.
[1] http://chathurikaerandi.blogspot.com/2016/07/mapping-to-csv-and-writing-output-to.html
Thanks
Erandi
This can be solved by writing the custom sequence and use as a mediator in the WSO2 ESB service creation. No straight forward way yet

WSO2 BAM 2.5 - Output Event Adaptor

Two questions on WSO2 BAM 2.5 Output Event Adaptor - 1) Why is there no "email" option in the output event adaptor type? As per the documentation, it should be there. Even if I create my own XML file for the Email event adaptor and drop it in the required folder, then type "email" is not recognized and the BAM is showing that as "inactive". 2) Which directory and file does the default logger output event adaptor write the logs to? I have configured that and I can see that the messages have got generated through Hive scripts and written to BAMNotifications column family but I am not able to see the logs in the repository/logs directory log files? Please help.
1) This issue occurred because of an OSGI loading issue in soap output adapter (It causes failure to some other output adapters). We have fixed that in next BAM version. For the moment to overcome this issue, please remove the soap output adapter jar (from plugins directory), restart and continue.
2) It needs to go to wso2carbon.log file. Can you please verify the log4j properties.

Connect Adobe Flex To Arcgis Service?

I'm trying to connect my flex app to my Arcgis webservices. I tried using the connect to webservice interface. But I keep getting this error.
There was an error during service
introspection. WSDLException:
faultCode=PARSER_ERROR: Problem
parsing
'http://localhost/ArcGIS/rest/services/geodata/MapServer'.:
org.xml.sax.SAXParseException: The
element type "link" must be terminated
by the matching end-tag "/link".
My web service looks like this
ArcGIS Services Directory Home >
geodata (MapServer) Help | API
Reference geodata (MapServer) View In:
ArcMap ArcGIS Explorer ArcGIS
JavaScript Google Earth ArcGIS.com
Map
View Footprint In: Google Earth
Service Description:
Map Name: Layers
Legend
All Layers and Tables
Layers:
Geocoding_Result layer (0)
Tables:
Description:
Copyright Text:
Spatial Reference: 4326
Single Fused Map Cache: false
Intial Extent:
XMin: -95.901360470612
YMin: 29.4513469530748
XMax: -95.1472749640384
YMax: 30.045474927951
Spatial Reference: 4326
Full Extent:
XMin: -100.3273442
YMin: 29.451583
XMax: -94.8230278
YMax: 31.250677
Spatial Reference: 4326
Units: esriDecimalDegrees
Supported Image Format Types:
PNG24,PNG,JPG,DIB,TIFF,EMF,PS,PDF,GIF,SVG,SVGZ,AI,BMP
Document Info:
Title:
Author:
Comments:
Subject:
Category:
Keywords:
Credits:
Supported Interfaces: REST SOAP
Supported Operations: Export Map
Identify Find
Maybe you already know... but if you are trying to connect to an ArcGIS Server using Flex you might be interested in the ArcGIS API for Flex - http://links.esri.com/flex - it will take care of most of that for you.
Antarr,
It's a little hard to tell from your question what exactly you are trying to do. But here are a couple possibilities:
1) It looks like you might be trying to add a reference to this service via Flash Builder's "Connect to Web Service" dialog, which you would use for a SOAP web service, but not for the REST endpoint you note above (http://localhost/ArcGIS/rest/services/geodata/MapServer). If you are intending to use the REST endpoints, then you need to use the appropriate ESRI ArcGIS API for Flex class (for example DynamicMapServiceLayer or Locator) for whatever you are trying to do (generate a map image, geocode addresses, etc). Look at the ESRI help on the Flex API for more information:
http://help.arcgis.com/en/webapi/flex/apiref/index.html
2) If you are intending to use the ESRI SOAP API then you do want to use Flash Builder's "Connect to Web Service" dialog, but then you must use the SOAP service endpoint, which would be something like: http://localhost/ArcGIS/services/geodata//MapServer?wsdl (though I don't know why you'd want to do this since the Flex API is really designed to be used with ESRI's REST service endpoints).
3) The only layer in your service is called "Geocoding_Result" - is that an actual feature layer or just a temporary output from a geocoding operation done with ArcMap? I am not sure whether a temporary result would work when published as a service.
See if any of these suggestions help. If not, then clarify what you are trying to do and perhaps I can give you more specific assistance.

How To Pass Different Parameters To web Service Every Time It Is Called With Jmeter

I am testing web service using Jmeter, web service has several methods which takes some parameters. What I need to do is to pass different parameters every time user (thread) "calls" web service method.
I know, that I can do something like that, if I write Soap Messages in xml files and then to "give" Jmeter path of folder including this xml files, but Jmeter will take randomly those files and there is probability to use the same file twice or more. But I want Jmeter to use every request time different unique Soap Message.
Can Anyone help me?
Use CSV Data Set Config, prepare csv file containing your parameters.
Set CSV config recycle on EOF to false.
Set CSV config stop thread on EOF to true.
Set CSV config Sharing mode to all threads.