J'ai essayé de trouver la bonne configuration pour supporter les deux requêtes http/s dans une application Flex. J'ai lu tous les documents et ils fais allusion à faire quelque chose comme ce qui suit:Comment prendre en charge les canaux HTTP et HTTPS dans Flex/BlazeDS?
<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>
Cela fonctionne très bien en frappant l'application via https mais obtenir des erreurs de communication intermittentes en frappant la même application via http. Voici un abrégé des 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>
Je suis en cours d'exécution avec Tomcat 5.5.17 et Java 5.
- Les BlazeDS docs disent que c'est la meilleure pratique. Y a-t-il un meilleur moyen?
- Avec cette configuration, il semble y avoir 2-3 tentatives associées à chaque canal défini dans l'élément default-channels, donc il faut toujours ~ 20s avant que le canal my-amf se connecte via une requête http. Existe-t-il un moyen de remplacer les 2 ou 3 tentatives pour dire, 1 réessayer pour chaque canal?
Merci d'avance pour les réponses.