Wednesday, July 22, 2009

WSO2 WSAS 3.1.0 EC2 AMI Now Available!

0 comments

Written by Afkham Azeez

WSO2 Web Services Application Server (WSAS) 3.1 Amazon EC2 image is now publicly available. Now you can try WSO2 WSAS on the cloud without downloading anything.

WSO2 WSAS AMI ID is : ami-633bda0a

Note: If you are new to Amazon instances, you may have a look at the "Getting Started with EC2" section given below

Running a WSAS AMI Instance

Run following command to run the instance

ec2-run-instances ami-633bda0a -k [gsg-keypair]

Output will be something like:
INSTANCE ami-633bda0a pending gsg-keypair

Instance-id will be something like i-10a64379

Get Public DNS Name for Insance

Run following command to get the public DNS name of the instance

ec2-describe-instances [instance-id]

Output will be something like :
RESERVATION r-fea54097 495219933132
INSTANCE i-10a64379 ami-633bda0a domU-12-34-31-00-00-05.usma1.compute.amazonaws.com running gsg-keypair


In this example, the public DNS name of this instance is domU-12-34-31-00-00-05.usma1.compute.amazonaws.com

Access WSO2 WSAS Management Console


Visit the following URL

https://[public]:9443/carbon/

Login using username admin and password admin

Getting Started with EC2

Prerequisites

Following link contains the prerequisites for Amazon EC2

http://docs.amazonwebservices.com/AmazonEC2/gsg/2006-06-26/prerequisites.html

Setting up an Amazon Account

Please see:
http://docs.amazonwebservices.com/AmazonEC2/gsg/2006-06-26/account.html

Setting up Amazon-API Tools

Please see:

You could use the ElasticFox Firefox plugin to easily acomplish most of the tasks described above.

See original post

Monday, July 20, 2009

Free Training - How to Successfully Configure ESBs for Different SOA Demands and Avoid Common Paths to Failure

0 comments
Summer School training program brings to you an another interesting session on Configure ESBs for Different SOA Demands by Paul Fremental.

The enterprise service bus (ESB) is a fundamental building block for creating a service-oriented architecture (SOA). And much like a steel beam, how the ESB is used can mean the difference between setting up a basic structure and creating an award-winning architecture.

Read the full story here, and register for this extremely valuable session at the training page.





You could also use the above widget to register for this course, it is Totally Free!!

See original post

Wednesday, July 15, 2009

Offbeat tools? Portals and Mashups are not!

0 comments
At least that's what CIOs in Singapore think. According to a recent survey, 59% of the responding CIOs were increasing their investments in building applications based on portals and mashups. They are also researching heavily on cloud and SaaS, which is quite obvious due to the buzz in that space of late. This trend is interesting because the challenge for today's CIO is two fold. Reduce costs while helping their organizations grow at the same time.

