2016-08-03 7 views
0

У меня есть служба прокси, вызывающая веб-службу. иногда он отправляет код ошибки 303001, а после обновления он снова работает. мой ум обновления - я открываю панель администратора в списке услуг, выбираю дизайн моего сервиса и нажимаю следующий следующий финал. после этой службы работают исправно, а через 1 час его выбросить код ошибки моей службы:Выполнение кода ошибки ошибки по умолчанию 303001 wso2 esb

<?xml version="1.0" encoding="UTF-8"?> 
<proxy xmlns="http://ws.apache.org/ns/synapse" 
    name="BillVerification" 
    transports="https,http" 
    statistics="disable" 
    trace="disable" 
    startOnLoad="true"> 
<target> 
    <inSequence> 
    <class name="org.sample.mediators.citydi.HashMediatorCityDI"/> 
    <log level="full" category="FATAL"> 
     <property name="fprever" value="justyou"/> 
    </log> 
    <property name="DISABLE_CHUNKING" 
       value="true" 
       scope="axis2" 
       type="STRING"/> 
    <send> 
     <endpoint> 
      <address uri="http://checkbill2.citydi.net/CheckBill.asmx?wsdl" format="soap12"> 
       <suspendOnFailure> 
       <initialDuration>100000000</initialDuration> 
       <progressionFactor>1.0</progressionFactor> 
       <maximumDuration>100000000</maximumDuration> 
       </suspendOnFailure> 
      </address> 
     </endpoint> 
    </send> 
    <log level="full" category="FATAL"> 
     <property name="send1" value="send1"/> 
    </log> 
    </inSequence> 
    <outSequence> 
    <log level="full"> 
     <property name="beforeSENDout" value="2"/> 
    </log> 
    <send/> 
    <log level="full" category="FATAL"> 
     <property name="send2" value="send2"/> 
    </log> 
    </outSequence> 
</target> 
<publishWSDL uri="http://checkbill2.citydi.net/CheckBill.asmx?wsdl"/> 
<description/> 
</proxy> 
+0

После отправки посредника вы не должны добавлять никаких посредников. Можете ли вы удалить все посредники журнала после отправки посредника и проверить. Кроме того, для отладки проблемы может потребоваться полная трассировка стека. – ycr

+0

Код ошибки 303001 [1], по-видимому, указывает на то, что проблема с конечной точкой адреса. Вы можете проверить, что конечная точка активна во все времена [1] https://docs.wso2.com/display/ESB451/Error+Handling+and+Error+Codes –

+0

yes jason всегда активен. есть ли у него какие-либо проблемы с версией мыла? – behzad

ответ

1

303001 = Адрес конечная точка не готова к подключению

Возможно, из-за корпоративного прокси/брандмауэр?

Вы ошибаетесь, думая, что ваша конечная точка активна всегда: используйте именованную конечную точку вместо анонимной, и посмотрите на веб-консоль wso2: я думаю, она будет деактивирована («действие» станет «Включить»)

В вашем случае с анонимной конечной точкой при редактировании/сохранении прокси-сервера конечная точка включена.

Если вы не хотите, чтобы ваша конечная точка будет приостановлено добавить что-то вроде этого:

<suspendOnFailure> 
    <errorCodes>-1</errorCodes> 
    <initialDuration>0</initialDuration> 
    <progressionFactor>1.0</progressionFactor> 
    <maximumDuration>0</maximumDuration> 
</suspendOnFailure> 

Если вы не хотите, чтобы ваша конечная точка для управления определенным тайм-аут, добавить что-то вроде этого:

<markForSuspension> 
    <errorCodes>-1</errorCodes> 
    <retriesBeforeSuspension>0</retriesBeforeSuspension> 
    <retryDelay>0</retryDelay> 
</markForSuspension> 
+0

Вы правы. я использовал анонимную конечную точку и отключился после многих транзакций, я изменил ее на именованную конечную точку, и она работает правильно. Tanx – behzad