Create and retrieve documents from IBM BPM document store using a service without any UI - websphere

My BPM application doesn't have any UI as it is used by an external system. The external UI will need to invoke the service(s) in BPM that can store and retrieve the documents in IBM Document Store based on some identifier like process instance.
I couldn't succeed with tw.system.findProcessInstanceByID(id).addDocument(...). Also, as the input to the BPM service is base64, how do I map it?
The other option I tried is with Content Integration Task but again how to map the attributes from the external system to the BPM service?
Also, how can I send back all the files corresponding to an id to the external application?
Any suggestions as to how to achieve this?
Thanks,

The IBM Document Store that use IBM BPM, is a FileNet Express that is installed directly on the Webspehere product where live IBM BPM. You can find the route of the API of the internal Filenet in the documentation of IBM BPM.
The other why is to expose a service that use the content integration services to create (with attibutes), getProperties or getContent to enable you UI with this operations.

Related

Does MassTransit support Activity / ConsolidationId on Azure?

I'm using Application Insights (AI) to instrument my code. AI uses Activity to provide some data. Activity.ParentId can be used as a per-transaction identifier, across multiple services, so that a single API call can be tracked through the code, to the database and other HTTP services etc.
MassTransit has a message ConsolidationId, to track (I believe) Sagas, but I don't think it is using the Activity.ParentId.
Am I right?
How can I get MT to use the Activity.ParentId as a ConsolidationId, both as a publisher and consumer?
MassTransit supports Open Telemetry, which can easily be configured to push data to Azure Application Insights.
There is a complete sample that shows how to configure it.

Export list of service connections from Oracle Service Bus in order to create a service model in EA

We have a complex landscape of web services on Oracle Service Bus (latest release). We use JDeveloper to maintain it and we are going to use Enterprise Architect (SparxSystems) to model it. Currently, we only have MS Visio drawings. To make sure our model matches with reality, we would like to have a list of services and service connections exported from the OSB. It would be sufficient to have a list of connections (i.e. which services call which other services) in any format, but it would be great to be able to import this information into Enterprise Architect. Is this possible?
Instead of using JDeveloper, I would suggest to query the Service Bus runtime with the Java API. The API documentation gives samples how to connect and retrieve service configuration, see the Querying resources paragraph when following the link above.
You can list all proxy services and the business services they call, i.e. get their dependencies. In addition you can obtain other service information, which can be handy in the EA model.

How to debug Service Fabric stateful service / actor state

I implemented a basic Service Fabric StatefulService that stores questionnaire data using its IReliableStateManager. In order to debug a method, I would need to view the StateManager data using some sort of browser or administration console. It doesn't seem to be possible using the Service Fabric Explorer.
How can this be done?
You have to expose APIs that allow reading of the data and create the viewer as part of your application. There is no generic way to do this today.

What all services can be configured via Azure SDK for ruby

I was looking at Azure SDK for ruby and after comparing the API available there with the list of Azure's services, I noticed that the SDK does not have API for achieving many of the tasks related to various services. Are the API mentioned on SDK's github homepage the only API available ?
Eg: It has API to create a virtual machine, but no API to add DNS server.
The SDK has API to create Virtual network which can take params or XML file.
I also want to know whether we can configure other services using XML files and if yes, where can I find the XML data structure to configure those services.
The azure documentation is huge and I am unable to find proper reference for the XML data structure and list of services which can be configured using Ruby SDK.
FYI : I am on Ubuntu machine and cannot use Azure's other tools which are specific to only Windows.
I wrote an Azure API client (that despite my best efforts, has remained closed source) in ruby that my company uses, and I can relate to how much of a beast their API can be. You will find the best resources here, which will document all of the XML that can be configured. It might also be relevant to note that the official cross platform SDK is actually their Node.js client, which is available at github, which will definitely work on Ubuntu, better than the Ruby SDK.
Following is the list of services configurable by the azure-sdk-for-ruby
Base Management Service (creating affinity group, listing locations)
Cloud Service
Storage Management Service (Blob, Queue, Table)
Service Bus Service (Queue, Topic) - Could not make it work.
SQL Database Management Service
Virtual Machine Management Service
Virtual Image & Disk Management Service
Virtual Network Management Service
I have created a quick reference of available methods and short description of various Azure entities.

Reporting tables (state transition tables) for Websphere Process server

I am trying to find the necessary tables in Websphere Process Server to do some basic productivity reporting. I an completely UN-familiar with WPS, but I assume that there has to be a core set of tables that capture state transitions of workflows.
WPS flow data is managed internally by a DB2 Database, but i haven't seen any application that access directly to that data. WPS exposes a series of API's (EJB's, Web Services and RESTful Services) that allows applications to query WPS flow information but i don't think that approach is suitable for Reporting. More of that here: http://publib.boulder.ibm.com/infocenter/dmndhelp/v7r0mx/index.jsp?topic=%2Fcom.ibm.bspace.help.api.rest.doc%2Frest%2Fwsprocessserver%2Findex.htm
What several companies does for Reporting and Monitoring is query WPS through IBM Websphere Business Monitor: it's a product designed to make reports about process instances in a very fancy way. It's a great product but it's also very expensive.
What are you trying to achieve by looking at the WPS database tables?
WPS tables should ideally be left alone. As suggested by Carlos look at the APIs exposed by WPS and use them for your purposes.
The database - "how it is used internally to store information" is not publicly exposed so you won't find a great deal of information. There is information available on the database views which you can query on:
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r2mx/topic/com.ibm.websphere.bpc.620.doc/doc/bpc/r6bpc_dbviews.html
I don't know the version of WPS that you are using. I am pointing you to the 6.2 docs. You should be able to locate them in 7.0 or what ever version you are using in your environment.
WB Monitor is a BAM tool that can be used for your BAM needs.

Resources