Mashups enable this by allowing re-use across the board. Why spend on building new applications from scratch when most of the required data is already available within the existing applications? If you have a SOA in place, things become much easier. But this isn't a must either. A case study I often bring up is the US Federal IT Dashboard. Although it seemed to have appeared overnight, this was an initiative started way back when Vivek Kundra was the CTO of DC. If you kept track of his work from around 2008 onwards like I did, you'll see a nice pattern to incrementally build a successful solution using these Web 2.0 technologies.
  1. Expose re-usable data as much as possible. Restrict access to sensitive data feeds. But do use a catalogue to systematically organize these feeds so that potential consumers can easily find their way around. Make sure that the data is exposed in a standard complient, easily consumable format (Web Services, RSS, KML, etc.). [See the DC government's data catalogue]
  2. Once the catalogue is in place, encourage people to mash up those feeds and come up with interesting new applications. The approach you take depends on your target audience. In an enterprise setting, you should be evaluating various mashup tools available at this point. For the DC government, whose audience were the citizens, an open competition seem to have proved the best alternative. They launched a contest for mashuppers with prizes for winners. [See Apps for Democracy. The entries are closed for 2009. The second year of its existence]
  3. These mashups themselves can be the sole presentation layer for certain applications. But when the demands for presenting a unified, bird's-eye view become stronger, dashboards (portals) come into play. The result of this final step is the most talked about today, The Federal IT Dashboard. Any citizen from the President downwards can today track government spending. Just point n' click.


That's the story so far. But I feel that step 3 can use some improvements. What if the dashboard content itself can be contributed by users? What if it was like say, iGoogle? You provide the Data Catalogue and host the Dashboard infrastructure and let the people come up with interesting Gadgets mining and displaying data. This will naturally lead to a Gadget Catalogue, a collection of interesting Gadgets any user can pick and choose to create their own Dashboard view. Maybe a competition to encourage contributions?

A dashboard is most valuable when it can be customized by the user. Because people have different priorities and with these, the view they expect changes dramatically. If one can register, log in and change the default dashboard by adding gadgets from a catalogue and arranging them according to preference, that would be a great user experience.




See original post

Rule based mediaiton enabled in the Open Source ESB

0 comments
Now you should already be aware of the new release of the open source ESB, which is the 2.1.0 version of the WSO2 ESB.

It is a much matured release, but it is not just the maturity and stability which brings to you by this release but a few very important new features... Top on my list is the Rule based mediation and this post is about that.

First of all lets look at, what is Rules, Rules Engine and what is the importance of Rules in to the message mediation in SOA?

Rules is a functional construct which is used to match the decision making from the technical aspect to the business aspect of it. Basically you need to provide in a set of name value pairs as facts and then you need to specify a set of rules to the Rules Engine, and the engine will process these facts according to the specified rules. When it comes to SOA, it is vital to have this sort of a configurable processing of the messages according to a set of rules over the messages.

This model better fits into an ESB rather than a service hosting environment, this doesn't mean that WSO2 will not going to make it to Rule based services (or may be Rules as a service) but it has much value at the mediation layer, especially with the power of Complex Event Processing with Rules. WSO2 ESB uses the Drools as the Rule implementation which enables you to add CEP to the ESB very easily because the latest release of Drools has the CEP capabilities as well.

The other main advantage of using the WSO2 ESB over any otehr ESB is the comprehensive set of samples which helps you get off the ground quickly. Same is true for Rules as well, we have 6 samples explaining the different behaviors of the Rule based mediations. If you haven't yet tried the open source ESB, now it is the time to get started with it by downloading it or never look at it :-).

See original post

MDM in SOA

0 comments
In computing, master data management (MDM) comprises a set of processes and tools that consistently defines and manages the non-transactional data entities of an organization (also called reference data). MDM has the objective of providing processes for collecting, aggregating, matching, consolidating, quality-assuring, persisting and distributing such data throughout an organization to ensure consistency and control in the ongoing maintenance and application use of this information. - Source : Wikipedia
MDM is a key requirement in many SOA deployments. What is your platform of choice, when dealing with MDM within your SOA?

The WSO2 SOA platform provides several patterns to realize MDM aspirations in your SOA infrastructure. Having multiple patterns allow the architects to pick the best implementation method based on business domain, existing application infrastructure, and potential future enhancements of application infrastructure. Implementing MDM pattens on top of existing legacy applications and legacy data reduces data and application redundancy.

Apart from technical benifits, MDM implementations allow organizations gain huge financial benefits due to reusability of data and systems. Accuracy of decisions made and transactions performed will have huge impact on company accounts. As a result, MDM allows businesses continue work on familiar and time-tested data sets - without compromising data integrity.

Web services support in the WSO2 SOA platform, and the message mediation capabilities of the WSO2 ESB provides additional leverage and brings value additions to the standard MDM patterns implementation.


See original post

Tuesday, July 14, 2009

Security in SOA

0 comments
Security is a hard to understand subject for most of the people, yet again just think about how complex it is when it is applied to Service Oriented Architecture. I also had a time where I don't even look at such scenarios... but just have a look at this. Kudos to Prabath and the WSO2 Security team, it is just simple and explained in a story styled presentation.
Yet another good outcome of the WSO2 Summer School training program.

See original post

Brain-friendly SOA security

0 comments
Prabath Siriwardena, who leads all of WSO2's security work, including the Identity Server product, recently gave a summer school program on SOA security. These slides give the best no-nonsense, to-the-point, simple explanation of all of security that I have ever seen. Prabath covers authentication, authorization, WS-Security, WS-Security Policy, XACML, OpenID, Information Cards, WS-Trust, STS and more in one smooth story style presentation:
Don't believe me? Start clicking through the slides above and tell me you can stop before you got to the end!

See original post

Implementing Master Data Management Patterns

0 comments
Master data is important for any business. Managing master data is critical as businesses makes decisions based on them. It is still valid for systems developed following the service oriented architecture styles as well. This article describes how to map MDM with SOA deployments with details of how to architecture. The WSO2 SOA platform is shipped with features required for such an implementation.


This article by Asanka Abesinghe explains how you can implement the MDM patterns with the WSO2 SOA platform.

See original post

WSO2 Governance Registry 3.0.0 – What’s New?

0 comments

WSO2 Governance Registry (G-Reg) (Formally known as WSO2 Registry) is released its 3.0.0 version along with two other sibling WSO2 products, WSAS 3.1.0 and ESB 2.1.0. This is a major release specially for WSO2 Governance Registry as it contain number of new features and improvements.


1. The New Name – s/Registry/Governance Registry


The product name itself changed from ‘Registry’ to ‘Governance Registry’ (abbreviated as ‘G-Reg’). As it may hint you, now the product is more focused on the ‘Governance’ aspects than just the ‘registry’ or a ‘repository’ aspects. In early releases, it mainly used to store, retrieve configurations and persistence data that the other products would need. Now you can govern these resources (Services, Policies, Processes, People) inside the G-Reg itself. It has emerged to become a complete tool that help you in governing your SOA platform.


2. Separate Views for Add/View/Remove Services


In G-Reg ‘Services’ along with Service MetaData (policies, wsdls, schemas) are distinguished from other resources, as they are the key resources in a SOA platform. You will be able to add/list/view services directly from the main menu in the G-Reg UI.


Add Service Metadata

Add Service Metadata


When adding a service you will be prompted to provide additional details on the services. As they will help users in discovering these services. The fields of these details are configurable as you will change them according to the policies and requirements of your organizations, but the defaults will be adequate for most of the scenarios.  Additionally G-Reg will do WS-I validation as you add WSDLs, Schemas.

Note that this is an additional view you will get as you can still discover services on a tree view arranged according to their namespaces using the registry browser as in previous releases.


3. Service Life cycle Management with Check-lists


Managing service lifecycle is a core part of governing services. G-Reg provides you this functionality with a simple user interface.


Life Cycle Management with Check-Lists


Lifecycle states can be promoted or demoted. The state transition can be ‘Designing’ -> ‘Developing’ -> ‘Testing’ -> ‘Deployed’. You can enforce a validation of a checklist in promoting the state to the next level. This states and the associated check-list items are highly configurable as you will change them to suit to the process of your organizations as you wish.


And G-Reg is shipped with a sample that extend the lifecycle management functionality by making it distributed. In there as you promote or demote the state, the service resource will move its position. The user guide on ‘Distributed Life Cycle Management Sample’ will describe how to use this functionality in more details. This will be really useful if you are enforcing a structured permission model in managing lifecycles. For an example you can enforce only developer role will be able to modify, check or promote a service in the ‘Developing’ state and QA role has permission in promoting a service in ‘Testing’ state and so on.


4. Business Activity Monitoring (BAM)


This is a brand new feature provide in G-Reg. You may find the user guide on ‘BAM’ will be really helpful in configuring the servers you want to monitor. But in order to view the monitoring data you have to go to the dashboard, which is the next new feature.


5. Dashboard


For most of the you, this will be the coolest feature in the new G-Reg., an eye-catching dashboard filled with bunch of Gadgets.


Dashboard

Dashboard


The dashboard provides you the information related to runtime governance as well as design-time governance as described in the ‘Dashboard’ user guide.


6. Eventing and Notifications


If you want you to notified when a resource is updated or a lifecycle state of a service is changed, this feature will be really helpful. Look at the ‘Eventing and Notifications’ user guide on how you can get notified and the built-in events that you can listen.


7. Mount Remote Resources – Federating Registries


If you are maintaining two separate registry instances, this feature will enable you to share resources among them. In G-Reg you can create links to resources in remote registries (remote-links) as well as to the resources in the same registry (sym-links). Here is the user guide for ‘Sym Links and Remote Links’ to read more details of the subject.


8. User Profiles

The new G-Reg has the ability to keep multiple user profiles per user. A simple how to on creating profiles can be found in the user guide on ‘User Profiles’.


9. Checkin/Checkout with Local Filesystem


The new G-Reg is shipped with a command line tool that allows you to checkin and checkout registry resources with your local filesystem. If you are familiar with a version control system like subversion, the checkin/checkout commands will not be much difficult to you.


Checking out a resource is simple as (the following command is what you typed in linux, in windows you will use the checkin-client.bat instead).



./checkin-client.sh co / -u user -p user_pw

And to checkin,



./checkin-client.sh ci -u user -p user_pw

Similarly you can use this tool to create backups or move resource or resource hierarchy off-line. Here is a complete user guide on ‘Checkin-Client’.


10. Performance Boost


Last but not least, the new G-Reg is performing very fast than its predecessor. In the performance test, it was seen each primitive operation in the registry is at least 10% faster in this release, where as some operations are performing much faster (for an example, ‘Add Collection’ operation seemed 50% faster). And the remote registry calls also optimized by keeping a local cache (http-level-caching).


This was a list of most notable new features in addition to the bunch of the features that was already there in the previous releases. You will be able to download WSO2 Governance Registry freely from the product website, http://wso2.org/projects/governance-registry and evaulate these features as you want.

See original post

Three SOA Case Studies

0 comments
Paul had given a talk at QCon in London earlier this year discussing some use cases that we've dealt with with our customers. He has some very useful anti-patterns towards the end of the talk!

See original post

Why you need WSO2 ESB 2.1 in your SOA?

0 comments

ESB is a key component in any SOA based solution. WSO2 has released it’s latest version of ESB 2.1.0. Here are some of the key features of WSO2 ESB that you are expecting to see in your ESB.

Functionality Description
Invocation Support for synchronous and asynchronous transport protocols like http, jms, mail, vfs, udp, fix and  service mapping (locating and binding) through proxy services
Routing addressability, static/deterministic routing, content-based routing, rules-based routing
Mediation protocol transformation, service mapping
Messaging message-processing, message transformation and message enhancement through mediation framework

Service orchestration

coordination of multiple implementation services exposed as a single, aggregate service
Quality of service security (encryption and signing), reliable delivery, transaction management, throttling, caching
Management monitoring, audit, logging, metering, admin console
Component architecture built on the revolutionary WSO2 carbon architecture which allows you to build your own ESB that suites your enterprise
Clustering Running in a cluster for better load handling
Load balancing ESB can load balance the requests to a cluster

You can see WSO2 ESB offers a comprehensive list of functionalities which can be seen only in enterprise grade ESBs.

Hmm quite a lot of features… Now you must be wondering what is the price for all of this? You won’t believe this. It is ZERO. Also the code is available for free download and it is Apache 2.0 license. You know what you can do with Apache 2.0 license. If you are looking for commercial support, WSO2 offers it for may be quarter of what you are paying for other commercial ESBs.  

Bottom line is WSO2 ESB is an enterprise grade ESB, free of charge. I don’t see any reason why you shouldn’t have it!

See original post

Adapt middleware to your enterprise architecture with WSO2 Carbon

0 comments
WSO2 Carbon is the industry's only fully componentized service oriented architecture (SOA) platform. Built on OSGi, WSO2 Carbon gives developers an unprecedented
flexibility to customize middleware to suit their enterprise architecture. WSO2 Web Services Application Server(WSAS), WSO2 Enterprise Service Bus(ESB), WSO2 Data Services and WSO2 Business Process Server(BPS) are some of the WSO2 Carbon based SOA products. All these products are made up of reusable components which runs on WSO2 Carbon platform. Creating a customized SOA product as easy as deploying a set of components in Carbon platform.

With the latest release of WSO2 Carbon(version 2.0.0), it has Equinox P2 based provisioning support. Equinox P2 is provisioning platform for OSGi based applications. P2 integration takes WSO2 Carbon to an another level in terms of user friendliness in building customized SOA products. Please visit here for more information.

See original post

WSO2 Carbon 2 – WSAS, ESB & Governance Registry Released

0 comments

WSO2 -An open source middleware company- announced the release of bunch of their SOA enabling products along with Carbon 2.0.0 which is an OSGI based unified platform that all the WSO2 java products are built on.



  • WSAS (Web Service Application Server) – Provide and consume web services, data services with full WS-*, REST support, GUI tools, Integration with Eclipse, etc..

  • ESB (Enterprise Service Bus) – Message routing, mediation, transformation, logging, task scheduling, load balancing, failover routing, event brokering, etc. with number of transports support

  • Governance Registry – Govern you SOA platform, introducing number of new features including Dashboard with Gadgets, lifecycle management with checklists, eventing and notifications, remote/symbolic links, checkin/checkout functionality and new meta data management UI.


You will be able to get the advantage of the carbon platform by extending the functionality of any of these products, just by mixing components from other products (Just like running an ESB within WSAS).


Download, Play around with them and Enjoy:)!!!

