SlideShare a Scribd company logo
How to build a custom stack with
WSO2 Carbon
Shameera Ratnayaka
Software Engineer
Manoj Kumara
Software Engineer
150+ globally positioned support
customers
Topics
● The feature/component concept in the WSO2 Carbon
platform.
● Installing features using the Feature Manager.
● How to create your custom products for cluster wide
deployment.
● Scripting feature installations for automation.
● Configuring logs/adding configs/etc.
What is Carbon
Carbon is a modular server runtime based on OSGi
Built on top of Carbon are a set of middleware
servers (App Server, ESB, Identity, API Manager, etc)
Re-configurable
» Install new features, uninstall, revert
Carbon includes a set of re-usable core components
● Clustering, User Management, Logging, JMX, ...
WSO2 Carbon based Products
Features
• Service Management Feature
• Proxy Services Features
• Transport Management Feature, etc..
Features in Carbon
What is a Feature
In Eclipse world
– Feature is a grouping of set of logically related plug-ins/ OSGi bundles
– Feature can be installed into Eclipse platform using its Update Manager
In Carbon world
– Feature can be thought of as an installable form of one or more logically
related Carbon component
• Service Management Component
– What you develop
• Service Management Feature
– What you install
– Feature is a grouping of one or more logically related Carbon components
– Features can be installed into Carbon based product using Feature Manager
Features
Allows you to specify pre-requisites of your Carbon
component.
– Other dependent features, bundles.
– Dependency Management.
• Are installable Units which can be installed into any
Carbon based product.
• Can be installed using the WSO2 Carbon Feature
Manager or by using a script
• Can be shared with others by packaging features as a
Repository (Update Site in eclipse terms).
What is a Carbon Component
● A set of OSGi Bundles.
● Lives in the Carbon Framework. Hence should conform to rules define
in the Carbon Framework.
● Uses Core Carbon Services
○ Via OSGI service registry
e.g. Registry Service, UserManager Service, etc
● Two aspects/ BE-FE Separation
○ Every component has a core runtime, a clean SOA management interface, a
well-defined front-end console component
○ Back-end Runtime
○ Front-end Console
The big picture
Equinox P2
● A provision platform for OSGi based systems.
● p2 stands for “Provisioning Platform”
● Provides a well defined model for provisioning OSGi
bundles
● p2 allows us to manage components in a controlled
manner
● Install, Uninstall, Revert
● Based on a web or file based repository
○ Can be hosted internally for an organization
● Three approaches:
○ Command line
○ Web console
○ Secure remote API
Carbon Component: Development
Process
1. Develop the Carbon component
○ Back-end component (BE OSGi bundles)
○ Front-end component (FE OSGi bundles)
○ Common bundles, if any
2. Develop the corresponding feature
○ BE/Server Feature
○ FE/UI Feature
○ Composite Feature
3. Install into a Carbon based product
○ By integrating with the product build system
○ By developing a feature repository and installing using Feature
Manage
Eclipse p2
● Manages the packaging of OSGi bundles
into features
● Supports deploying, undeploying,
checkpoints
● Advanced features include shared
repositories
p2 in Eclipse
p2 in Carbon
Feature Provisioning
Student Manager Component
Lets develop a sample Carbon component to understand
the development process as well as the build process.
• Student Manager component
○ Consists of a BE runtime which exposes a Web services to
• Add new students
• Get the list of students
○ Consist of a FE console which displays the available student
information on the Carbon management console.
• Student Manager Feature
○ org.wso2.carbon.student.mgt.server.feature
○ org.wso2.carbon.student.mgt.ui.feature
○ org.wso2.carbon.student.mgt.feature
Developing the BE Component
● Some actual server logic plus an admin
service to manage it
● Add some special sauce into the services.
xml to let us know it’s an admin service
● component.xml configures permissions
We use Maven as our build tool.
• Building Carbon components/OSGi bundles
– Use Maven Bundle plugin to build OSGi bundles
https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.1.0/core/org.
wso2.carbon.core/4.1.0/pom.xml
• Building Features
– Use Maven P2 Feature plugin (Developed at WSO2)
– Use p2-feature-gen goal
https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.1.0
/features/org.wso2.carbon.core.feature/4.1.0/pom.xml
• Building a Repository
– Use Maven P2 plugin
– P2-repo-generator goal
https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.1.0
/features/pom.xml
Carbon Component: Build Process
Demo
Create custom component
Acquiring a OSGi service declaratively
/**
* @scr.component name="org.wso2.carbon.student.mgt" immediate="true"
* @scr.reference name="registry.service" interface="org.wso2.carbon.registry.core.service.
RegistryService"
* cardinality="1..1" policy="dynamic" bind="setRegistryService" unbind="unsetRegistryService"
*/
public class StudentRegistryService {
public static RegistryService registryService;
protected void setRegistryService(RegistryService registryService) {
StudentRegistryService.registryService = registryService;
}
protected void unsetRegistryService(RegistryService registryService) {
StudentRegistryService.registryService = null;
}
}
Deployment Synchronization
Clustering
Install features in build time
- Why?
- can we do this with feature manager UI?
- Then how we do that?
- Carbon-p2 maven plugin
- Generate p2 repository
- Install feature
Configuration files
- axis2.xml
- carbon.xml
- master-datasources.xml
- authenticators.xml
- registry.xml
- cache.xml
- user-mgt.xml
- log4j.properties
- .......
Add and Edit Configurations
conf
├── axis2
│ ├── axis2_client.xml
│ ├── axis2.xml
│ └── tenant-axis2.xml
├── carbon.xml
├── datasources
│ └── master-datasources.xml
├── etc
│ ├── cache.xml
├── log4j.properties
├── registry.xml
├── security
│ ├── authenticators.xml
├── tomcat
│ ├── carbon
│ │ ├── META-INF
│ │ │ └── context.xml
│ │ └── web.xml
│ ├── catalina-server.xml
│ ├── tomcat-users.xml
│ └── web.xml
└── user-mgt.xml
Engage with WSO2
Helping you get the most out of your deployments
From project evaluation and inception to development and
going into production, WSO2 is your partner in ensuring
100% project success

