Comment soutenir à la fois les protocoles HTTP et HTTPS dans les canaux Flex/BlazeDS?
J'ai essayé de trouver la bonne configuration pour soutenir à la fois les http/s, les demandes en Flex app. J'ai lu toutes les docs et ils font allusion à faire quelque chose comme ce qui suit:
<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 lors de la frappe de l'application via https, mais obtenir des intermittents de l'échec de la communication lors de la frappe de la même application via http. Voici une présentation abrégée de 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.
- La BlazeDS docs disent que c'est la meilleure pratique. Est-il un meilleur moyen?
- Avec cette config, il semble y avoir 2-3 tentatives associés à chaque canal défini par défaut dans les canaux de l'élément, de sorte qu'il faut toujours ~20s avant de le mon de l'amf canal se connecte via une requête http. Est-il un moyen de remplacer les 2-3 tentatives-à-dire, 1 réessayer pour chaque canal?
Merci d'avance pour les réponses.
OriginalL'auteur digitalsanctum | 2009-06-17
Vous devez vous connecter pour publier un commentaire.
J'ai le http et le https de travail, bien que je ne l'ai testé sur Firefox et IE7. Jusqu'à présent, je suis le seul à l'aide de BlazeDS pour l'accès distant. Voici mon set up:
Vous ne spécifiez pas le serveur d'applications que vous utilisez; il peut être un problème. J'ai eu quelques problèmes lors de la commutation de HTTPS en HTTP (secure connexions) sous Tomcat. Une chose que j'ai à résoudre a été d'installer la Jetée et de l'essayer. Je n'avais jamais utilisé avant, mais il a été très rapide à mettre en place et déployer pour, même par le biais de l'Éclipse. J'ai alors su que j'avais un Tomcat-problème, ce qui a permis de trouver une solution plus facile, je veux dire le possible).
OriginalL'auteur Philip
Cela a été conduite entre nous écrous. Pour résoudre le il le http (mon amf) en premier dans la valeur par défaut-canaux tag puis https (ma-secure-amf)
OriginalL'auteur Java Bug
Si les destinations qui utilisent les protocoles http et https sont différents de destination, vous pouvez définir les voies avec commande à utiliser pour cette destination.Par exemple mySecureDestination et madestination sont deux destinations différentes. Pour mySecureDestination :
et pour les non sécurisé canal http
OriginalL'auteur maniacneron