domingo, fevereiro 27, 2005

Ponto de não progressão!

Pois é, desde que iniciei em termos efectivos o projecto desde já quase há um mês (5 de Fevereiro) atingi um ponto que se pode considerar como de não progressão, e isto porque, apesar do código do CGA já estar num nível que eu poderei considerar de certo modo aceitável -com uma nova classe MyRandom para gerar numeros aleatórios inspirado num código em C++ que me foi cedido pelo meu orientador e que se baseia em grande parte neste artigo da ACM - Random number generators: good ones are hard to find, da autoria de S. K. Park e K. W. Miller. O problema agora trata-se de experimentar pela primeira vez os Web Services, e o que eu quero fazer pela primeira é uma coisa mínima, fazer com que um cliente (worker, melhor dizendo) descarregue um vector-população a partir do manager, mas para conseguir fazer isso vou ter que mexer em classes de JAVA como a JAX-RPC, que, como de acordo com o que está no link anterior, se trata de uma biblioteca de JAVA que permite evitar ao programador o acesso directo ao protocolo SOAP. Como ainda não estudei a fundo a API do XML-RPC, não posso estar por aqui a dar detalhes. Tenho andado a tentar seguir este tutorial, que se baseia no TomCat, ao contrário do último, que usa ao invés um webserver qualquer da Sun, que já tive oportunidade de experimentar e que é muito pesado, por isso optei por não o seguir, não se fiz mal, mas as diferenças não são grandes. O problema é que os passos descritos são para ser usados para o caso em que se usa directamente o TomCat directamente para implementar os Web Services, e não por intermédio do Axis, como pretendia inicialmente. O problema é que ainda não encontrei um tutorial de Axis verdadeiramente condigno que me explicasse as coisas são assim, assim e assado, e tens que fazer estes passos para chegar lá. Só encontrei um que me explicava as coisas, mas tratava-se de usar ficheiros JWS, que são no entanto Web Services demasiado básicos para o meu gosto e que no fundo parecem mais receitas rápidas para demonstrar que o Axis funciona, do que bons exemplos que permitam Web Services mais complexos e aceitáveis. Por isso, que pelos vistos, vou ter que fazer um meio-termo entre o tutorial da Sun e o manual do Axis . O Axis permite simplificar a vida, permitindo gerar o código JAVA directamente a partir do WSDL, graças à ferramenta WSDL2Java, existindo também a recíproca, Java2WSDL . Para além de tudo isto, ainda por cima, chega finalmente a 3ª semana do 2º semestre, em que acho que o "2º semestre" vai começar a doer, em que as disciplinas de Inteligência Artificial e Progtamação Funcional e Lógica me vão dar água pela barba que chegue!!! De modo que acho, que se isto começar a dar problemas, o projecto vai ter que ficar em banho maria!!!