More Related Content

What's hot

Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB WSO2
 
Right-size Deployment Instances to Meet Enterprise Demand
Right-size Deployment Instances to Meet Enterprise Demand Right-size Deployment Instances to Meet Enterprise Demand
Right-size Deployment Instances to Meet Enterprise Demand WSO2
 
Cloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web ServicesCloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web ServicesRobin Howlett
 
WSO2 ESB Integration with REST
WSO2 ESB Integration with RESTWSO2 ESB Integration with REST
WSO2 ESB Integration with RESTWSO2
 
Adjust Carbon Topology to Match High Availability Scenario Requirements
Adjust Carbon Topology to Match High Availability Scenario Requirements   Adjust Carbon Topology to Match High Availability Scenario Requirements
Adjust Carbon Topology to Match High Availability Scenario Requirements WSO2
 
Best Practices with WSO2 Developer Studio
Best Practices with WSO2 Developer Studio Best Practices with WSO2 Developer Studio
Best Practices with WSO2 Developer Studio WSO2
 
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at UberWSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at UberWSO2
 
Introduction to WSO2 ESB
Introduction to WSO2 ESB Introduction to WSO2 ESB
Introduction to WSO2 ESB WSO2
 
Resilient Enterprise Messaging with WSO2 ESB
Resilient Enterprise Messaging with WSO2 ESBResilient Enterprise Messaging with WSO2 ESB
Resilient Enterprise Messaging with WSO2 ESBWSO2
 
How the WSO2 ESB outperforms other major open source esb vendors
How the WSO2 ESB outperforms other major open source esb vendorsHow the WSO2 ESB outperforms other major open source esb vendors
How the WSO2 ESB outperforms other major open source esb vendorsWSO2
 
Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016WSO2
 
Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...
Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...
Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...mfrancis
 
