WSO2Con 2011: Introduction to the WSO2 Carbon Platform
- 1. Introduction to WSO2 Carbon PlatformbyAfkhamAzeezSupunMalinga Director of Architecture Software EngineerWSO2 Inc.Lean, Consistent, Modular Enterprise Software Platform
- 4. Writing a Carbon componentAbout WSO2 Founded in 2005 by acknowledged leaders in XML, Web Services Technologies & Standards and Open Source
- 7. Business model is to sell comprehensive support & maintenance for our products
- 13. Most enterprises have complex existing systems that are expensive to replace and need to be connected to web applications and new business processes
- 15. Enterprises need to reduce human interaction as much as possible to make transactions efficient
- 16. When human interaction is required, it needs to be high-quality and contextual (portal, task list, analysis data available)
- 20. There is a shortage of people required to build very high performance, complex, integrated applications. Simple effective systems with clear programming models are vital
- 22. Large enterprises have thousands of applications that need to be tracked, with lifecycle and dependency management
- 25. A strong move to Policy-based authorization and entitlement with central management© WSO2 2011
- 26. How does WSO2 help?A complete platform to enable modern Enterprise SoftwareLegacy Modernization and Integration
- 33. Systems in full Continuous Availability mode (no downtime even for system updates)
- 35. WSO2 systems use industry standard programming models and effective tools and UIs
- 41. A full web-based identity management system with support for Java, .NET, C, C++, PHP
- 56. WSO2 - A Complete Compositional Application PlatformOrchestration & Composition
- 72. Every component has a core runtime, a clean SOA management interface, a well-defined front-end console component
- 150. Out of the box monitoring of the platform (services, mediations, etc)
- 183. Carbon App is a deployment model that can auto-provision into a distributed infrastructure
- 196. Can be hosted on a private or public infrastructure Cloud (IaaS) or directly on the infrastructure
- 203. Each tenant Stratos Service has a full administration console with fine-grained user authorization
- 218. A complete middleware platform from data to screenComplete Platform – Data to Screen
- 219. WSO2 Carbon Based ProductsWSO2 Carbon based productsWSO2 CarbonSet of Features=+ WSO2 Carbon based products
- 227. Carbon is itself a webapp, hence In the standalone mode, it uses an embedded tomcat instance.
- 228. In both modes, Carbon is launched by the BridgeServlet which bridges the non-OSGi world and the OSGi world.WSO2 Carbon, The webapp
- 244. Business Process Management.UI Framework / Easy Configuration Easy configuration via a rich Web-based graphical management Console allows remote administration of the system.
- 246. Based on Apache Tiles UI framework.Development and Release Process Open and agile development model
- 247. All binaries and source code distributed under the Apache Software License 2.0
- 248. Source code repository (Subversion)https://svn.wso2.org/repos/wso2 Issue tracker (JIRA)http://wso2.org/jira All design and development discussions are carried out on public mailing listsBuilding and Testing Build system based on Apache Maven2
- 252. A documentation distribution as well as an on-line documentationhttp://wso2.org/project/carbon/3.2.0/docs/ Articles and tutorials can be found on WSO2 Oxygen Tankhttp://wso2.org/library/carbon Many publications on external websitesWhat is a Carbon ComponentA set of OSGiBundles.
- 253. Lives in the Carbon Framework. Hence should conform to rules define in the Carbon Framework.
- 255. Every component has a core runtime, a clean SOA management interface, a well-defined front-end console component
- 259. Via OSGi service registry e.g. Registry Service, UserManager Service, etc.
- 261. Feature is a grouping of set of logically related plug-ins/ OSGi bundles
- 262. Feature can be installed into Eclipse platform using its Update Manager
- 264. Feature can be thought of as an installable form of one or more logically related Carbon component
- 269. Feature is a grouping of one or more logically related Carbon components
- 270. Features can be installed into Carbon based product using Feature ManagerFeatures Allows you to specify pre-requisites of your Carbon component.
- 273. Are installable Units which can be installed into any Carbon based product.
- 274. Can be install using the WSO2 Carbon Feature Manager
- 275. Can be shared with others by packaging features as a Repository (Update Site in eclipse terms).Carbon Component: Development Process Develop the Carbon component
- 285. By developing a feature repository and installing using Feature ManagerCarbon Component: Build Process We use Maven as our build tool.
- 297. Carbon - Understand the architecture and the usage
- 298. Apache Axis2 - enough to create a service and consume it
- 301. SVN - To check out the code
- 303. Plus a little OSGi and a little p2
- 307. Student Manager Component Lets develop a sample Carbon component to understand the development process as well as the build process.
- 312. Consist of a FE console which displays the available student information on the Carbon management console.
- 317. Add some special sauce into the services.xml to let us know it’s an admin service
- 318. component.xml -> configures permissionsBE Component: Directory Structure org.wso2.carbon.student.mgt - src/- main/ - java/ - org/wso2/carbon/student/mgt - Resources/ - META-INF/- services.xml- component.xml-test/- pom.xml
- 323. Defines the menu structure to place the JSP in the right placeFE Component: Directory Structure org.wso2.carbon.student.mgt.ui- src/ - main/ - java/ - resources/studentmgt.wsdl org/wso2/carbon/student/mgt/ui/i18n/Resources.properties META-INF/ - component.xml web/ student-mgt/ (web context of the FE console)doc/userguide.html images/js/ *.jsp files pom.xml
- 324. Resources How to develop OSGi Bundles using the Maven Pluginhttp://bit.ly/9TPMjl Getting Started with WSO2 Carbonhttp://bit.ly/9CdzTO