See original post

It's release time @ WSO2

0 comments


Last week, WSO2 released the .next versions of some of our key products (all free and Open Source under Apache 2.0). WSAS and ESB are two of them. In my view, our Registry solution is the one that went through a metamorphosis. Not only did we re-brand the product as WSO2 Governance Registry (G-Reg for short), but we also managed to deliver technically.



Building and evolving a product family is similar to solving a jigsaw puzzle. You start with the most obvious pieces and incrementally go towards the end goal. Sometimes, you find out that your assumptions while putting together some pieces were wrong. Then you have to re-visit that part of the puzzle and sort it out. The Registry vs Governance debate was one such instance where we saw that these, practically, should be a single solution. Today we have the WSO2 Governance Registry, a product that helps users not only to store things, but also to govern their SOA.

As I said, the puzzle is yet to be completed and we are in the process of putting together pieces for another area, Monitoring. In this release of G-Reg, we made a step towards solving that part of the puzzle by including our BAM and Dashboard components. By September this year, we are hoping to finish this part too by adding two more offerings to our product family. So download and see our work. Did we pick the correct pieces? Are we missing any? Do tell ... Our forums and mailing lists await your input.




See original post

WSO2 Enterprise Service Bus (ESB) 2.1.0 Released!

0 comments

The WSO2 ESB team is pleased to announce the release of version 2.1.0 of the Open Source Enterprise Service Bus (ESB).

WSO2 ESB is a lightweight and easy-to-use Open Source Enterprise Service Bus (ESB) available under the Apache Software License v2.0. WSO2 ESB allows administrators to simply and easily configure message routing, intermediation, transformation, logging, task scheduling, load balancing, failover routing, event brokering, etc.. The runtime has been designed to be completely asynchronous, non-blocking and streaming based on the Apache Synapse core.

