WSO2 ESB código de erro desconhecido 102511
Eu atualizei recentementeWSO2 ESB
para a versão 4.7 noWindows Server 2008 R2
e encontrou o próximo erro ao simplesmente fazer proxy da solicitação SOAP para um nó de extremidade:
Recebendo resposta enquanto o manipulador está em um estado inconsistenteREQUEST_HEAD
ERROR_CODE : 102511
ERROR_MESSAGE : Error in Sender
ERROR_DETAIL : Error in Sender
ERROR_EXCEPTION : null
A questão é que esse código de erro não é descrito na documentação e sem uma exceção, não é óbvio o que fazer com ele. O código mais próximo que encontrei foi SND_INVALID_STATE = 102510 e, a julgar pelo código-fonte, parece que o pedido vem com cabeçalhos inválidos. Mas nem todas as solicitações estão sendo reprovadas. O mesmo pedido pode passar ou falhar aleatoriamente. Eu gravei todos os pedidos com o violinista e reproduzi-os novamente. Aquele que falhou pode eventualmente passar e vice-versa. Antes disso, implantei e testei a nova versão do ESB na minha máquina local (Windows 7) e encontrei esse erro apenas na inicialização a frio.
A configuração mais simples para reproduzi-lo consiste no serviço Path Through Proxy e um endpoint de endereço.
Configuração do serviço de proxy:
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse" name="TestEP" transports="http" statistics="disable" trace="enable" startOnLoad="true">
<target endpoint="TestEP">
<outSequence>
<send/>
</outSequence>
</target>
<description/>
</proxy>
Endpoint descrição do endereço
<endpoint xmlns="http://ws.apache.org/ns/synapse" name="TestEP">
<address uri="http://mydomain.test/SystemServices.asmx">
<syn:suspendOnFailure>
<syn:initialDuration>0</syn:initialDuration>
<syn:progressionFactor>1.0</syn:progressionFactor>
<syn:maximumDuration>0</syn:maximumDuration>
</syn:suspendOnFailure>
</address>
</endpoint>
Alguém já experimentou esse erro ou sabe como lidar com isso? Ficarei grato por qualquer insight sobre a situação.
Uma atualização:
Parece que a razão pela qual as solicitações estão falhando é
Expect: 100-continue
opção no cabeçalho HTTP da solicitação. Quando criei uma regra para removê-la no violinista, todas as consultas foram bem-sucedidas. Ainda não está claro se há uma maneira de lidar com tal comportamentoWSO2 ESB
lado ou essa parte do cabeçalho deve ser removida.