mobilefirst ejb support when implementing adapter logic - ejb

Is there, from an architectural point of view, a design pattern to migrate an existing web api component (realizing BL usign EJB integration with a backend component) into mobile first adapters (I think the java native type) in order to serve mobilefirst mobile apps?

EJB is not supported by MobileFirst Java adapters (and adapters in general)
However, if you consider to upgrade to MobileFirst 8.0, there is a simple way to use the Spring framework in Java adapters (see: https://mobilefirstplatform.ibmcloud.com/blog/2016/04/24/MobileFirst-spring-integration-in-java-adapters/)
In many cases, EJB application can be migrated to spring, depends on which EJB features are used in it.

Related

Trying to setup mimik's back-end services on AWS Ec2 instance

Here are a few clarifications we need from you :
Not able to find back-end service (mDS, mSS) components on GitHub. Could you let us know the path and the implementation steps? We are trying to deploy mimik's back-end components on the EC2 instance and try to configure/access the micro service deployed on the local laptop from another device.
How can we deploy microservices written in other languages like java, python etc. we can see support for microservices written in Java Script( Node JS) only.
mDS and mSS are core mimik backend services and are not publicly available on any website. The capabilities/functionalities of mSS and mDS are provided within edgeEngine during runtime on supported platforms. You can learn about these concepts and develop your own solutions in tandem with edgeEngine and various backend microservices on our developer portal below:

https://developer.mimik.com/products/
1.1. You can run edgeEngine on any of our supported platforms and deploy any of our publicly available local microservices as a way of learning how to develop, deploy and work with edge-microservice.
The agent program on any platform can be developed by any desired programming language; however, for exposing a restful API at the edge to provide any specific function or for orchestration purpose, you need to develop them using JavaScript. In this way you can re-use the microservice and deploy them dynamically on all platforms with different operating systems. This means we only support the deployment of microservices written in JavaScript on to edegEngine environment
If you are trying to develop your own commercial solution please contact mimik support team directly at support#mimik.com.
In addition to the above response by Maz Mandi, please note that your application on top of edgeEngine (application and microservices) will communicate with your application back-end directly vs. going through mimik global functions such as mDS and mSS.

Is there an equivalent of Spring Cloud Stream in .Net or .Net Core?

I have a Java project that needs to be rewritten in C# .Net Core. The Java app is currently deployed on cloud using SCS. The concept of stream looks smooth as we can easily visualize the flow of data there. It would be nice to have something similar available in .Net/Core. I tried Google, but couldn't get any useful info on this.
Steeltoe Stream Support:
https://github.com/SteeltoeOSS/steeltoe/issues/128
https://docs.steeltoe.io/articles/releases/steeltoe-3-1-minor-release-major-deal.html
This is an Epic, that will track all the work being done for our Streams feature.
Steeltoe Streams will be similar to the functionality that Spring Streams brings. Steeltoe Streams will be used for building highly scalable event-driven .NET microservices connected with shared messaging systems.
Steeltoe OSS: Cloud Native .NET Applications - Friend of Spring Boot and Spring Cloud.
Developed by WMware / Pivotal - https://hub.docker.com/u/steeltoeoss/

Service Fabric reliable service with .NET Core

So I am playing around with Service Fabric for rolling out a system to the cloud, and so far I have most of the stateless services ported over and running well using ASP.NET Core.
I have another set of services that need to be stateful, and I would like to leverage .NET Core for those services as well. For those I will need to run a custom TCP protocol, not HTTP/WebAPI/WCF.
So the question is; is this possible? The templates only have a ASP.NET Core stateless service template. Can I build something like a .NET Core console application to run as a "Reliable Service"? If so, is there any documentation on how to do this?
Yes, it's possible.
You can create the .NET 4.5.1 stateful service via the template, and then port that project to .NET Core - we've done this and it works just fine.
There doesn't appear to be any official documentation on this process.

Building webservices and integrating an ESB for an ASP.Net application?

We have an ASP.Net C# application that requires some form of a web services implementation for integration with other applications. Currently we have been looking at servicestack and also using an ESB e.g. Mule.
I am trying to figure out the best way to integrate an ESB like Mule into our ASP.Net application.
Do we need to build a web service into our ASP.Net application so that an ESB can integrate with it?
If yes what would be a good approach for selecting a web service type (e.g. REST, WCF, SOAP, Servicestack) that will be compatible with an ASP.Net application and Mule?
Do we need to build a web service into our ASP.Net application so that
an ESB can integrate with it?
Usually it's the other way around. An integration middleware, like Mule, speaks tons of protocols just for the sake of being able to connect to existing systems without changing them.
If yes what would be a good approach for selecting a web service type
(e.g. REST, WCF, SOAP, Servicestack) that will be compatible with an
ASP.Net application and Mule?
If your application has really no pre-existing channel you could use to integrate with (not even a simple web form HTTP POST? really?) and you want to expose an API so an integration middleware can connect to it, pick the architecture/technology that maps to the API style you're creating (REST for a resource oriented API, SOAP for a RPC oriented API).
This sounds backwards. What are you required to integrate with, and what capabilities are you trying to provide?
A web service is decoupled from its implementation, you would choose to use a web service if you're trying to expose your system capabilities in an interoperable way so that it's accessible by a broad range of clients.
What you do within a web service is up to you, i.e. you could then for example connect with your ESB. Nothing is precludes you from doing that. ServiceStack also supports hosting from within an existing ASP.NET (or MVC application) see the Hello World example for different ways of configuring ServiceStack.
REST / RPC has to do with the design of your web services and ServiceStack supports both models. i.e. inherit from RestServiceBase if you want to provide different implementations when the service is invoked with different HTTP Verbs. Inherit ServiceBase if you want the same implementation to be used no matter how it was invoked. This article shows the difference between REST vs RPC/SOAP - and how you can support both in ServiceStack.
So if your exposing a single operation (or want to support SOAP) use ServiceBase, if your exposing a 'Resource' where you want to allow it to be managed using different HTTP Verbs use RestServiceBase.

Spring MVC or WebFlow for this project

I have to create an application with
Flex 4 with Swiz (MVC Framework) as the UI Layer,
Spring (MVC or Web Flow) as the Business Layer,
Oracle 10g as Data layer,
Hibernate as ORM which will work with Oracle,
with Maven, with IBM Websphere and Tomcat.
I am trying to decide should I use Spring MVC (since it has to work with Swiz and Flex 4 which is MVC) or should I work with Spring Web Flow. Also any good examples on web with tutorials on this technology set.
I appreciate any help.
Thank you,
Sid
Given that WebFlow is primarily a page-flow framework, it's almost certainly inappropriate for your situation. Your Flex client will likely communicate via AJAX-style calls to the backend, and Spring MVC is the best choice for that.

Resources