WSO2 ESB 2.1.0 is developed on top of the revolutionary Carbon platform (Middleware a' la carte), and is based on the OSGi framework to achieve the better modularity for your SOA architecture. This also contains a lots of new features and many other optional components to customize the behavior of the server. Further, if you do not want any of the built in features, you can uninstall those features without any trouble. In other words, this ESB can be customized to your SOA needs.

You can download this distribution from http://wso2.org/downloads/esb and give it a try.

How to Run

  1. Extract the downloaded zip
  2. Go to the bin directory in the extracted folder
  3. Run the wso2server.sh or wso2server.bat as appropriate
  4. Point your browser to the URL https://localhost:9443/carbon
  5. Use "admin", "admin" as the username and password to login as an admin and create a user account
  6. Assign the required permissions to the user through a role
  7. If you need to start the OSGi console with the server use the property -DosgiConsole when starting the server. The INSTALL.txt file found on the installation directory will give you a comprehensive set of options and properties that can be passed into the startup script
  8. Samples configurations can be started by the wso2esb-samples script passing the sample number with the -sn option, please have a look at the samples guide for more information, on running samples

Key Features of WSO2 ESB

  • Proxy services - facilitating synchronous/asynchronous transport, interface (WSDL/Schema/Policy), message format (SOAP 1.1/1.2, POX/REST, Text, Binary), QoS (WS-Addressing/WS-Security/WS-RM) and optimization switching (MTOM/SwA).
  • Non-blocking HTTP/S transports based on Apache HttpCore for ultrafast execution and support for thousands of connections at high concurreny with constant memory usage.
  • Built in Registry/Repository, facilitating dynamic updating and reloading of the configuration and associated resources (e.g. XSLTs, XSD, WSDL, Policies, JS, Configurations ..)
  • Easily extendable via custom Java class (mediator and command)/Spring mediators, or BSF Scripting languages (Javascript, Ruby, Groovy, etc.)
  • Built in support for scheduling tasks using the Quartz scheduler.
  • Load-balancing (with or without sticky sessions)/Fail-over, and clustered Throttling and Caching support
  • WS-Security, WS-Reliable Messaging, Caching & Throttling configurable via (message/operation/service level) WS-Policies
  • Lightweight, XML and Web services centric messaging model
  • Support for industrial standards (Hessian binary web service protocol/ Financial Information eXchange protocol and optional Helth Level-7 protocol)
  • Enhanced support for the VFS(File/FTP/SFTP)/JMS/Mail transports with optional TCP/UDP transports and transport switching for any of the above transports
  • Support for message splitting & aggregation using the EIP and service callouts
  • Database lookup & store support with DBMediators with reusable database connection pools
  • WS-Eventing support with event sources and event brokering
  • Rule based mediation of the messages using the Drools rule engine
  • Transactions support via the JMS transport and Transaction mediator for database mediators
  • Internationalized GUI management console with user/permission management for configuration development and monitoring support with statistics, configurable logging and tracing
  • JMX monitoring support and JMX management capabilities like, Gracefull/Forcefull shutdown/restart

New Features of the WSO2 ESB 2.1.0

  • This ESB release is based on Carbon "Middleware a' la carte" which is an OSGi based SOA platform version 2.0 by WSO2 Inc.
  • Rule based mediation via Drools
  • Fine grained autherization for services via the Entitlement mediator
  • Reliable-Messaging specification 1.1 support
  • Enhanced WS-Eventing support and Event Sources making it an even broker
  • Enhanced AJAX based sequence, endpoint and proxy service editors
  • Enhanced transport configuration management through the graphical console
  • Enhanced integrated registry and search functionalities with versionning, notifications, rating of resources, and commenting
  • Enhanced remote registry support
  • Default persistence to the registry for the configuration elements
  • Enhanced permission model with the user management
  • Enhanced REST/GET and other HTTP method support
  • P2 based OSGi feature support, for optional features like service management, runtime governance and so on..

How You Can Contribute

Mailing Lists

Join our mailing list and correspond with the developers directly.

Reporting Issues

WSO2 encourages you to report issues and your enhancement requests for the WSO2 ESB using the public JIRA.

You can also watch how they are resolved, and comment on the progress..

Discussion Forums

Alternatively, questions could be raised using the forums available.

WSO2 ESB Forum : Discussion forum for WSO2 ESB developers/users

Training

WSO2 Inc. offers a variety of professional Training Programs, including training on general Web services as well as WSO2 ESB, Apache Synapse, Apache Axis2 and number of other products.

For additional support information please refer to http://wso2.com/training/course-catalog/

Support

WSO2 Inc. offers a variety of development and production support programs, ranging from Web-based support up through normal business hours, to premium 24x7 phone support.

For additional support information please refer to http://wso2.com/support/

For more information on WSO2 ESB, visit the WSO2 Oxygen Tank (http://wso2.org)

We welcome your feedback on this implementation. Thank you for your interest in WSO2 ESB.


-- The WSO2 ESB Team --

See original post

WSO2 WSAS 3.1.0 Released!

0 comments


Azeez's Notes | WSO2 WSAS 3.1.0 Released!
New Features
------------
1. Experimental Equinox P2 based provisioning support. See
https://wso2.org/wiki/display/carbon/p2-based-provisioning-support
2. Various bug fixes and enhancements to Apache Axis2, Apache Rampart,
Apache Sandesha2 & WSO2 Carbon, including security fixes
3. Architectural enhancements to WSO2 Carbon

Downloads available here



See original post

To ESB or not to ESB

0 comments
Ross from Mule has written an excellent blog entry on when an ESB makes sense. I think its very pragmatic advice.

The first point I want to make is that there is a huge difference between Open Source and Proprietary models here. Firstly, Open Source ESBs are usually pulled into projects rather than pushed onto projects. WSO2 certainly doesn't have salesmen taking people out for nice drinks and persuading them they have to have an ESB. This is a point that Ross makes very clearly and strikes a strong chord with me.

I've recently evaluated a project where I feel like the technology has been used because its there. Maybe its been used to justify the choice of an expensive software stack, but fundamentally the ESB had been thoroughly misused. In particular, there was not a single interface that could be used by more than one client or flow.

The second observation I have is about the ownership of the logic in the ESB, and the placement of function. The way that this ESB was developed was "monolithically". In other words a single team had the change management of the whole ESB, and the way it was run involved a multi-week long process to get even the most minor changes. This kind of model goes against the grain of an agile SOA and also makes the development teams struggle with the whole ESB model. By contrast we have a customer who has a model where changes can be (and actually are) made to the production system on a daily or even hourly basis, with zero downtime. This is on a system that handles peak loads equivalent to 85million messages/day.

We are working a lot on this issue of how to manage multiple concurrent ESB configurations and I think this will be a key improvement to the overall ESB approach.

The final comment I'd like to make about "to ESB or not" is that another thing we are often asked for is the ability to embed "ESB-like" function in a runtime. This is another good design pattern that can avoid problems: embed the transformation directly into the target system thereby simplifying point-to-point or even ESB-based architecture. This is exactly the model that Carbon allows, where mediation and transformation can be selectively added to Data Services, Business Processes, Service Hosting, etc.

The final point is about the responsibility of software suppliers to software users. Its always possible to misuse software. One of the very first experiences I had of ESBs was a large company building way too much business logic into their ESB layer and then beating up the supplier about it! In that case I think it was fair - the supplier had sat back watching the revenues come in and hadn't given the customer straight talk about how the product should best be used. This is the flip side of Open Source - we don't always get involved in the customer's solution until they are a long way down the path to production. But I'm always very straightforward - if I believe that the ESB is being misused or shouldn't be used, I'd rather lose the support revenue and gain the customer's trust by telling him or her straight.

See original post

Google's new OS project, SOA and stateless computing

1 comments
The new Chrome OS is an interesting development indeed from Google.

The Chrome browser is pretty much an OS already - each tab is a separate process and they use shared memory to load the common code etc. etc. .. its a mini-OS. If you think about the work Chrome (the browser) does, its pretty much depending on a few low level system calls to do memory management and process scheduling plus the windowing system for graphics. So the proposed strategy of run that on a cut-down Linux kernel plus rewrite the graphics system certainly makes sense. The venerable X Window System (of MIT Project Athena fame .. early 80s!!!) has seen its time IMO and a rewrite and a rethink is in order. It would not shock me if the new system is more like NeWS, Sun's original Network Window System (think Display Postscript), one of Jim Gosling's inventions before Java. (Java is sorta the same thing .. at least in the applet days and when it was conceived as the Green project; the server-side success of Java was almost accidental. Funny how the world turns, eh?!) The beauty of that architecture in the now "network is the computer" world is that it makes it better for remote computing - you can do more granular work on the server and push down work to the client. Video for example can be built into the windowing system itself.

One can also easily argue that you really do have to rethink the entire security architecture of an OS to really make a "Web-safe OS" and one which is an instant-on experience like a TV instead of traditional computer. The use of a Linux kernel surprises me there - why be constrained by the Unix security model? I'm guessing that that decision was motivated by the daunting challenge of getting drivers written for a totally new kernel - at least by going with Linux have a pretty good likelihood that everything from digital cameras to USB disks etc. that people have and will plug into the Gnetbook will work in our lifetime.

Of course we've heard the "Microsoft killer" argument a few times .. first Netscape with Netscape and then Sun with Java. However, unlike Netscape's wishful-thinking and Sun's brain-dead JavaOS project which attempted to write an OS in Java (what were you thinking Sun?), the Google guys are not afraid to get their hands dirty and write real code in a real language (C, of course).

There's no doubt that a rethink of fundamentals of computing are in order for the network age. Google seems well positioned to take a crack at that problem and possibly make it take off due to their dominating presence and global "cool kid" brand value.

Not to seem like I'm trying to sell WSO2 stuff in this blog entry, but this approach of "client=browser=access to services on the net" fits perfectly with our vision of the enterprise back-end: that its all about services and ONLY services. Even on the front-end, we're moving towards gadgets being the only UI and are working on taking the gadget dashboard stuff we've done and making a total gadget server which is like a portal server except that instead of crappy server-side JSR 168 portlets, you just have client side gadget that talk directly to back-end services (in the enterprise and outside). Oh yeah, with Chrome I expect Google will provide an easy way to (safely) get rid of this cross-site browsing restriction nonsense; IMO that is an "old Web" thing that just needs to go away as it doesn't fit with the model any more. So in many ways, a pure Web client platform is the perfect counterpart to a service-oriented enterprise.

Here's a funny thing though - Microsoft tried to get the world to accept that a browser is inextricably tied to the OS .. and got KILLED for it (and are still paying for it in crazy EU land). Google does the same thing (except further - the browser *is* the OS) and it seems the world is very happy. Ah, how wonderful it must be the company that does no evil ;-). (Other than reading all my mail and monitoring every click I do of course.) To be fair to Google though, all technology success is a "right thing, right place, right time" thing and Microsoft was probably too far ahead of the curve to say the browser is indeed part of the OS. Google's timing is much better and in any case, this is new OS .. not a new OS that must be able to run any browser.

I'm beginning to believe more and more in a world of "stateless computing", by which I see my laptop and netbook and phone and all simply being a "throwaway" device to get to my data and services on the net. In WSO2 we use Google Apps (email, calendar, intranet sites, shared docs), SVN (all code) and run all our common stuff on EC2. What I have on my laptop is pretty much a local cache only - well with Gears you can nearly get there .. it caches enough for my experience to be "good enough". Even on the server side, we now have an internal cloud (based on Xen) where anyone can go to an intranet portal and fire up a server with the OS/software config they want and get a dynamic host name etc. and use it. (We'll be open sourcing that code soon.) That has been a totally liberating experience in terms of how we think about getting a server with some config; now its "just do it". BTW anyone who thinks the concept of "internal cloud" doesn't make sense is, in my book, an idiot.

I was thinking of going back to a desktop computer (netbooks are only good for little stuff; sorry the small keyboard and screen don't cut it for me for 24x7 use) with a big screen + a 3G connected netbook for access from other places. However, with the internal cloud stuff, I'm now thinking of getting two "nettop"s (like this totally cool looking puppy from Acer), attaching it to large monitors at office and home and a netbook to carry around. The nettop+screen works like an old X Terminal (!!!) with my real computers being personal "servers" running in the internal cloud. (Yeah I will be running an internal cloud at home too.)

That's stateless computing - if those $250 boxes give way, no problem throw it away and buy a new one. And total cost: 2 x 24-30" monitor (< $600), 2 x nettop ($500), 1 x netbook ($300) < $1500 for access and shared servers for the cloud. At home I can run that on boxes I already have or for say $1000 by a quad core box with 8GB memory plus 1TB mirrored and have a pretty safe world. In office we're running the internal cloud on 3 old Dell 1U boxes with 2 dual core processors each and each with 8GB. We can keep adding every old box we have to that cloud (soon with Zeroconf). Oh yeah, if I need public cloud servers I've got Amazon EC2.

That's liberation. Liberation from "shit my disk died and I've lost it all", from "shit my computer crashed" and more shits ;-).

Will desktop apps go away? No way. While Google Docs are usable, its nothing when compared to Open Office (which itself is nothing when compared to Microsoft Office, but that's a different blog). However, its "good enough" for quite a few scenarios and I suspect will become sufficiently better (with the improved proprietary extensions from your friendly neighborhood Google).

May you live in interesting times.

See original post

WSO2 SOA Summer School - SOA Governance by Asanka

0 comments

See original post

Oracle's "componentized" SOA suite

1 comments
Yesterday Oracle announced a major refresh of their middleware platform - basically the result of merging in BEA to Oracle. Some stuff (like getting rid of OC4J and using WebLogic would've been a no-brainer "thank god we're done with that" decision) but other stuff must've been quite painful, especially for the people involved!

From their press release:
Oracle SOA Suite 11g delivers a complete, integrated and hot-pluggable SOA platform that enables next-generation business applications by simplifying service access, integration, orchestration, Complex Event Processing (CEP), monitoring and management.
Wow, that's a mouthful. Given that WSO2 is also in the business of building "complete, integrated and hot-pluggable SOA platform", I thought wow let me see what's so hot about Oracle SOA Suite 11g. So I thought let me check this out and visited their download site to see whether I can get my hands on that beast.

Wow, its BIIIIIIIG:
  • Basic download: 1.5GB
  • Required components:
    • WebLogic Server: 600-800MB
    • Repository Creation Utility: 280-360MB
    • Oracle Database: 1.7-2.3GB
    • JDeveloper: 934MB-1GB
  • (Let's ignore all the optional components)
So, in order to try out their SOA Suite, I need to download somewhere between 5GB and 6GB of stuff. Um, wow?

Yes we know imitation is the best form of flattery but that's on the order of 20x the size of ALL of our platform. Yes yes I know Oracle is so much bigger and better and more powerful, but 20x better??

BUT, remember who the consumer of this stuff is: the poor brain-hurtin' developer. When I first started doing Java stuff (with JDK 1.0.8 in '94 I think), I knew every class in the JDK public APIs and quite a bit of internal stuff. Today, no Java developer even knows all the junk that's in the JDK. On top of that throw in 5-6GB of stuff and you'll have developers committing suicide!!!!!

SCA, the foundation on which Oracle's suite is built, was an abstraction layer designed to overlay JEE and WS-*. What?? Isn't that what WS-* can do too? Yep, but IBM and BEA weren't happy with losing JEE's place in the world .. and SCA was born. OK I am simplifying a bit but I do know the history as I was in IBM at the time :-).

Today's biggest problem for developers is not lack of choice of tools. There are 7 of everything. How can the average developer handle 5-6GB of stuff and figure out where to get started? That's if they were able to get it all installed.

If this is the best the Java world can offer SOA developers then Microsoft and .Net people will be very happy - they know how to make things simple for developers!

Luckily there's always WSO2 Carbon and our SOA products :-).

Or, you can always wait for Oracle 12g, the composition of Oracle, BEA and Sun.

See original post

WSO2 SOA Summer School - Security in SOA : The brain friendly edition of complex security specs

0 comments
If you are not registered already, you can register now. Like all SOA summer school classes, this course is FREE.

Topics covered :
"Security in SOA" webinar will focus on key security standards and identity management for SOA with regards to two emerging user centric identities, OpenID & Information Cards, and also XACML for fine-grained authorization. In contrast to traditional security webinar, this will be conducted in a brain friendly manner without making you getting lost in the SOA acronym cloud.

Presenter : Prabath Siriwardena, Technical Lead and Security Team Manager, WSO2 Inc.
Prabath is the security guru in WSO2 and he is famous for explaining complex things in a very simple manner. Want to see a proof of above statement ? “Understanding OpenID“ and “Identity as a Service“ webinars shows how capable he is explaining security stuff in a simple manner.

WSO2 SOA Summer School :WSO2 SOA Summer School program is to help the many IT professionals worldwide whose careers are being impacted by the global recession. These free classes will enable enterprise IT architects and developers to become more familiar with SOA concepts, technologies, and best practices—expanding the expertise they bring to either current or prospective employers. WSO2 has developed a wealth of knowledge on SOA best practices through the professional consulting, design and training it provides customers. The same senior technical experts delivering WSO2’s onsite and online training are leveraging their SOA implementation expertise to create and teach eight customized courses for the SOA Summer School. With this program. WSO2 is opening its doors to all individuals who want to boost their SOA knowledge directly from some of the industry’s leading experts—thousands of dollars worth of professional training at zero cost. “.

See original post

Security in SOA : Training

0 comments
The next training in WSO2 SOA summer school is Security in SOA.

Become a SOA expert in this summer. It is all FREE from WSO2.

See original post

WSO2 Carbon

0 comments
A Component based platform for SOA based on Apache Axis2

Do you believe in software componentization? For the last few decades there were many attempts by different organizations to build component based software systems. They achieved some successes. These attempts lead us to think weather true componentization is a reality? Here is a brief definition of a component.

Component

Clemens Szyperski and David Messerschmitt give the following five criteria for what a software component shall be to fulfill the definition:

  • Multiple-use
  • Non-context-specific
  • Compassable with other components
  • Encapsulated i.e., non-investigable through its interfaces
  • A unit of independent deployment and versioning

Now lets look at what is Carbon keeping in mind about components.

WSO2 Carbon

WSO2 Carbon is a SOA platform. Gradually it is evolving by addressing all the parts of a complete SOA platform. This platform is built around the popular web services engine Apache Axis2. Carbon offers a SOA runtime along with a rich set of configuration options. Carbon has a built in Registry which can be used by components running on top of Carbon. Registry acts as a configuration store. Apart from configuration Carbon supports monitoring as well.

At the runtime, when a request is given to a carbon based product (WSAS, ESB, BPS), the system virtually becomes an Axis2 runtime.

Axis2 Component architecture

Axis2 is a web services engine. Axis2 is developed to publish and consume web services. Axis2 can be extended to do various things using its modular architecture. For example in Synapse Axis2 is used as the core of an ESB. In Apache ODE, Axis2 is used for a BPL engine. In WSAS, Axis2 is used in it’s true nature i.e. deploying web services. So Axis2 has become a platform for various aspects of SOA. Users can write various components to extend Axis2 i.e. modules, transports, services. So Axis2 component architecture is very rich.

But can we use pure Axis2 as a platform for various aspects that I have mentioned in a unified manner? Answer is NO!. The drawback lies with the Java modularization and versioning. Lets say, Synapse depends on the external jar X with 1.1 version. ODE is also using this X jar but it depends on the version 1.2. Now we want to build a platform. The moment you put both these jars in to the class path, it is up to the Java virtual machine to pick one of the jar files. This is why pure Axis2 will fail as a platform.

Why OSGI

The solution is to use OSGi. Carbon uses OSGI to solve this problem of versioning.

But when you go the OSGi way, everything has to be an OSGi bundle. This is possible within WSO2 products. But for external jar file which doesn’t have an OSGI version, it is bit problematic. The solution is to take these external jars and wrap them in OSGi bundles. This is exactly what has being done in the Carbon Orbit.  

Platform

Carbon offers a platform for addressing various aspects of SOA. Carbon platform can be considered as two major parts.

1. Runtime Platform

2. Configuration and Monitoring Platform

Carbon runtime platform is an Axis2 instance wrapped in OSGi. Carbon has a web UI framework based on Apache tiles. This UI framework is the front end of the configuration framework. Backend of the configuration is coupled with the Axis2 runtime or Runtime platform.

At the highest level components to runtime platform are components to Axis2. For example Synapse is a runtime component. In order to configure the Synapse runtime component, there are several UI components written on top of the UI platform. All these components are OSGi bundles. Carbon is designed to work in a console and back end mode. Communication between front end configuration framework and backend configuration framework happens using standard web services calls.  

Carbon Component

As I’ve said earlier there are two types of Components. Runtime Components and Configuration Components are these two types. For all the Configuration components there is a runtime component associated with it. From these two, most important part is the Runtime Components. There is no point in having a configuration or monitoring component without anything to configure or monitor.

As I’ve said earlier runtime components are components to Axis2. These runtime components may have different other components. But these components are specific to those parent big components and without the parent component they don’t have an existence. Best example is Synapse Mediators. A mediator is a component of Synapse and Synapse may have lots of them. But Synapse is a component of Axis2.

The componentization offered by Carbon only extend to the componentization provided by Axis2. For example Rampart is the base of security for Carbon. Rampart is designed in a way that it will work with most of the other components of Axis2. This allows a product running in Carbon to easily use Security features provided by Rampart. For example WSAS and ESB both uses this component. WSAS uses security to secure it deployed services. ESB uses the carbon security features directly to secure it’s various components like proxy services. The nice thing about this is ESB and WSAS can use the Configuration UI written for Rampart.

This is same for Reliable Messaging and various transports as well. ESB and WSAS can share both reliable messaging and transport components.

Here is a case where this nice componentization doesn’t work due to the negligence of components developed for Axis2. Axis2 has a clustering implementation which is a component to it. But ODE is not written to use this API. But Synapse is written to use this API. So Carbon can provide clustering to ESB which is based on Synapse but it cannot provide clustering for BPS which is based on ODE.

Project Structure of Carbon

Carbon has three logical projects.

Carbon-Orbit

This project wraps non OSGI external jars in to OSGI aware jars.

Carbon

This provides the Runtime and Configuration platforms.

Carbon Components

Various Runtime and Configuration components.

A Product

A product is a Carbon + Sub set of Carbon Components.

For Example this is how ESB product is built.

ESB uses Axis2 as it’s runtime engine. Axis2 instance that is used in ESB comes from Carbon platform. Synapse is a component to Axis2. There are various carbon components written to configure synapse. ESB uses various other carbon components like security, reliable messaging etc. Sum of all these things gives the product called ESB.

WSO2 G-Reg

If we take WSO2 Carbon as the platform WSO2 Governance Registry is the metadata repository for Carbon. Registry core is built in to the Carbon itself. G-Reg can function as a separate product as well. G-Reg is different from other carbon products because it doesn't offer a runtime as in other products. From the start up of G-Reg to shutdown of G-Reg it is only configuration.

WSAS

WSAS provides the functionality host services, secure them apply reliable messaging etc. Clients can talk to these services.

ESB

ESB configuration is basically configuring a Synapse instance. It also uses feature like reliable messaging, security etc.

IS

Identity solution

BPS

Business process server, implementing BPEL.

Conclusion

Although componentization is a pretty hard job by nature, WSO2 carbon addresses most of the features of a componentized platform in the context of SOA. Still we have a long way to go. But we are getting there.

This is my personal view of Carbon as a platform. You may have different views. You are welcome to share those ideas..

See original post

Free Class on SOA Security Standards and Best Practices

1 comments

This week's WSO2 Summer School class features SOA security standards and best practices.


IT architects and developers who want to learn SOA security and identity management best practices are invited to attend “Security in SOA.” This interactive, online class is being offered at no cost as part of the WSO2 SOA Summer School program. It will be held on Thursday, July 2, 2009 at 9:00 a.m. Pacific.


The two-hour Security in SOA class will focus the implementation of security and identity management as a service using the two emerging open, user-centric identity standards: OpenID and Information Cards, as well as XACML for fine-grained authorization. Attendees will learn about Web services security standards, including WS-Security, WS-Trust, WS-Secure Conversation, and WS-Security Policy. The course will also review Information Cards as an application of WS-Trust, and the Oauth protocol for secure API authorization.


Find more information at http://wso2.com/about/news/wso2-summer-school-features-free-class-on-soa-security-standards-and-best-practices/.



No related posts.


Related posts brought to you by Yet Another Related Posts Plugin.

See original post

OSGi, the Dynamic Module System for Java Platform

0 comments
Why it is called a module system for Java and why it is called dynamic. Lets make ourselves more clear here. OSGi technology is currently based on Java and it tries to fix some of the issues which have been there from the very beginning of Java. OSGi is a widely adopted technology these days. It is used almost everywhere from embedded applications to server side applications. Being said that, what is so special about OSGi?

1) It is a Module System for Java.
Java lacks a proper module/component system from its early stages. In fact Java has some form of modularity. But that is not enough for the current technical needs. Java as an object oriented language allows us to hide implementations details from the API at class level. But now we need modularity beyond the class level. Java application consists of several jar file. At runtime all the classes and resources in jar files are in a single linear class space. What would happened if you put two versions of a jar file? Will you be able access classes in both the jar files? No. Can a jar file share a set of classes with other jars while hiding a set of classes from others. No. Java lacks this level of modularity. This is where OSGi fit into the picture.

OSGi defines a unit of modularization which is called a Bundle. It is same as a standard jar file. But Its META-INF/MANIFEST.MF contains additional headers(meta data). Using these meta data, a bundle can clearly express its dependencies on other packages, the packages that it is willing to share with other bundles. Speaking in OSGi terms, a bundle can export packages and import packages. When you export or import packages you can also specify a version. This enables the existence of packages with different versions. See the power of OSGi.

How does OSGi achieve this level of modularity? The specification clearly mentions that a bundle should be given a separate class loader. Therefore at runtime, you will see a set of class loaders willing share packages with other and willing to use packages from others. This forms class loader delegation network. From a different perspective, you can think of this as bundle wirings. For an example, bundle A which imports the package foo, is wired to bundle B which exports the package foo. The formation of these bundle wirings or the class loader delegation network is called "Resolving Process".

2) It is Dynamic, everything happens at runtime.
Java lacks dynamism a lot. If you need to add/update a jar file to/in the class path of running Java-application, how would you do that? The solution is to put the jar file into the lib folder of the application and restart it. That means update of the Java application requires a restart.

But OSGi introduces standardized ways to dynamically manages the life cycle of an application. A Java application running on top OSGi is simply a collection bundles. These bundles can be dynamically installed, started, stopped, updated and uninstalled at any time. This is the art of the dynamism introduced by OSGi to Java applications.

3) It is Service-Oriented
Earlier, I've explained how you can share physical resources such as static classes among bundles. But how would you share instances of these classes? For this purpose OSGi defines a services registry where bundle can register, find, obtain services. This is very similar to SOA model of publish/find/bind. Therefore OSGi provides an intra-VM public/find/bind services model. This is the recommended way a bundle should interacts with other bundles.

