Upload
sagara-gunathunga
View
350
Download
1
Tags:
Embed Size (px)
Citation preview
WSO2 AppDev Pla.orm for the Connected Business
Sagara Gunathunga Senior Technical Lead
WSO2
Connected Business
Connected Business
1. Publish APIs
2. Offer developer portals and developer self-‐service
3. Create mobile applicaHons
4. Web applicaHons, SaaS applicaHons, business process automaHon, iPaaS or other portals
5. Foster a customer community, increase brand awareness ,social forums
WSO2 AppDev Pla.orm
AppDev Trends – RESTfull Services
JAVA
• JAX-‐RS Services
JAVASCRIPT • Jaggery Services
REST JSON TEXT
POX GET
POST
ApplicaHon Server
AppDev Trends – RESTfull Services
@Path("/hello") public class HelloWorldService {
@GET @Path("/{user}") public String hello(@PathParam("user") String user) {
}
}
JAX-‐RS Annotated Service
AppDev Trends – RESTfull Services
var app = require('router').app; app.get('/users/:id', funcHon (req, res, ses) { print(req.params.id); });
Jaggery RESTfull Service
AppDev Trends – WebSocket
A B
Handshake
Close the channel
OnOpen
onMessage
onClose
AppDev Trends – WebSocket
JAVA
• Java WebSocket API
JAVASCRIPT • Jaggery WebSocket
ApplicaHon Server
AppDev Trends – WebSocket
@ServerEndpoint("/echo") public class EchoEndpoint {
@OnMessage public String echo(String message) {.......} @OnOpen public void onOpen(Session session) throws IOExcepHon {.....} @OnClose public void onClose(Session session) {.... .} @OnError public void onError(Throwable t) {.....} }
A service based on Java API for WebSocket
AppDev Trends – WebSocket
webSocket.ontext = funcHon (data) { …….. };
webSocket.onopen = funcHon (outstre) { ……… };
webSocket.onclose = funcHon (status) {
………
};
A service based on Jaggery WebSocket
AppDev Trends – Modern Web ApplicaHons
JAVA web Apps Microsites/Dashboards JavaScript Apps
AppDev Trends -‐ SaaS applicaHon Development
User management
AuthenHcaHon & AuthorizaHon Registry Cache MulHtenancy
Carbon
SaaS applicaHon (Java)
SaaS applicaHon
(Jaggery)
ApplicaHon Server
WSO2 AppDev Pla.orm
WSO2 ApplicaHon Server • Lightweight applicaHon server based on Apache Tomcat.
• Support for JAX-‐WS, JAX-‐RS and WebSocket
• Proven to support frameworks like Axis2, CXF, Spring, Hibernate.
• Support number of JavaEE technologies which includes Servlet3, JSP/EL 2.2, JSTL, JSF, JPA2, JTA.
• Next major version will support for JavaEE 6 Web-‐Profile.
• Rich dashboards for applicaHon staHsHcs.
• Try-‐It support for JAX-‐WS , JAX-‐RS
• SSO support.
• Custom Classloader RunHme Environment (CRL) Architecture e . g – You can safely keep number of incompaHble Spring versions on server level.
WSO2 ApplicaHon Server -‐ JavaEE
Servlet3 JSP JSF
CDI JTA
JPA
B.Val EJB-‐Lite
JavaMail SAAJ JNDI RMI
JAX-‐WS JAX-‐RS JAXB JMS
JavaEE 6 -‐ WP
JavaEE 6 -‐ Full
WSO2 AppDev Pla.orm
WSO2 User Engagement Server
• Facilitate to create Dashboards & Microsites.
• Authoring and sharing OpenSocial spec based Gadgets.
• Flot based charHng.
• Possibility to crate your own Gadgets. • Use predefined Gadgets template or write your own using Jaggery.js • Gadgets generaHon tool. • Web based editor, Developer Studio support.
• In-‐built Enterprise Store integraHon
WSO2 User Engagement Server
WSO2 AppDev Pla.orm
Jaggery.js
• Like JSP/ PHP, but user writes code completely in JavaScript. (Data access / Business Logic / UI) • Runs as a Web app. • Runs on top of Java. • Provides very close integraHon with WSO2. • Support for REST services, WebSocket. • Developer Studio based debugger, Web based debugger, IntelliJ plugin. • Ability to expose Java Frameworks as Jaggery Modules. • Carbon API access. • Number of extension project
• Jaggery-‐pipe : • pipe -‐ “Connect” like middleware stack for Jaggery. • router – “express” ” like framework for Jaggery.
• Caramel : MVC framework for Jaggery.
ApplicaHon Development
ApplicaHon Lifecycle Management (ALM)
ApplicaHon Lifecycle Management (ALM)
Cloud Deployments
API management
API Everywhere
API management -‐ API Everywhere
API
Gateway
API Store
API Publisher
Key Manager
ApplicaHon Server
Jaggery (REST)
Axis2
JAX-‐WS
JAX-‐RS
AppDev Monitoring
Jaggery
Axis2
JAX-‐WS
JAX-‐RS
Web ApplicaHon Real-‐Hme AnalyHcs
AcHvity Monitoring
WSO2 BAM
WSO2 CEP
WSO2 AS