Friday, February 27, 2009
Looking to expose legacy data as Web Services?
If you are looking to unlock data that's locked up in databases, CSV's or Excel files then the WSO2 Data Services Solution is what you've been looking for. It helps Database administrators expose data selectively within a matter of minutes by simply following a Wizard. Check out this compact flash demo that explains what the WSO2 Data Services solution can do for you.
Thursday, February 26, 2009
How to add mediation to WSO2 WSAS
In a previous post I spoke about how service hosting capabilities can be added to WSO2 ESB. Now its time to do the reverse and show how mediation capabilities can be added to WSO2 WSAS.
This article from Ruwan explains the process in details. If you feel that you would like to see it in action instead of reading it then you could follow this screen case as well.
This article from Ruwan explains the process in details. If you feel that you would like to see it in action instead of reading it then you could follow this screen case as well.
How much do we take Technology for Granted?
We live in a age of cutting edge technology (if not bleeding edge) and how much do we take it for granted? I remember the days when I used a dial-up connection to access the Internet (Not too long ago, may be 5-6 years ago) and now I'm using an ADSL connection which has like 512K download speed and contemplating whether I need an upgrade :). I cant imagine how I would live without an Internet connection.. Oh man the world has changed so much.
This clip makes us realise how much we take technology for granted. It comes with a dash oh Humour (More than a dash may be).
Came across this clip thanks to Jonathans post.
This clip makes us realise how much we take technology for granted. It comes with a dash oh Humour (More than a dash may be).
Came across this clip thanks to Jonathans post.
Monday, February 23, 2009
20th February 2009 - An Unforgettable Night
Friday night was one of those nights that you'd remember for a long time. I got a news alert around 9.25 PM Saying that the air defence system was activated in anticipation on a possible LTTE air attack. That was when we were going down for dinner. Around 9.40 I heard a weird sound, something like a motor. That was when I decided to step out and look up towards the sky. The sound was getting louder and within a minute or so I saw a small plane fly over us. As it was passing over us there was firing in the direction of the light aircraft. The firing came from the direction of the army camp which is located around 500m from our place (It used to be a commando training camp but now its a staff training college).
My initial suspicion was that they might attack the Sapugaskanda oil refinery which is located around 1Km from our place. Luckyly that was not the case, if it was I could have been toast :).
This was the 7th time the LTTE carried out an air attack. And the 7th time which is lucky for most people sealed their fate. It could well be their last air attack as well.
This was not the first that I experienced such terror. I remember the JVP attacking the Sapugaskanda police station in 1988, I was 7 then. I was fast asleep and suddenly woke up to the noise of gun fire. My mom and dad who slept in the room adjoining us came rushing in. My dad was over me shielding me while my mom was shielding my sister. We heard people firing along the road and that was a horrifying might. Last Friday was not that bad but it sure brought back memories of that incident.
My initial suspicion was that they might attack the Sapugaskanda oil refinery which is located around 1Km from our place. Luckyly that was not the case, if it was I could have been toast :).
This was the 7th time the LTTE carried out an air attack. And the 7th time which is lucky for most people sealed their fate. It could well be their last air attack as well.
This was not the first that I experienced such terror. I remember the JVP attacking the Sapugaskanda police station in 1988, I was 7 then. I was fast asleep and suddenly woke up to the noise of gun fire. My mom and dad who slept in the room adjoining us came rushing in. My dad was over me shielding me while my mom was shielding my sister. We heard people firing along the road and that was a horrifying might. Last Friday was not that bad but it sure brought back memories of that incident.
Saturday, February 21, 2009
Need for New Global Conventions in area of Conflict
"Due to the fact that communities and their aspirations continue to change, conflicts are an indispensable reality in our societies. My definition of peace is an atmosphere in which harmonious change can occur. Therefore, I am stressing the need to introduce innovative global conventions to exert balanced pressure on all stakeholders in a conflict zone. This would keep disturbances within the frame of humanity, just as gravity orchestrates droplets colliding without repeatable pattern into a waterfall. "
In an Insightful article Dr Thrishantha Nanayakkara raises the need for new global conventions to validate politically sensitive claims made by the various parties in a war zone. He uses the conflict in Sri Lanka and a few incidents that unfolded in the recent past to make his points clear.
I sincerely hope that his voice wouldn't fall on deaf ears and that adequate action will be taken to resolve this.
Personally I have a high regard for Dr Thrishantha Nanayakkara, he conducted our Artificial Intelligence course back in University. He is a fabulous teacher and a wonderful person.
In an Insightful article Dr Thrishantha Nanayakkara raises the need for new global conventions to validate politically sensitive claims made by the various parties in a war zone. He uses the conflict in Sri Lanka and a few incidents that unfolded in the recent past to make his points clear.
I sincerely hope that his voice wouldn't fall on deaf ears and that adequate action will be taken to resolve this.
Personally I have a high regard for Dr Thrishantha Nanayakkara, he conducted our Artificial Intelligence course back in University. He is a fabulous teacher and a wonderful person.
Friday, February 20, 2009
Holiday at the Kandalama Hotel
Last weekend we (me and my wife) went for a holiday to the Kandalama Hotel. I don't believe in Marketing crap such as Valentines day, but it just happened to be that Valentines day fell on that weekend (Also Kandalama had a good offer for that weekend).
Kandalama Hotel is located on the hills overlooking the Kandalama Tank. The length of the hotel is around 1 KM from end to end (Dambulla Wing to Sigiriya Wing). From the Sigiriya Wing you could see the Sigiriya fortress in a distance, hence its a wonderful place to stay for anyone wanting to visit Sigiriya. A unique feature of the hotel is its commitment to protecting the environment. The hotel is built into the mountains and is surrounded by plenty of trees and creepers. You wake up to the cheeping sounds of plenty birds found in the vicinity. It is said that if the buildings of the hotel are removed that the area would look just like it was before the hotel was build. The Architect Deshamanya Geoffrey Bawa has designed it in such a manner that the hotel was built without damaging anything in the surrounding environment.
At Kandalama there are plenty of activities that one could indulge in. These include Elephant rides, boat rides, Bird Watching, Mountain Biking, Hiking and so on. Most of the hotels boast about having bird watching and so on when they do not have anything to offer. This is not the case with Kandalama though. As the hotel is surrounded by trees and the Kandalama Lake, birds are a familiar sight. If you look up towards the sky at any given time you would see at least a couple of Eagles soaring over the skies. Monkeys are also a familiar sight. They come to eat seeds and fruits as well as drink water from the lake as well as the swimming pool.
We also took the opportunity to visit the Eco Park at Kandalama. Its a place where they house an Animal Rehabilitation Centre. As Kandalama is situated in a rural part of Sri Lanka Surrounded by a jungle Serpents are a familiar sight. This also means that accidents do happen and that injured Serpents and Animals can be found on the roads. Sanath who is specialist in Serpents and Animals runs the rehabilitation centre in which he brings in and treats these injured Serpents and Animals. He also maintains a collection of Serpents for people to see. These Serpents which are captured from the area of the hotel itself are not kept for long at this centre. They are released to the wild after a couple of months. Sanath also did mention that he gets telephone calls from villages when they encounter Serpents. Sanath then rushes to the rescue of these serpents and bring them over to the rehabilitation centre. The 12 foot Python that he had was such a Serpent which was captured in a neighboring Temple. Sanath is also competent in handling wild snakes. He demonstrated this by handling a Spectacle Cobra as well as petting a Forsten's Catsnake. I would call him Sri Lankas Steve Erwin.
Another environment friendly action of the Kandalama hotel is that they try to recycle everything. The hotels garbage is brought to a special centre where it is sorted and put into several categories. These are then sent to the various recycling centres. Kandalama also recycles their waste water.
We had a wonderful learning experience by visiting the Paper recycling and production plant. This was a small factory that made paper using Elephant Dung. I would cover the details of that in a separate post.
All in all Kandalama was a wonderful holiday as well as a learning experience. We thoroughly enjoyed our holiday. I would like to encourage anybody who has not visited the Kandalama Hotel to do so. Its a unique experience.
I've uploaded the photos of the trip here.
WSO2 Mashup Server 1.5.2 Released
Its been some time since we released the 1.5.1 version of the WSO2 Mashup Server. The main reason for doing the 1.5.2 release was a memory leak that was present in the release which was inherited from Axis2. This memory leak was fixed in the 1.41 release of Axis2 but we could not focus on doing a release because of the effort that was put into WSO2 Carbon.
So Mashup Server users should upgrade to the latest version. The upgrade is pretty straight forward and is just a matter of preserving the scripts and the database folder of the old installation.
In addition to this memory leak there were a few other issues that we fixed. You could have a look at the release note for full details.
So Mashup Server users should upgrade to the latest version. The upgrade is pretty straight forward and is just a matter of preserving the scripts and the database folder of the old installation.
In addition to this memory leak there were a few other issues that we fixed. You could have a look at the release note for full details.
Thursday, February 19, 2009
Using Eventing and EDA with the WSO2 ESB
In a previous post I mentioned of an Article that explains about Eventing, EDA and how it could be used in an SOA environment. This time Asanka goes on to explain the usage of Eventing and EDA with the WSO2 ESB 2.0.
Wednesday, February 18, 2009
How does Apache Axis2 Differentiate SOAP from REST
Apache Axis2 supports both SOAP as well as REST. The default behaviour is that any service deployed on Axis2 can be accessed as using SOAP or REST style request. So how does Axis2 differentiate SOAP from REST request?
It first looks at the HTTP Method of the incoming request. If its GET, PUT or DELETE it is processed assuming its a REST request, but if its POST we need to do some checks. These include checking the content-type of the incoming request. SOAP 1.2 uses the content-type of application/soap+xml while SOAP 1.1 uses text/xml as its content-type. Hence using this we could differentiate SOAP request from REST style request. Does that mean that we are done? Well no. There is a little glitch though. The content-type text/xml is used to send REST (POX to be exact) style request as well. So if the content-type is text/xml we need to do further processing. The field we look for in such cases is the SOAPAction header. According to the SOAP 1.1 spec the SOAPAction header is mandatory (Its optional in SOAP 1.2 though). Therefore if a request comes in with the content-type text/xml that has a SOAPAction header it is treated as SOAP.
It first looks at the HTTP Method of the incoming request. If its GET, PUT or DELETE it is processed assuming its a REST request, but if its POST we need to do some checks. These include checking the content-type of the incoming request. SOAP 1.2 uses the content-type of application/soap+xml while SOAP 1.1 uses text/xml as its content-type. Hence using this we could differentiate SOAP request from REST style request. Does that mean that we are done? Well no. There is a little glitch though. The content-type text/xml is used to send REST (POX to be exact) style request as well. So if the content-type is text/xml we need to do further processing. The field we look for in such cases is the SOAPAction header. According to the SOAP 1.1 spec the SOAPAction header is mandatory (Its optional in SOAP 1.2 though). Therefore if a request comes in with the content-type text/xml that has a SOAPAction header it is treated as SOAP.
Axis2 - How to set the SOAP Version on a client
There may be instances where you want your Axis2 client to send request in a specific SOAP Version. Axis2 supports both SOAP 1.1 as well as SOAP 1.2. The default used is SOAP 1.2.
Setting the SOAP version can be done as follows, for SOAP 1.1
for SOAP 1.2
Setting the SOAP version can be done as follows, for SOAP 1.1
serviceClient.getOptions().setSoapVersionURI(org.apache.axiom.soap.SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);
for SOAP 1.2
serviceClient.getOptions().setSoapVersionURI(org.apache.axiom.soap.SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
Tuesday, February 17, 2009
WSO2 Carbon - High Quality at Low Cost
Its seldom that you get high quality at low cost. But that's what you get if you get your hands on WSO2 Carbon based products. Chinthana says that its analogous to "Drive as a Hummer, save as a Prius". I cant agree with him more.
Friday, February 13, 2009
How to add your own component to a WSO2 Carbon based product
WSO2 Carbon based products are a collection of carbon components. In addition to the carbon components shipped in a product one could write there own component as well. This article by Isuru explains how this could be done. Remember that in a previous post I did mention how you could create a UI component for such a carbon component.
Using EDA in an SOA environment
Support for eventing was one of the new features that came with WSO2 Carbon based products. Eventing support which is powered by the Apache Savan project is available in both the WSO2 ESB as well as WSO2 WSAS.
This article by Asanka, titled "Fusion : Eventing with SOA - Introduction" gives an overview of eventing and EDA (Event Driven Architecture) together with an illustration on how it can be used in an SOA environment.
This article by Asanka, titled "Fusion : Eventing with SOA - Introduction" gives an overview of eventing and EDA (Event Driven Architecture) together with an illustration on how it can be used in an SOA environment.
The role of Mashups in SOA
In this presentation titled "Mashups : Bringing Springtime to Your SOA", Jonathan Marsh the VP of Business Development at WSO2 talks about the intersection of Mashups and SOA.
Extending WSO2 Carbon - Building your own UI component
A key feature of WSO2 Carbon is that the UI for the product is assembled using various UI components by its UI framework. Hence in order to deploy your own UI component in Carbon all you need to do is follow a few conventions.
This blog by Sumedha explains in detail the way this can be done.
This blog by Sumedha explains in detail the way this can be done.
Wednesday, February 11, 2009
Want to learn what WSO2 Carbon is?
Well if you are looking around for resources to learn what WSO2 Carbon is here is a great one. Paul Fremantle, Co-Founder & Chief Technology Officer (CTO) at WSO2, will be giving you a preview of the new WSO2 Carbon platform in a free webinar that is scheduled for Tuesday, 12th February 2009 09:00 AM (PDT). This webinar s titled "WSO2 Synergies: The Carbon Story".
So go ahead and register now.
So go ahead and register now.
How to create a Proxy Service in WSO2 ESB 2.0
The ability to host proxy services is a key feature of the WSO2 ESB. In this post I will explain how a Proxy Service can be created in the new WSO2 ESB 2.0 release.
As its name suggests a Proxy Service is a virtual service that hides the actual service. When defining a Proxy Service in the WSO2 ESB you could provide a inSequence, outSequence, faultSequence and a target endpoint (Not all of these are required).
A sequence as its name suggests send the message through a sequence of mediations. Hence users could perform mediation on requests heading into a Proxy Service (using the inSequence) as well as responses it receives (using the outSequence).
When an endpoint is defined in a Proxy Service, messages that are directed to it goes through the inSequence before been sent to the actual endpoint.
Now that we've covered a few basic ideas on the terms used in Proxy Services lets go ahead and create one. Its always advisable to declare entities in your configuration as reusable components (Just as you do it in OOP). Hence lets define our sequences and endpoints as reusable entities and use them in the creation of the Proxy Service.
For this example I would be creating a proxy service for the digit2image service which can be found on mooshup.com (The community site of the WSO2 Mashup Server).
As its name suggests a Proxy Service is a virtual service that hides the actual service. When defining a Proxy Service in the WSO2 ESB you could provide a inSequence, outSequence, faultSequence and a target endpoint (Not all of these are required).
A sequence as its name suggests send the message through a sequence of mediations. Hence users could perform mediation on requests heading into a Proxy Service (using the inSequence) as well as responses it receives (using the outSequence).
When an endpoint is defined in a Proxy Service, messages that are directed to it goes through the inSequence before been sent to the actual endpoint.
Now that we've covered a few basic ideas on the terms used in Proxy Services lets go ahead and create one. Its always advisable to declare entities in your configuration as reusable components (Just as you do it in OOP). Hence lets define our sequences and endpoints as reusable entities and use them in the creation of the Proxy Service.
For this example I would be creating a proxy service for the digit2image service which can be found on mooshup.com (The community site of the WSO2 Mashup Server).
- Lets create our endpoint. An Endpoint can be created by visiting the Endpoints link (Located under Manage).
There are four distinct kind of endpoints, Please refer the documentation on endpoints for there detail. For this example I will create a simple Address Endpoint.
When creating a address endpoint I simple specify its name and an Address (Having a look at the wsdl of our actual service, I find that the endpoint URL is http://mooshup.com/services/system/digit2image.SOAP12Endpoint/ - Lets create a sequence. A sequence can be created by visiting the Sequences link (Located under Manage)
When it comes to sequences, you could create complex sequences using one or more of the inbuilt mediators or using your own custom mediators. For simplicity I will be creating a sequence with a simple Log mediator. All it does is log the message to the console. - Now that we have our reusable components in place its time to create the actual Proxy Service. This can be done by visiting the Proxy Service link (Located Under Add).
This will take you through a 3 step wizard.- In the first step I provide a name for my service. Additionally I could configure several properties on a Proxy Service, for simplicity I will be sticking to the defaults. You could refer the documentation on Proxy Service creation for more details.
- step 2 asks for an Insiquence and a targetEndpoint. Its mandatory that you have at-least one of these. You could optionally have both as well. In our example lets use the sequence we created in Step 2 (DemoSequence) as the inSequence and the endpoint we created in Step 1 (digit2ImageServiceEndpoint) as our target endpoint.
- step 3 asks us for an outSequence and a faultSequence, both of which are optional. So lets use the default of none.
- In the first step I provide a name for my service. Additionally I could configure several properties on a Proxy Service, for simplicity I will be sticking to the defaults. You could refer the documentation on Proxy Service creation for more details.
Monday, February 9, 2009
How to Cluster WSO2 Carbon based Products
Clustering for high availability and scalability is one of the main requirements of any enterprise deployment. As an Enterprise SOA offering WSO2 Carbon based products are capable of running in a clustered environment.
Well if that's the case how does one configure WSO2 products so that they can be clustered? Azeez, an Architect and Product Manager of WSO2 WSAS and Mr clustering at WSO2 has written a couple of articles that explain this in details. In the first article titled "Introduction to WSO2 Carbon Clustering" he explains some of the core concepts associated with WSO2 Carbon clustering. In his second article titled "WSO2 Carbon Cluster Configuration Language" he goes on to explains in detail the clustering configuration language used by WSO2 Carbon based products.
These articles apply to WSO2 WSAS (Web Services Application Server), WSO2 ESB (Enterprice Service Bus), WSO2 BPS (Business Process Server) as well as Apache Axis2.
Well if that's the case how does one configure WSO2 products so that they can be clustered? Azeez, an Architect and Product Manager of WSO2 WSAS and Mr clustering at WSO2 has written a couple of articles that explain this in details. In the first article titled "Introduction to WSO2 Carbon Clustering" he explains some of the core concepts associated with WSO2 Carbon clustering. In his second article titled "WSO2 Carbon Cluster Configuration Language" he goes on to explains in detail the clustering configuration language used by WSO2 Carbon based products.
These articles apply to WSO2 WSAS (Web Services Application Server), WSO2 ESB (Enterprice Service Bus), WSO2 BPS (Business Process Server) as well as Apache Axis2.
Axis2 - ADBException: Unexpected subelement
This is another common issue that Apache Axis2 users face.
org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement someElementName
Again the solution to this is simple. This exception could occur when a request is been sent (Before the request is sent) or when a response is arrived (Or alternatively it could occur on the server side when a request is received). Therefore it makes life easy to know where things really went wrong. And again TCPMonitor comes to the rescue. Simply send your request through TCPMonitor. This will help you diagnose whether the exception was thrown when sending the request or receiving the response.
Now lets figure out why this exception could occur. When a stub (or Skeleton) is generated using adb as the data binding framework (If no option (-d) is provided for the databinding framework Axis2 uses adb by default) it performs validation on the request it sends and the response it receives. The validation is performed based on the XML Schema for the request or response message. Hence if a response is to have three elements named a,b,c in a sequence and the response contains somethinglike a,d,c Axis2 would complain saying that it received an Unexpected element named d.
So this issue can be solved easily by comparing the request/response messages against the Schema that defines those messages. This could be tricky sometimes especially if you are not familiar with XML Schema.
This error could occur when there are namespace mismatches as well and spoting these could proove to be tricky as as a user found out over here.
org.apache.axis2.AxisFault: org.apache.axis2.databinding.
Again the solution to this is simple. This exception could occur when a request is been sent (Before the request is sent) or when a response is arrived (Or alternatively it could occur on the server side when a request is received). Therefore it makes life easy to know where things really went wrong. And again TCPMonitor comes to the rescue. Simply send your request through TCPMonitor. This will help you diagnose whether the exception was thrown when sending the request or receiving the response.
Now lets figure out why this exception could occur. When a stub (or Skeleton) is generated using adb as the data binding framework (If no option (-d) is provided for the databinding framework Axis2 uses adb by default) it performs validation on the request it sends and the response it receives. The validation is performed based on the XML Schema for the request or response message. Hence if a response is to have three elements named a,b,c in a sequence and the response contains somethinglike a,d,c Axis2 would complain saying that it received an Unexpected element named d.
So this issue can be solved easily by comparing the request/response messages against the Schema that defines those messages. This could be tricky sometimes especially if you are not familiar with XML Schema.
This error could occur when there are namespace mismatches as well and spoting these could proove to be tricky as as a user found out over here.
Axis2 - The endpoint reference (EPR) for the Operation not found
Well if you've ever used Apache Axis2, I'm sure you would have faced this at some time or another.
The endpoint reference (EPR) for the
Operation not found is http://localhost:8080/services/someService
and the WSA Action = someAction
There has been a number of occasions where this question has been asked on the Axis2 mailing list as well. The answer to this is pretty simple though (Simple for someone who knows a bit of Axis2).
This exception simply means that Axis2 could not find the service and the operation that this request is headed to.
Several services can be hosted in Axis2, and these services could have several operations. Hence when Axis2 gets a request it should first search for the service and then the operation that the request is headed to. In Order to achieve this it uses some hints. This article from Chinthaka explains these in detail.
So if you hit this problem my advice is this. Try using TCPMonitor to intercept the request going into Axis2, have a look at it and make sure that the request contains some information that Axis2 could use to dispatch the request to the correct service and operation.
The endpoint reference (EPR) for the
Operation not found is http://localhost:8080/services/someService
and the WSA Action = someAction
There has been a number of occasions where this question has been asked on the Axis2 mailing list as well. The answer to this is pretty simple though (Simple for someone who knows a bit of Axis2).
This exception simply means that Axis2 could not find the service and the operation that this request is headed to.
Several services can be hosted in Axis2, and these services could have several operations. Hence when Axis2 gets a request it should first search for the service and then the operation that the request is headed to. In Order to achieve this it uses some hints. This article from Chinthaka explains these in detail.
So if you hit this problem my advice is this. Try using TCPMonitor to intercept the request going into Axis2, have a look at it and make sure that the request contains some information that Axis2 could use to dispatch the request to the correct service and operation.
Experience in Canberra, Australia
Last month I was down in Canberra, Australia together with my colleague Asanka on a consulting engagement. Canberra is the Capital of Australia and its not surprising that this engagement was with a department of the Australian Government. I have uploaded the pictures of this trip to flickr.
Although Canberra is the capital of Australia its strange that international flights don't land in there (Although it is an International Airport). Hence our route to Canberra was via Sydney with a transit in Singapore. The transit in Singapore was not a problem at all cause its one of the best Airports to be on transit. The transit at Sydney was a shocker though. When we boarded the flight from Colombo we had checked in our bags directly to Canberra. Yet at Sydney we had to take our baggage's, go through immigration and recheck it in. Well the procedure is the same in the US but rechecking in your baggage is not a big issue. We had to wait for nearly a hour (We were lucky that we had a transit of around 4 hours) in the queue to check our baggage's in. Mind you Quantas had around 8 terminals serving passengers (So you could imagine how slopy they were. Or how slopy there procedure is).
Our 5 day onsite engagement was split into 2 days on consulting and 3 days of training covering WSO2 ESB, WSO2 Registry and WSO2 Data Services. (I wont be covering any details of our consulting engagement in this post :)). The guys we worked with were humble and friendly and were prepared to change there architecture according to the advice we provided them with. In my opinion this was an important step in making this project a success. These were not decisions based on our products alone but taking there whole SOA project into account. Hi guys I know you must be reading this post :)...
Back to Canberra. As a whole I would say Canberra is a pretty boring city (Any city is boring compared to New Orleans). Almost all the shops close by 6.00 PM baring a few restaurents. They do have late night shopping on Friday night and not suprisingly that too ends at around 9.00 PM :).
Been in Canberra we did take the opportunity to visit the Australian Parliment, thanks to Hai. It was a nice experiance expecially considering that you have not visited the parliment in your own country :). Back here in Sri Lanka the Parliment is not open to the public to visit at there leasure.
On our way back we had a 10 hour transit in Singapore. Our initial plan was to head out of the Airport and spend some time in the city but we decided aginst it. So it was 10 hours in the Singapore Airport again. IIRC the third time for me.
As a whole our visit to Canberra was a success. It would have been nice if we spent a night in Sydney or Melbourne though :). Having said that it was a trip that we had challenges and fun. BTW visiting a boring city such as Canberra with a buddy is much better that visiting a active city such as New York alone.
Although Canberra is the capital of Australia its strange that international flights don't land in there (Although it is an International Airport). Hence our route to Canberra was via Sydney with a transit in Singapore. The transit in Singapore was not a problem at all cause its one of the best Airports to be on transit. The transit at Sydney was a shocker though. When we boarded the flight from Colombo we had checked in our bags directly to Canberra. Yet at Sydney we had to take our baggage's, go through immigration and recheck it in. Well the procedure is the same in the US but rechecking in your baggage is not a big issue. We had to wait for nearly a hour (We were lucky that we had a transit of around 4 hours) in the queue to check our baggage's in. Mind you Quantas had around 8 terminals serving passengers (So you could imagine how slopy they were. Or how slopy there procedure is).
Our 5 day onsite engagement was split into 2 days on consulting and 3 days of training covering WSO2 ESB, WSO2 Registry and WSO2 Data Services. (I wont be covering any details of our consulting engagement in this post :)). The guys we worked with were humble and friendly and were prepared to change there architecture according to the advice we provided them with. In my opinion this was an important step in making this project a success. These were not decisions based on our products alone but taking there whole SOA project into account. Hi guys I know you must be reading this post :)...
Back to Canberra. As a whole I would say Canberra is a pretty boring city (Any city is boring compared to New Orleans). Almost all the shops close by 6.00 PM baring a few restaurents. They do have late night shopping on Friday night and not suprisingly that too ends at around 9.00 PM :).
Been in Canberra we did take the opportunity to visit the Australian Parliment, thanks to Hai. It was a nice experiance expecially considering that you have not visited the parliment in your own country :). Back here in Sri Lanka the Parliment is not open to the public to visit at there leasure.
On our way back we had a 10 hour transit in Singapore. Our initial plan was to head out of the Airport and spend some time in the city but we decided aginst it. So it was 10 hours in the Singapore Airport again. IIRC the third time for me.
As a whole our visit to Canberra was a success. It would have been nice if we spent a night in Sydney or Melbourne though :). Having said that it was a trip that we had challenges and fun. BTW visiting a boring city such as Canberra with a buddy is much better that visiting a active city such as New York alone.
Sunday, February 8, 2009
WSO2 Developer Portal (wso2.org) gets a new look
Last week the WSO2 Library got a new look. Now its the chance of the home page to get a new look.
WSO2 Developer Portal is a good resources for users looking for information on WSO2 products as well as SOA and Web Services as a whole.
WSO2 Developer Portal is a good resources for users looking for information on WSO2 products as well as SOA and Web Services as a whole.
Saturday, February 7, 2009
UNIX Time will be 1234567890 on Valentine's Day
What a co-incidence, the Unix time would read 1234567890 at 00:31:30 CET on Valentines Day. That would translate to 05:00:30 on February 14th for us in Sri Lanka.
WSO2 BPS (Business Process Server) 1.0 Released!
The 1.0 version of the WSO2 BPS (Business Process Server) is now available for download. The WSO2 BPS is built on the revolutionary WSO2 Carbon Framework which brings compartmentalization into SOA.
Key features in this release include,
- Deploying Business Processes written in compliance with WS-BPEL 2.0 Standard and BPEL4WS 1.1 standard.
- Managing BPEL packages, processes and process instances.
- Data Sources support.
- External Database support for BPEL engine.
- WS-Security support for business processes.
- WS-RM support for business processes.
- Caching support for business processes.
- Throttling support for business processes.
- Transport management.
- Internationalized web based management console.
- System monitoring.
- Try-it for business processes.
- SOAP Message Tracing.
- Web Services tooling support such as WSDL2Java, Java2WSDL and WSDL Converter.
- Customizable server - You can customize the BPS to fit into your exact requirements, by removing certain features or by adding new optional features.
WSO2 WSAS (Web Services Application Server) 3.0 Released!
The 3.0 version of the WSO2 WSAS (Web Services Application Server) is now available for download. This version of the WSAS is built on the revolutionary WSO2 Carbon Framework which brings compartmentalization into SOA.
New features in this release include,
- Enhanced admin UI
- Extensible server admin framework
- WS-Eventing support
- Policy editor
- Separable frontend & backend - a single frontend server can be used to administer several backend servers simultaneously
- SOAP 1.1/1.2
- WSDL 1.1
- WSDL 2.0
- MTOM, XOP & SOAP with Attachments
- WS-Addressing
- WS-Security 1.0/1.1
- WS-Trust
- WS-SecureConversation
- WS-SecurityPolicy
- WS-ReliableMessaging
- WS-Policy
- WS-PolicyAttachment
- WS-MetadataExchange
- WS-Transfer
- WS-Eventing
- XKMS
WSO2 ESB (Enterprise Service Bus) 2.0 Released!
The 2.0 version of the WSO2 ESB (Enterprise Service Bus) is now available for download. This version of the ESB is built on the revolutionary WSO2 Carbon Framework which brings compartmentalization into SOA.
New features in this release include,
- Transactional JMS transport and the Transaction mediators
- Integrated graphical user management
- Integrated graphical key store management
- Configurable logging through the management console
- Graphical data source declaration
- WS-Eventing support and Event Sources making it an event broker
- Enhanced sequence and proxy service editor
- Module management capability
- Transport configuration management through the graphical console
- Graceful/Forced shutdown/restart
- Enhanced integrated registry and search functionalities
- User permissions support
- Enhanced monitoring tools for statistics and tracing
- Try-It tool to try an existing service
- Graphical policy editor
- Administration console fully internationalized
- Better modularity and extendability through OSGi component architecture
The WSO2 ESB is released under the Apache Licence version 2.0. Download it tryit out and give us your feedback.
Friday, February 6, 2009
OSGI and SOA - Slides
Those who missed the webinar on OSGI and SOA can go through the slides which were used for the webinar.
This is the start of a series of webinars which will show how OSGI, SOA and WSO2 products go hand in hand.
Osgi Webinar
View more presentations from wso2.org.
This is the start of a series of webinars which will show how OSGI, SOA and WSO2 products go hand in hand.
An interesting Blog - How to make Fresh Fruit Juices
This evening Azeez stumbled upon an interesting blog that is maintained by one of our colleagues. It contains valuable information on making fresh fruit juices. I'm sure you will enjoy it, Well I did and so did my wife.
WSO2 Carbon - An Amazing effort
Samisa, the Director of Engineering at WSO2 emphasizes on the effort that went into making WSO2 Carbon a success. Much of the success should go to Samisa himself for handling the Engineering resources very well. There were many a days when Samisa (and a bunch of others) spent numerous nights in office helping fellow members fix issues.
Samisa has been blogging quite a bit about carbon all the way along.
Samisa has been blogging quite a bit about carbon all the way along.
What is WSO2 Carbon?
Paul has put an excellent post about WSO2 Carbon. In this he explains the advantages of using WSO2 Carbon. In a previous post Samisa had blogged on why one would want to use WSO2 Carbon.
Thursday, February 5, 2009
What is WSO2?
For those of you who do not know what WSO2 is here is an Elevator Pitch that tries to explain it in a couple of minutes.
Wednesday, February 4, 2009
Sri Lanka Celebrates Her 61st Independence Day
Tuesday, February 3, 2009
WSO2 Mashup Server Resources
If you are looking for resources on the WSO2 Mashup Server, make sure you pay a visit to its library page on wso2.org. It summaries all the available resources.
Monday, February 2, 2009
WSO2 Carbon hits the Home Straight
The team has been pushing hard to make WSO2 Carbon a success. We've done several betas and RC's in the past few months and now we've hit the home straight. We've cut a branch for the 1.5 release of carbon and are in the process of creating the final packs for testing. The following WSO2 Carbon based products will be released next week,
I hope to blog more about WSO2 Carbon and the related products in the following weeks.
I hope to blog more about WSO2 Carbon and the related products in the following weeks.
WSO2 Library gets a new look
The WSO2 Oxygen Tank has been going through numerous iterations in order to provide a better user experience. The newest component to be upgraded is the Library where you could find articles, podcasts, demos, Case Studies... etc on WSO2 products as well as Apache products such as Apache Axis2, Apache Synapse and Apache Axiom.
The new library has made it easy to find resources based on product as well as category. Do check it out.
The new library has made it easy to find resources based on product as well as category. Do check it out.
Sunday, February 1, 2009
Nadal wins an Epic Final
It was just two days ago that Rafael Nadal was involved in a 5 hour marathon match with Fernando Verdasco. That cracker of a match was worthy of been a final and who would have thought that there could be a match that could better that. Well it happened in the final of the Australian Open when Nadal beat Roger Federer in a match that lasted 4 and a half hours.
This match was arguably between one of the best tennis players of all time against the best player at the moment. Nadal's stamina is extraordinary and some of the points he pulled off was a mere treat to watch. In a post match interview Verdasco stated that a point against Nadal is worth 3 points against any other player. This time I made sure that I didn't miss a game and watched the whole match right to the end.
Federer who was very emotional after the match was on the brink of equaling the record for the most Grand Slams which is held by Pete Sampras. This wasn't Federers moment but I'm sure he will get that record in time to come. I'm also certain that Nadal will break that record before he hangs his boots. Nadal who is just 22 has already won 6 Grand Slams.
It was fitting that the awards were presented by Rod Laver who is one of the greatest tennis players. It is said that to be a real champion you need to win all four Grand Slams in a single calendar year. Only 5 people in the history of the game have achieved this feat, and Rod Laver has done it twice. It was also nice to see the four people he beat at the Australian Open, French Open, US Open and Wimbledon at the presentation.
This match was arguably between one of the best tennis players of all time against the best player at the moment. Nadal's stamina is extraordinary and some of the points he pulled off was a mere treat to watch. In a post match interview Verdasco stated that a point against Nadal is worth 3 points against any other player. This time I made sure that I didn't miss a game and watched the whole match right to the end.
Federer who was very emotional after the match was on the brink of equaling the record for the most Grand Slams which is held by Pete Sampras. This wasn't Federers moment but I'm sure he will get that record in time to come. I'm also certain that Nadal will break that record before he hangs his boots. Nadal who is just 22 has already won 6 Grand Slams.
It was fitting that the awards were presented by Rod Laver who is one of the greatest tennis players. It is said that to be a real champion you need to win all four Grand Slams in a single calendar year. Only 5 people in the history of the game have achieved this feat, and Rod Laver has done it twice. It was also nice to see the four people he beat at the Australian Open, French Open, US Open and Wimbledon at the presentation.
Subscribe to:
Posts (Atom)