Role of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EIRole of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EIWSO2
 
Red Hat Open Day JBoss Fuse
Red Hat Open Day JBoss FuseRed Hat Open Day JBoss Fuse
Red Hat Open Day JBoss FuseAdrian Gigante
 
Esb buyers guide_final
Esb buyers guide_finalEsb buyers guide_final
Esb buyers guide_finalWSO2
 

What's hot (18)

Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB
 
Right-size Deployment Instances to Meet Enterprise Demand
Right-size Deployment Instances to Meet Enterprise Demand Right-size Deployment Instances to Meet Enterprise Demand
Right-size Deployment Instances to Meet Enterprise Demand
 
Cloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web ServicesCloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web Services
 
WSO2 ESB Integration with REST
WSO2 ESB Integration with RESTWSO2 ESB Integration with REST
WSO2 ESB Integration with REST
 
Camel Based Development Application
Camel Based Development ApplicationCamel Based Development Application
Camel Based Development Application
 
Adjust Carbon Topology to Match High Availability Scenario Requirements
Adjust Carbon Topology to Match High Availability Scenario Requirements   Adjust Carbon Topology to Match High Availability Scenario Requirements
Adjust Carbon Topology to Match High Availability Scenario Requirements
 
Best Practices with WSO2 Developer Studio
Best Practices with WSO2 Developer Studio Best Practices with WSO2 Developer Studio
Best Practices with WSO2 Developer Studio
 
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at UberWSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
 
Introduction to WSO2 ESB
Introduction to WSO2 ESB Introduction to WSO2 ESB
Introduction to WSO2 ESB
 
Resilient Enterprise Messaging with WSO2 ESB
Resilient Enterprise Messaging with WSO2 ESBResilient Enterprise Messaging with WSO2 ESB
Resilient Enterprise Messaging with WSO2 ESB
 
How the WSO2 ESB outperforms other major open source esb vendors
How the WSO2 ESB outperforms other major open source esb vendorsHow the WSO2 ESB outperforms other major open source esb vendors
How the WSO2 ESB outperforms other major open source esb vendors
 
Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016
 
Wso2 esb
Wso2 esbWso2 esb
Wso2 esb
 
Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...
Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...
Building a Modular Server Platform with OSGi - Harshana Eranga Martin, Dileep...
 
Role of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EIRole of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EI
 
WSO2 Gateway
WSO2 GatewayWSO2 Gateway
WSO2 Gateway
 
Red Hat Open Day JBoss Fuse
Red Hat Open Day JBoss FuseRed Hat Open Day JBoss Fuse
Red Hat Open Day JBoss Fuse
 
Esb buyers guide_final
Esb buyers guide_finalEsb buyers guide_final
Esb buyers guide_final
 

Similar to How to build a custom stack with WSO2 carbon

Carbon: Towards a Server Building Framework for SOA Platform
Carbon: Towards a Server Building Framework for SOA PlatformCarbon: Towards a Server Building Framework for SOA Platform
Carbon: Towards a Server Building Framework for SOA PlatformSrinath Perera
 
WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...
WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...
WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...WSO2
 
Using the Carbon Architecture to Build a Fit-for-Purpose Platform
Using the Carbon Architecture to Build a Fit-for-Purpose PlatformUsing the Carbon Architecture to Build a Fit-for-Purpose Platform
Using the Carbon Architecture to Build a Fit-for-Purpose PlatformSameera Jayasoma
 
The Future of Cloud Computing Today with Ubuntu 10.10
The Future of Cloud Computing Today with Ubuntu 10.10The Future of Cloud Computing Today with Ubuntu 10.10
The Future of Cloud Computing Today with Ubuntu 10.10RightScale
 
Building a server platform with os gi
Building a server platform with os giBuilding a server platform with os gi
Building a server platform with os giDileepa Jayakody
 
Building a Modular Server Platform with OSGi
Building a Modular Server Platform with OSGiBuilding a Modular Server Platform with OSGi
Building a Modular Server Platform with OSGiDileepa Jayakody
 
