Я пытался найти правильную конфигурацию для поддержки обоих запросов http / s в приложении Flex. Я прочитал все документы, и они намекают на что-то вроде следующего:
<default-channels>
<channel ref="my-secure-amf">
<serialization>
<log-property-errors>true</log-property-errors>
</serialization>
</channel>
<channel ref="my-amf">
<serialization>
<log-property-errors>true</log-property-errors>
</serialization>
</channel>
Это прекрасно работает при подключении к приложению через https, но периодически возникают сбои связи при подключении к тому же приложению через http. Вот сокращенный services-config.xml:
<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"
class="flex.messaging.endpoints.AMFEndpoint"/>
<properties>
<!-- HTTPS requests don't work on IE when pragma "no-cache" headers are set so you need to set the add-no-cache-headers property to false -->
<add-no-cache-headers>false</add-no-cache-headers>
<!-- Use to limit the client channel's connect attempt to the specified time interval. -->
<connect-timeout-seconds>10</connect-timeout-seconds>
</properties>
</channel-definition>
<channel-definition id="my-secure-amf" class="mx.messaging.channels.SecureAMFChannel">
<!--<endpoint url="https://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure" class="flex.messaging.endpoints.SecureAMFEndpoint"/>-->
<endpoint url="https://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure"
class="flex.messaging.endpoints.AMFEndpoint"/>
<properties>
<add-no-cache-headers>false</add-no-cache-headers>
<connect-timeout-seconds>10</connect-timeout-seconds>
</properties>
</channel-definition>
Я работаю с Tomcat 5.5.17 и Java 5.
- Документы BlazeDS говорят, что это лучшая практика. Есть ли лучший способ?
- В этой конфигурации кажется, что с каждым каналом, определенным в элементе default-channel, связано 2-3 повторных попытки, поэтому всегда требуется ~ 20 с, прежде чем канал my-amf подключится через запрос http. Есть ли способ переопределить 2-3 попытки, скажем, 1 повтор для каждого канала?
Заранее спасибо за ответы.