maneh corp. projetos e sisteminhas inúteis de utilidade pública

22dez/090

Instalando WSO2 Enterprise Service Bus Eclipse Tools no Ubuntu Karmic Koala (9.10)

Com o lançamento do WSO2 Enterprise Service Bus Eclipse Tools (v1.0.0-beta), cansado de ficar utilizando a interface web para gerenciar os "esqueminhas" da ESB, resolvei testar o plugin.

Mas como nem tudo são flores, após eu instalar o plugin e tentar criar um novo endpoint, recebi o erro abaixo:

Unhandled event loop exception
XPCOM error -2147467259

Com isso, passei um certo tempo procurando na internet, até descobrir que o erro é causado por falta da biblioteca libstdc++5, que no Ubuntu Karmic Koala (9.10) foi atualizada para libstdc++6. Versão que é incompátivel com a visualização embarcada do Mozilla que o Eclipse WTP utiliza.

Então, para resolver o problema, primeiro passo que tentei foi:

$ sudo apt-get install libstdc++5
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libstdc++5 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package libstdc++5 has no installation candidate

Só que não resolveu, a maneira que encontrei foi procurar a biblioteca para download, encontrei no site do Debian:

wget http://ftp.br.debian.org/debian/pool/main/g/gcc-3.3/libstdc++5_3.3.6-18_i386.deb

E instalei:

sudo dpkg -i libstdc++5_3.3.6-18_i386.deb

E com esses passos, tudo funciona normalmente...

18dez/090

Testes na versão 2.2.0 do WSO2 Data Services Server

Estava eu, numa calma sexta-feira, realizando testes na recém lançada versão 2.2.0 do WSO2 Data Services Server, e para começá-los resolvi fazer deploy dos serviços que já temos desenvolvido, pensando que tudo seria tranquilo, como estava o meu dia, mas... ledo engano.

Erro - Primeiro ato

Fui no básico: "Add > Data Service > Upload" e...

wso2-data-services-faulty-01Um erro que não me diz muito, então o jeito foi ver o que poderia ser por "tentativa" e erro. Após um pouco de luta e leitura do código fonte do arquivo DBS, descobri que era algum método que executa uma procedure e não tinha o ordinal preenchido.

<query id="productsByGroup" useConfig="default">
<sql>call sp_productsByGroup @group_id = ?</sql>
<param name="cliente" ordinal="" sqlType="INTEGER" type="IN"/>
<result defaultNamespace="http://ds.ws.mcorp.com.br/products" element="products" rowName="product">
<element column="id" name="id"/>
<element column="name" name="name"/>
</result>
</query>

Então peguei a linha 3 e corrigi, deixando assim:

<query id="productsByGroup" useConfig="default">
<sql>call sp_productsByGroup @group_id = ?</sql>
<param name="cliente" ordinal="1" sqlType="INTEGER" type="IN"/>
<result defaultNamespace="http://ds.ws.mcorp.com.br/products" element="products" rowName="product">
<element column="id" name="id"/>
<element column="name" name="name"/>
</result>
</query>

Ou seja, devíamos ter prestado mais atenção quando falavam ser obrigatório para procedures o preenchimento desse campo, mas como nunca deu problema, então não prestávamos a devida atenção.

Erro - Segundo ato

Com o serviço devidamente publicado, fui a execução dos métodos para ver se tudo iria bem. Primeiro método (sem parâmetros de entrada) foi tranquilo, retornou tudo que eu precisava. Já no segundo método...

wso2-data-services-faulty-02E voltamos a busca do erro perdido... E dessa vez não foi falta de atenção nossa, apenas o plugin que o pessoal do WSO2 disponibiliza (e que ensinei a compilar) que não preencheu o atributo como devia. Na chamada da operação estava assim:

<operation name="productsByGroup">
<call-query href="productsByGroup">
<with-param name="group_id" query-param=""/>
</call-query>
</operation>

Enquanto deveria estar assim:

<operation name="productsByGroup">
<call-query href="productsByGroup">
<with-param name="group_id" query-param="group_id"/>
</call-query>
</operation>

E feito todas essas alterações na definição dos data service, tudo correu bem e tranquilo com essa nova versão.

Mas ainda acho que vale a pena esperar um pouco pra ver se não aparece nenhuma correção que levem eles a gerar a versão 2.2.1; também tenho que verificar se os patches que aplicamos na versão anterior deixaram de ser necessário. Mas isso fica pra uma próximo oportunidade.

18dez/090

Compilando o plugin do WSO2 Data Services Server para o Eclipse

Eclipse + WSO2 Data ServiceComo não encontrei uma versão final do plugin para o Eclipse para criação, edição e deploy de serviços do WSO2 Data Services Server na página de downloads do site, o jeito foi compilar o plugin a partir do fonte disponível no repositório (e viva o código aberto). E seguem abaixo os passos necessário para o procedimento.

Requisitos

Será necessário que você tenha instalado os programas abaixo para poder realizar esse processo. Não é minha ideia ensinar como instalar, mas com uma busca no Google esse problema deve ser facilmente resolvido:

Baixando fontes

Primeiro passo é baixar do repositório o código fonte da última versão:

svn co https://wso2.org/repos/wso2/trunk/tools/ide/eclipse/data-service/org.wso2.ws.dataservices.ide/

Compilação

Depois de baixados os fontes, basta entrar na pasta que foi gerada e mandar compilar:

cd org.wso2.ws.dataservices.ide
mvn install

Esse processo pode demorar um pouco, pois ele realiza o download de diversas dependências para compilação, mas no fim ele gera dentro do diretório "target" com o arquivo "org.wso2.ws.dataservices.ide_1.0.0.jar" que deve ser instalado no seu Eclipse.

Instalação

No meu caso, o Eclipse está instalado no meu home e é para lá que copiei o arquivo.

cp target/org.wso2.ws.dataservices.ide_1.0.0.jar ~/Applications/eclipse/plugins/.

Finalização

WSO2 Data services: Wizard newE com isso, no menu de "Novo", do seu Eclipse, deve ter a opção de wizard para criação e após criado o serviço (que ficará para um outro post) você tem a opção de clicar com o botão direito no arquivo e editar (Edit Data Service) ou realizar o deploy (Deploy Data Service).

29set/095

BPEL Editor VS JBoss Tools

Cansado de apanhar dos bugs e problemas do BPEL Eclipse, resolvi tentar a sorte com o JBoss Tools (3.1).

O JBoss Tools não atende só BPEL, tem diversas funcionalidades, mas o que me importava realmente era o BPEL.

Após duas semanas trabalhando com ele e fazendo os processos o utilizando, cheguei as conclusões abaixo:

Boas notícias:

  • auto-completation para xsl;
  • atalho para criação de arquivo xsl;
  • adicionar elemento no schema tem menu "antes" e "depois".

Más notícias:

  • na criação do arquivo de deploy, além de o nome ficar diferente (fica bpel-deploy.xml e não deploy.xml), não consigo selecionar os serviços os targets, tive que fazer o arquivo manualmente;
  • continua não alterando o nome da operação no bpel ao alterar no wsdl;
  • continua (as vezes) não criando um novo "assign" quando pergunta se quer que seja criado (mas não dá exception que obrigava abrir e fechar o bpel);
  • o problema ao alterar o nome da variável de "request" ou "response", fechar o bpel e verificar no "Details" do "Invoke" continua;
  • continua incluido as variáveis em um local do bpel que o editor não lê;
  • simplesmente os botões de "add" e "delete" do "details" de um "assign" continua parando de responder simplesmente;
  • continua perdendo as referências aos wsdl do nada.

Ou seja, não resolveu meus maiores problemas além de criar alguns novos... Definitivamente não conheço um editor BPEL livre decente. Alguém conhece?

17set/090

WSO2 Data Services – Instalação do servidor

A instalação do WSO2 Data Services se divide em duas partes, a instalação do servidor e a preparação do ambiente de desenvolvimento.

1. Servidor

É necessário realizar o download da última versão (utilizamos aqui a 2.0) do servidor na página do projeto.

Vou exemplificar os comandos como se fosse utilizar pasta "~/Applications/wso2" para colocar todos os servidores do WSO2, caso tenha outra escolha, verifique a adaptação dos comandos.

Criando a pasta:

mkdir -p ~/Applications/wso2

Descompactando o arquivo (lembrando de verificar a versão do arquivo que você baixou - no meu caso, 2.0):

unzip /path/to/download/wso2dataservices-2.0.zip -d ~/Applications/wso2

Após descompactado, vamos iniciar o servidor:

cd ~/Applications/wso2/wso2-dataservices-2.0
./bin/wso2server.sh

Após algumas (várias) mensagens depois, você deve receber algo como:

[2009-05-29 14:30:30,330]  INFO -  HTTPS port             : 9443 {org.wso2.carbon.core.StartupServlet}
[2009-05-29 14:30:30,333]  INFO -  HTTP port              : 9763 {org.wso2.carbon.core.StartupServlet}
[2009-05-29 14:30:30,333]  INFO -  WSO2 Carbon started in 35 sec {org.wso2.carbon.core.StartupServlet}

E isso representa que tudo já está instalado e funcionando! Para sair, basta usar "CTRL + C".

Esse comando que acabou de utilizar é usado para controlar o serviço do WSO2, tem alguns parâmetros que podem ser utilizados, para vê-los basta digitar:

./bin/wso2server.sh help

E com isso temos o servidor instalado! Para mantê-lo iniciado, em background, basta utilizar o comando:

./bin/wso2server.sh start

1. Ambiente de desenvolvimento

É necessário realizar o download e instalação desse plugin para o Eclipse.

Numa próxima "jornada", vamos fazer nosso primeiro data service.

   

Categories

Tags

arquitetura aurélio banco de dados bpel bpel editor business process código aberto carbon casa di bel cms data services definição deploy eclipse efetividade enterprise service bus esb expressão regular governance registry identity instalação jboss jboss tools lançamento livro mashup moleskines oracle palestra papelaria cícero plugin produtividade promoção soa software livre sql server transformation webcast weblogic web services application websphere wordpress wso2 wso2 carbon xsl

Lista de Links

RSSTwitter: vyper

Archives

Meta