Introduction to the wso2 carbon platform webinar
Introduction to the wso2 carbon platform   webinarIntroduction to the wso2 carbon platform   webinar
Introduction to the wso2 carbon platform webinarWSO2
 
Travelling light for the long haul
Travelling light for the long haulTravelling light for the long haul
Travelling light for the long haulIan Robinson
 
Travelling Light for the Long Haul - Ian Robinson
Travelling Light for the Long Haul -  Ian RobinsonTravelling Light for the Long Haul -  Ian Robinson
Travelling Light for the Long Haul - Ian Robinsonmfrancis
 
Why Does Modular Middleware Matters
Why Does Modular Middleware MattersWhy Does Modular Middleware Matters
Why Does Modular Middleware MattersWSO2
 
Wso2 product release webinar wso2 carbon 4.3
Wso2 product release webinar   wso2 carbon 4.3Wso2 product release webinar   wso2 carbon 4.3
Wso2 product release webinar wso2 carbon 4.3WSO2
 
WSO2 Product Release webinar - WSO2 Carbon 4.3
WSO2 Product Release webinar - WSO2 Carbon 4.3 WSO2 Product Release webinar - WSO2 Carbon 4.3
WSO2 Product Release webinar - WSO2 Carbon 4.3 WSO2
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5Vinayak Tavargeri
 
20171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v0120171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v01Scott Miao
 
Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)
Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)
Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)Movel
 
Pivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October ReleasePivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October ReleaseVMware Tanzu
 
414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integrationTrevor Dolby
 
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...Pierre GRANDIN
 

Similar to How to build a custom stack with WSO2 carbon (20)

Carbon: Towards a Server Building Framework for SOA Platform
Carbon: Towards a Server Building Framework for SOA PlatformCarbon: Towards a Server Building Framework for SOA Platform
Carbon: Towards a Server Building Framework for SOA Platform
 
WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...
WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...
WSO2Con US 2013 - Using the Carbon Architecture To Build a Fit-for-Purpose Pl...
 
Using the Carbon Architecture to Build a Fit-for-Purpose Platform
Using the Carbon Architecture to Build a Fit-for-Purpose PlatformUsing the Carbon Architecture to Build a Fit-for-Purpose Platform
Using the Carbon Architecture to Build a Fit-for-Purpose Platform
 
The Future of Cloud Computing Today with Ubuntu 10.10
The Future of Cloud Computing Today with Ubuntu 10.10The Future of Cloud Computing Today with Ubuntu 10.10
The Future of Cloud Computing Today with Ubuntu 10.10
 
Building a server platform with os gi
Building a server platform with os giBuilding a server platform with os gi
Building a server platform with os gi
 
Carbon and OSGi Deep Dive
Carbon and OSGi Deep DiveCarbon and OSGi Deep Dive
Carbon and OSGi Deep Dive
 
Building a Modular Server Platform with OSGi
Building a Modular Server Platform with OSGiBuilding a Modular Server Platform with OSGi
Building a Modular Server Platform with OSGi
 
Introduction to the wso2 carbon platform webinar
Introduction to the wso2 carbon platform   webinarIntroduction to the wso2 carbon platform   webinar
Introduction to the wso2 carbon platform webinar
 
Travelling light for the long haul
Travelling light for the long haulTravelling light for the long haul
Travelling light for the long haul
 
Travelling Light for the Long Haul - Ian Robinson
Travelling Light for the Long Haul -  Ian RobinsonTravelling Light for the Long Haul -  Ian Robinson
Travelling Light for the Long Haul - Ian Robinson
 
Why Does Modular Middleware Matters
Why Does Modular Middleware MattersWhy Does Modular Middleware Matters
Why Does Modular Middleware Matters
 
Wso2 product release webinar wso2 carbon 4.3
Wso2 product release webinar   wso2 carbon 4.3Wso2 product release webinar   wso2 carbon 4.3
Wso2 product release webinar wso2 carbon 4.3
 
