Tuesday, June 09, 2009

How to fix MBR using Ubuntu live CD

When we have dual boot there are some possibility that we might delete one of the partition, and causing deleting MBR as well. Issues can be easily fix using Windows CD, however you need to remember the password, if not ..

Ubuntu Live CD comes handy this case, just follow the following steps, you will be back in business.

  • Boot from Ubuntu Live CD
  • Then you need to download the ms-sys, you can find that from - http://packages.ubuntu.com/dapper/i386/ms-sys/download
  • Once downloaded it will ask for auto install, click that
  • Next type “sudo fdisk -l” , from that you can find the main partition you want to fix
  • Then type “sudo ms-sys -m /dev/sda”
  • Next restart, everything should work fine.

Axis2 1.5 released

Axis2 1.5 released and available to download, this is a major release and has a number of changes

  • Removed the JDK 1.4 compatibility, now Axis2 works JDK 1.5 and above
  • Moving transport to a separate package
  • A number of bug fixes and
  • Many more new small scale improvements

You can download the release from http://ws.apache.org/axis2/

Thank you for using Axis2.

Sunday, June 07, 2009

Axis2 tutorials and articles

I have written a number of articles on Axis2, and those covers various topics on Axis2. However sometimes it is hard to find what you want, so I compiled a list of articles and categorized them in somewhat organized manner. I believe that will help to find the document you want with minimum time. And I will keep on updating this list, so that you can find all Axis2 articles in one place.

Axis2 Architecture
Axis2 Deployment
Axis2 Services
Axis2 MessageReceivers
Axis2 Handlers
Axis2 Transport
Axis2 Session
Axis2 Client
Axis2 Configurations
Axis2 General
Apache Axiom
Quickstart Apache Axis2

Wednesday, June 03, 2009

Power of Code generation

Code generation is so powerful technology, and it is been used for various purposes and various places, and code generation is not a new concept as well. In the past even though people have not used the same name they have used the same concepts. Normally any given code generation tool there are four parts, and number of steps and component may very from one component to other
  • Code generation configurations
  • Transformation
  • Transformation configuration
  • Code generation
Configuration can be a property file, XML file or datafile or any other kind of document, and most of the time configuration can be human readable. Next is the transformation, for the transformation it could either be something like XSL or simple logic in the scripts of class file to do the transformation. Finally creating artifacts as the results.

A classic example of code generation can be seen in the Web Service field, there people use code generation to generate service and client code from a WSDL. In that case the configuration file would WSDL, and the transformation would be WSDL to Java, and transformation option would be, web service framework, language and etc..., and finally the output would the either or both service skeleton and the stub.

One other powerful use case of code generation is testing, specially in the process of staging testing, where we have some SLA to meet. We generate the code (scripts and configurations) and then measure the results, if it does not meet the expectation then we change the code generation configuration and re-generate the code and measure the results. We do this process until we get the expected results, doing this kind of process manually is so hard as well as error prone.

The most difficult part of the code generation is to identify the requirements including the input configuration and output format. Once we have that code generation is easy, and once we have the code generation tool, doing testing is so easy.

Most of the time what people do is do the experiments(testing) manually in a very small scale, and then use those code and configuration to build a code generation tool.