Consumir Web Service com Netbeans

Tudo bem pessoal?

Nunca trabalhei com Web Service. Já pluguei o WebService na minha aplicação e também já estou vendo as classes. Eu tentei fazer desta forma:

[code]public static void main(String[] args) {
// TODO code application logic here

    Reservatorios service = new Reservatorios();

    QName portQName = new QName("http://tempuri.org/WebService1/Service1", "ReservatoriosSoap");
    String req = "<Historico xmlns=\"http://tempuri.org/WebService1/Service1\"><reservatorio>IRAPE</reservatorio><inicio>1/6/2012</inicio><fim>19/6/2012</fim></Historico>";

    try { // Call Web Service Operation

        Dispatch<Source> sourceDispatch = null;
        sourceDispatch = service.createDispatch(portQName, Source.class, Service.Mode.PAYLOAD);            
        Source result = sourceDispatch.invoke(new StreamSource(new StringReader(req)));
        String xmlResult = sourceToXMLString(result);
        System.out.println("Resposta do xml: " + xmlResult);          
    } catch (Exception ex) {
        // TODO handle custom exceptions here
    }        
}[/code]

Mas acho que essa não seria a forma mais ideal, pois pelo que entendi isso vai me trazer uma string gigante. Eu gostaria de saber como trabalhar com os objetos que o WebService cria. Algum exemplo?

Obrigado.