WSO2 Product Release webinar - WSO2 Carbon 4.3
WSO2 Product Release webinar - WSO2 Carbon 4.3 WSO2 Product Release webinar - WSO2 Carbon 4.3
WSO2 Product Release webinar - WSO2 Carbon 4.3
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5
 
What's new in p2 (2009)?
What's new in p2 (2009)?What's new in p2 (2009)?
What's new in p2 (2009)?
 
20171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v0120171122 aws usergrp_coretech-spn-cicd-aws-v01
20171122 aws usergrp_coretech-spn-cicd-aws-v01
 
Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)
Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)
Scaling AngularJS: Enterprise SOA on the MEAN Stack (Responsive Web & Mobile)
 
Pivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October ReleasePivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October Release
 
414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration
 
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
 

More from WSO2

Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessWSO2
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
architecting-ai-in-the-enterprise-apis-and-applications.pdf
architecting-ai-in-the-enterprise-apis-and-applications.pdfarchitecting-ai-in-the-enterprise-apis-and-applications.pdf
architecting-ai-in-the-enterprise-apis-and-applications.pdfWSO2
 
Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2WSO2
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformWSO2
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...WSO2
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingWSO2
 
WSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the CloudWSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the CloudWSO2
 
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...WSO2
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
WSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2
 
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of TransformationWSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of TransformationWSO2
 

More from WSO2 (20)

Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
architecting-ai-in-the-enterprise-apis-and-applications.pdf
architecting-ai-in-the-enterprise-apis-and-applications.pdfarchitecting-ai-in-the-enterprise-apis-and-applications.pdf
architecting-ai-in-the-enterprise-apis-and-applications.pdf
 
Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
WSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the CloudWSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the Cloud
 
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
WSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital Businesses
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of TransformationWSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
 

Recently uploaded

AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...Product School
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...Product School
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...CzechDreamin
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...CzechDreamin
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1DianaGray10
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCzechDreamin
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfalexjohnson7307
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfChristopherTHyatt
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxDavid Michel
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...Product School
 

Recently uploaded (20)

AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 

