For the profiteroles:
Line a large baking sheet with parchment paper. Combine the water, butter, and salt in a heavy medium saucepan over medium heat. Bring to a boil, stirring until the butter melts. Add the plain flour and stir over medium heat for one minute. Cool for five minutes.
Crack the eggs into a measuring cup. Use a wooden spoon to beat the eggs into the dough, one at a time. Stir in the parmesan and pepper.
Spoon 18 mounds of dough onto the prepared baking sheet, spacing 5cm apart. Bake for about 45 minutes, until the profiteroles are puffed and golden. Allow the profiteroles to cool completely.
For the goat cheese filling:
Combine the goat cheese and cream in a medium bowl and whisk together using an electric mixer. Stir in the tomatoes, salt and pepper. Set aside.
For the herb oil:
Combine the herbs in a food processor and pulse to a medium puree. Then, with the machine running, add the oil, salt, and pepper. Transfer to a small bowl, cover with cling film and set aside.
Using a serrated knife, cut the tops off the profiteroles. Fill each profiterole with a spoonful of the goat cheese mixture and return the top of the pastry. Place two or three profiteroles on each serving plate, drizzle with herb oil, and sprinkle with walnuts. Serve.