BPEL Duvida

10 respostas
rockstorm

Saudações,

Estou criando uma orquestração de um webservices simples onde não é necessario passar parametros.
O problema é que não entendo e não consigo fazer com que eu envoque o serviço sem passar variavel. Todos os outros serviços que necessitam de variaveis é tranquilo.
Aguem tem este tipo de informação?

10 Respostas

A

roskstorm,

mesmo que vc implemente um web services que não recebe nenhum parâmetro, ao gerar o WSDL em geral é criado um message sem nenhum parâmetro. Então basta vc declarar uma váriavel do tipo desse message e passar como parâmetro. Não sei se respondi tua pergunta.

abraços
André

rockstorm

Respondeu sim…
Vou tentar criar uma variavel do mesmo tipo message.
muito obrigado

A

Blza. Flw

André

rockstorm

Bom dia,
Ainda não consegui passar uma variavel message como parametro, pois ele acusa que estou tentando passar um message para outro message.
O webservices tem o request e o response, estou tentando atribuir diretamente para o request, mas acusa que não posso atribuir um valor para um message.

Error(79): 
 [Error ORABPEL-10044]: Tentando designar parte da variável messageType diretamente a outra variável messageType
 [Description]: na linha 79 de "C:\jdevstudiobase10131\jdev\mywork\WebServicesCVC\BPELTeste\bpel\BPELTeste.bpel", é inválido designar um valor XML diretamente para a variável messageType "Promocoes_funGeraPromocoes_InputVariable".
 [Potential fix]: Verifique se o valor de retorno do tipo from-spec é compatível com o tipo to-spec.
A

rockstorm,

em que instrução está dando esse erro? É um invoke? Ah e qual ferramenta vc está utilizando? Eu costumo usar o ActiveBPEL Designer.

abraços
André

rockstorm

olá.
Quando ele dá esta mensagem, ele nem compila! este é o problema. não sei como criar uma variavel message para que possa atribuir ao message que necessita ser iniciado. Estou utilizando o JDeveloper 10.1.3.1

grato

A

Wanderley,

em geral você precisa incluir o wsdl do web services que vc esta utilizando no bpel. Dp vc declara um variável e cujo messagetype é igual ao presente no arquivo wsdl. Por exemplo:

Experimenta ai. Qq coisa!!

abraços
André

rockstorm

André bom dia,
No WSDL que estou invocando, tenho os messages:

<message name="funGeraPromocoes11Request" /> 
- <message name="funGeraPromocoes11Response">
  <part name="return" type="ns1:dbconnection1_TableWebAba" /> 
  </message>

Como voce pode ver , no Request não tenho parametro e no response tenho o return. Como devo proceder para invocar este processo se não tenho um request?
Conforme você disse, eu teria que criar um messageType igual ao do WSDL, então seria:

<variable name="entrada" messageType="ns1:funGeraPromocoes11Request"/>

OBS: fazendo assim, estarei passando a variavel “entrada” para o
<message name=“funGeraPromocoes11Request” /> que se encontra no WSDL invocado.
Seria isso?
obrigado.

rockstorm

Este é o erro que acontece:

A

É isso mesmo, e essa variável que vc criou vc seta o atributo inputVariable da atividade invoke. O mesmo tem que ser feito pra variável de saída outputVariable. Tenta aí.

abraços
André

Criado 23 de outubro de 2006
Ultima resposta 30 de out. de 2006
Respostas 10
Participantes 2