How to build a custom stack with WSO2 carbon

  • 1. How to build a custom stack with WSO2 Carbon Shameera Ratnayaka Software Engineer Manoj Kumara Software Engineer
  • 2.
  • 3. 150+ globally positioned support customers
  • 4. Topics ● The feature/component concept in the WSO2 Carbon platform. ● Installing features using the Feature Manager. ● How to create your custom products for cluster wide deployment. ● Scripting feature installations for automation. ● Configuring logs/adding configs/etc.
  • 5. What is Carbon Carbon is a modular server runtime based on OSGi Built on top of Carbon are a set of middleware servers (App Server, ESB, Identity, API Manager, etc) Re-configurable » Install new features, uninstall, revert Carbon includes a set of re-usable core components ● Clustering, User Management, Logging, JMX, ...
  • 6. WSO2 Carbon based Products Features • Service Management Feature • Proxy Services Features • Transport Management Feature, etc..
  • 8. What is a Feature In Eclipse world – Feature is a grouping of set of logically related plug-ins/ OSGi bundles – Feature can be installed into Eclipse platform using its Update Manager In Carbon world – Feature can be thought of as an installable form of one or more logically related Carbon component • Service Management Component – What you develop • Service Management Feature – What you install – Feature is a grouping of one or more logically related Carbon components – Features can be installed into Carbon based product using Feature Manager
  • 9. Features Allows you to specify pre-requisites of your Carbon component. – Other dependent features, bundles. – Dependency Management. • Are installable Units which can be installed into any Carbon based product. • Can be installed using the WSO2 Carbon Feature Manager or by using a script • Can be shared with others by packaging features as a Repository (Update Site in eclipse terms).
  • 10. What is a Carbon Component ● A set of OSGi Bundles. ● Lives in the Carbon Framework. Hence should conform to rules define in the Carbon Framework. ● Uses Core Carbon Services ○ Via OSGI service registry e.g. Registry Service, UserManager Service, etc ● Two aspects/ BE-FE Separation ○ Every component has a core runtime, a clean SOA management interface, a well-defined front-end console component ○ Back-end Runtime ○ Front-end Console
  • 12. Equinox P2 ● A provision platform for OSGi based systems. ● p2 stands for “Provisioning Platform” ● Provides a well defined model for provisioning OSGi bundles ● p2 allows us to manage components in a controlled manner ● Install, Uninstall, Revert ● Based on a web or file based repository ○ Can be hosted internally for an organization ● Three approaches: ○ Command line ○ Web console ○ Secure remote API
  • 13. Carbon Component: Development Process 1. Develop the Carbon component ○ Back-end component (BE OSGi bundles) ○ Front-end component (FE OSGi bundles) ○ Common bundles, if any 2. Develop the corresponding feature ○ BE/Server Feature ○ FE/UI Feature ○ Composite Feature 3. Install into a Carbon based product ○ By integrating with the product build system ○ By developing a feature repository and installing using Feature Manage
  • 14. Eclipse p2 ● Manages the packaging of OSGi bundles into features ● Supports deploying, undeploying, checkpoints ● Advanced features include shared repositories
  • 18. Student Manager Component Lets develop a sample Carbon component to understand the development process as well as the build process. • Student Manager component ○ Consists of a BE runtime which exposes a Web services to • Add new students • Get the list of students ○ Consist of a FE console which displays the available student information on the Carbon management console. • Student Manager Feature ○ org.wso2.carbon.student.mgt.server.feature ○ org.wso2.carbon.student.mgt.ui.feature ○ org.wso2.carbon.student.mgt.feature
  • 19. Developing the BE Component ● Some actual server logic plus an admin service to manage it ● Add some special sauce into the services. xml to let us know it’s an admin service ● component.xml configures permissions
  • 20. We use Maven as our build tool. • Building Carbon components/OSGi bundles – Use Maven Bundle plugin to build OSGi bundles https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.1.0/core/org. wso2.carbon.core/4.1.0/pom.xml • Building Features – Use Maven P2 Feature plugin (Developed at WSO2) – Use p2-feature-gen goal https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.1.0 /features/org.wso2.carbon.core.feature/4.1.0/pom.xml • Building a Repository – Use Maven P2 plugin – P2-repo-generator goal https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.1.0 /features/pom.xml Carbon Component: Build Process
  • 22. Acquiring a OSGi service declaratively /** * @scr.component name="org.wso2.carbon.student.mgt" immediate="true" * @scr.reference name="registry.service" interface="org.wso2.carbon.registry.core.service. RegistryService" * cardinality="1..1" policy="dynamic" bind="setRegistryService" unbind="unsetRegistryService" */ public class StudentRegistryService { public static RegistryService registryService; protected void setRegistryService(RegistryService registryService) { StudentRegistryService.registryService = registryService; } protected void unsetRegistryService(RegistryService registryService) { StudentRegistryService.registryService = null; } }
  • 25. Install features in build time - Why? - can we do this with feature manager UI? - Then how we do that? - Carbon-p2 maven plugin - Generate p2 repository - Install feature
  • 26. Configuration files - axis2.xml - carbon.xml - master-datasources.xml - authenticators.xml - registry.xml - cache.xml - user-mgt.xml - log4j.properties - .......
  • 27. Add and Edit Configurations conf ├── axis2 │ ├── axis2_client.xml │ ├── axis2.xml │ └── tenant-axis2.xml ├── carbon.xml ├── datasources │ └── master-datasources.xml ├── etc │ ├── cache.xml ├── log4j.properties ├── registry.xml ├── security │ ├── authenticators.xml ├── tomcat │ ├── carbon │ │ ├── META-INF │ │ │ └── context.xml │ │ └── web.xml │ ├── catalina-server.xml │ ├── tomcat-users.xml │ └── web.xml └── user-mgt.xml
  • 28. Engage with WSO2 Helping you get the most out of your deployments From project evaluation and inception to development and going into production, WSO2 is your partner in ensuring 100% project success