2011-07-01 9 views
5

que corrió este archivo mula 3 esperando que cuando hojeo a http://localhost:9000, que serán redireccionados a http://localhost/path (source - detrás de una pantalla de login):¿Cómo construir un proxy web simple en Mule 3?

<?xml version="1.0" encoding="UTF-8"?> 
<mule xmlns="http://www.mulesoft.org/schema/mule/core" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:pattern="http://www.mulesoft.org/schema/mule/pattern" 
     xsi:schemaLocation=" 
      http://www.mulesoft.org/schema/mule/pattern http://www.mulesoft.org/schema/mule/pattern/3.1/mule-pattern.xsd 
      http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/3.1/mule.xsd"> 

    <pattern:web-service-proxy 
     name="WSProxyService" 
     inboundAddress="http://localhost:9000" 
     outboundAddress="http://localhost/sugarcrm"/> 

</mule> 

En su lugar, me sale este mensaje poco amistoso desde el navegador web:

‹mO=OÃ0Ýó+ŽL0KÂÈX‚&ˆJ-DÂŒ×øÀ•ì8rÜJý÷8)bb9éî}Ü{â¢y[©Ï®…µÝ@÷ñ´Y¯ ¿F\·ê±QÍ©‹±}Íe&LtV äÓ÷Ѳ¼)+Øú#kè88xˆö$ðf²Øy}šõ•ü‡›®™¥2Ú÷—Î`h·P üõ›Ç{Dë{²ÆO§Ã7…>8Ì¥áÀIÇùOHƒ´ 

Respuesta

6

El patrón de proxy del servicio web está diseñado para funcionar con servicios web de estilo SOAP. Apuntar a su navegador no le hará ningún bien.

Por proxy HTTP pura o bien:

  • utilizar el nuevo patrón: http-proxy viene en Mule 3.2 y ya se puede utilizar en la instantánea construye (examples),
  • utilizar un patrón: puente con HTTP y fuera de los puntos finales (examples).

La primera es una opción mucho mejor, si no es aversión a la instantánea, ya que tiene soporte extendido para la semántica de las solicitudes HTTP y un próximo módulo de caché.

+0

¿Es suficiente que agregue 'wsdlLocation =" http: // localhost/path? Wsdl "' para habilitar el servicio web de estilo SOAP dentro del elemento 'pattern'? – Tshepang

+3

De forma predeterminada, el patrón del proxy del servicio web obtiene el WSDL de outboundAddress + "? Wsdl", por lo que debe especificar wsdlLocation solo si el WSDL no está en la ubicación predeterminada. –

1

Tuve un problema similar, aunque utilicé soapUI para realizar la prueba. La solución luego de perderse algunos días es simple, configure soapUI para que no use/no permita la compresión. Lo que ves es en realidad una respuesta comprimida que el servidor no marcó como comprimido.

Cuestiones relacionadas