This blog post is basically an abstract of a series of articles, that I have been working on. I am planning to publish them wso2.org very soon. Will let you know when this happens.

See original post

Enterprise SOA Patterns

0 comments
The first outcome of the Summer School by WSO2..

See original post

Friday, July 10, 2009

WSO2 Enterprise Service Bus (ESB) 2.1.0 Released!

0 comments

The WSO2 ESB team is pleased to announce the release of version 2.1.0 of the Open Source Enterprise Service Bus (ESB).

WSO2 ESB is a lightweight and easy-to-use Open Source Enterprise Service Bus (ESB) available under the Apache Software License v2.0. WSO2 ESB allows administrators to simply and easily configure message routing, intermediation, transformation, logging, task scheduling, load balancing, failover routing, event brokering, etc.. The runtime has been designed to be completely asynchronous, non-blocking and streaming based on the Apache Synapse core.

WSO2 ESB 2.1.0 is developed on top of the revolutionary Carbon platform (Middleware a' la carte), and is based on the OSGi framework to achieve the better modularity for your SOA architecture. This also contains a lots of new features and many other optional components to customize the behavior of the server. Further, if you do not want any of the built in features, you can uninstall those features without any trouble. In other words, this ESB can be customized to your SOA needs.

You can download this distribution from http://wso2.org/downloads/esb and give it a try.

How to Run

  1. Extract the downloaded zip
  2. Go to the bin directory in the extracted folder
  3. Run the wso2server.sh or wso2server.bat as appropriate
  4. Point your browser to the URL https://localhost:9443/carbon
  5. Use "admin", "admin" as the username and password to login as an admin and create a user account
  6. Assign the required permissions to the user through a role
  7. If you need to start the OSGi console with the server use the property -DosgiConsole when starting the server. The INSTALL.txt file found on the installation directory will give you a comprehensive set of options and properties that can be passed into the startup script
  8. Samples configurations can be started by the wso2esb-samples script passing the sample number with the -sn option, please have a look at the samples guide for more information, on running samples

Key Features of WSO2 ESB

  • Proxy services - facilitating synchronous/asynchronous transport, interface (WSDL/Schema/Policy), message format (SOAP 1.1/1.2, POX/REST, Text, Binary), QoS (WS-Addressing/WS-Security/WS-RM) and optimization switching (MTOM/SwA).
  • Non-blocking HTTP/S transports based on Apache HttpCore for ultrafast execution and support for thousands of connections at high concurreny with constant memory usage.
  • Built in Registry/Repository, facilitating dynamic updating and reloading of the configuration and associated resources (e.g. XSLTs, XSD, WSDL, Policies, JS, Configurations ..)
  • Easily extendable via custom Java class (mediator and command)/Spring mediators, or BSF Scripting languages (Javascript, Ruby, Groovy, etc.)
  • Built in support for scheduling tasks using the Quartz scheduler.
  • Load-balancing (with or without sticky sessions)/Fail-over, and clustered Throttling and Caching support
  • WS-Security, WS-Reliable Messaging, Caching & Throttling configurable via (message/operation/service level) WS-Policies
  • Lightweight, XML and Web services centric messaging model
  • Support for industrial standards (Hessian binary web service protocol/ Financial Information eXchange protocol and optional Helth Level-7 protocol)
  • Enhanced support for the VFS(File/FTP/SFTP)/JMS/Mail transports with optional TCP/UDP transports and transport switching for any of the above transports
  • Support for message splitting & aggregation using the EIP and service callouts
  • Database lookup & store support with DBMediators with reusable database connection pools
  • WS-Eventing support with event sources and event brokering
  • Rule based mediation of the messages using the Drools rule engine
  • Transactions support via the JMS transport and Transaction mediator for database mediators
  • Internationalized GUI management console with user/permission management for configuration development and monitoring support with statistics, configurable logging and tracing
  • JMX monitoring support and JMX management capabilities like, Gracefull/Forcefull shutdown/restart

New Features of the WSO2 ESB 2.1.0

  • This ESB release is based on Carbon "Middleware a' la carte" which is an OSGi based SOA platform version 2.0 by WSO2 Inc.
  • Rule based mediation via Drools
  • Fine grained autherization for services via the Entitlement mediator
  • Reliable-Messaging specification 1.1 support
  • Enhanced WS-Eventing support and Event Sources making it an even broker
  • Enhanced AJAX based sequence, endpoint and proxy service editors
  • Enhanced transport configuration management through the graphical console
  • Enhanced integrated registry and search functionalities with versionning, notifications, rating of resources, and commenting
  • Enhanced remote registry support
  • Default persistence to the registry for the configuration elements
  • Enhanced permission model with the user management
  • Enhanced REST/GET and other HTTP method support
  • P2 based OSGi feature support, for optional features like service management, runtime governance and so on..

How You Can Contribute

Mailing Lists

Join our mailing list and correspond with the developers directly.

Reporting Issues

WSO2 encourages you to report issues and your enhancement requests for the WSO2 ESB using the public JIRA.

You can also watch how they are resolved, and comment on the progress..

Discussion Forums

Alternatively, questions could be raised using the forums available.

WSO2 ESB Forum : Discussion forum for WSO2 ESB developers/users

Training

WSO2 Inc. offers a variety of professional Training Programs, including training on general Web services as well as WSO2 ESB, Apache Synapse, Apache Axis2 and number of other products.

For additional support information please refer to http://wso2.com/training/course-catalog/

Support

WSO2 Inc. offers a variety of development and production support programs, ranging from Web-based support up through normal business hours, to premium 24x7 phone support.

For additional support information please refer to http://wso2.com/support/

For more information on WSO2 ESB, visit the WSO2 Oxygen Tank (http://wso2.org)

We welcome your feedback on this implementation. Thank you for your interest in WSO2 ESB.


-- The WSO2 ESB Team --

SOA Platform 2.0 Released!

0 comments
The 2.0 version of WSO2 Carbon SOA Platform has been released. With this release, we have also done the all improved WSO2 Governance Registry 3.0, WSO2 Identity Server 2.0, WSO2 Enterprise Service Bus 2.1 and WSO2 Web Services Application Server 3.1.

We spent a great deal of effort improving the core database desing of the registry this time. We also spent considerable amount of time to improve the way we have used OSGi in the core framework. We upgraded the Carbon core to use Equinox/P2, the provisioning platform, to help manage the components. The P2 integration takes another step to make the component model more useful to the end user.

And as always, we have done numerous bug fixes in this release.

This release has really taken the next steps in terms of providing a comprehensive SOA platform. The addition of the Gadget component and the BAM component hints the possible business value that the platform could provide for the business users.

The SOA governance features and the way those were designed has been another highlight in this release. The monitoring dashboard, life cycle handling, service and service metadata management has been tested through multiple iterations and with many production scenarios.

The identity management too has been given a boost to governance capabilities of the platform. Among the features added, XACML tends out, but there are many other improvements.

I should also mention the quality assurance effort went into this release. We have been testing with production scenarios from the early stages of the release cycle, and that helped us to identify many corner cases that we might have missed otherwise. Compared to the previous release, I would call this release much more tested and even higher quality than the previous.
 

Copyright 2009 All Rights Reserved Revolution Two Church theme modified by Milinda Pathirage