Heat the oil in a large deep frying pan over a medium-low heat. Add the shallots and fry for 6-7 minutes until golden.
Add the diced chicken. Increase the heat to medium and fry for a further 4-5 minutes until no longer pink. Stir in the curry paste and cook for 1 minute, then pour in the coconut milk and bring to the boil.
Reduce the heat, stir in the babycorn and simmer gently for 4-5 minutes until the chicken is cooked through and the corn is just tender.
Meanwhile, cook the rice according to the instructions on the packet. Drain well.
Stir the pak choi into the curry and cook for a further 2 minutes until just wilted. Add the lime juice to taste. Divide the rice between four shallow serving bowls and spoon over the curry. Garnish with shredded basil leaves and sliced spring onions.