2009-07-01 2 views
0

J'ai un swf qui, pour une raison quelconque, a quatre RemoteObjects pointant vers le même ChannelId, mais ils indiquent que ce canal est à deux endroits différents. Dans quatre des cinq RemoteObjects, tout se comporte comme prévu, mais dans le quatrième (WidgetService), la version sur dev est en train de passer de dev.context.root à loc.context.root. Pour rendre les choses plus confuses, il le fait seulement sur le serveur de dev (QA et la production sont bien, tout comme les builds locaux).Emplacement de canal incohérent RemoteObject

Les informations pertinentes à partir des fichiers de configuration suivante:

 
    #This is from build.properties, which is used by Ant 
    #to build the swf on the server 
    flex.sdk.dir   = /path/to/sdk/flex_sdk_3.2.0.3958 
    flex.sdk.bin.dir  = ${flex.sdk.dir}/bin 
    flex.sdk.framework.dir = ${flex.sdk.dir}/frameworks 
    flex.sdk.libs.dir  = ${flex.sdk.framework.dir}/libs 
    flex.sdk.locale.dir = ${flex.sdk.framework.dir}/locale/{locale} 
    flex.sdk.locale  = en_US 

    loc.context.root  = /somename-1.0.4.0000 
    dev.context.root  = /dev-somename 
    qa.context.root  = /somename 
    prod.context.root  =/
    #this value is changed based on the build. 
    context.root   = ${dev.context.root} 
<!-- All of the RemoteObjects are directed here --> 
<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"/> 
</channel-definition> 

<!-- A list of the services --> 
<destination id="UserService"> 
    <properties> 
     <factory>spring</factory> 
     <source>userService</source> 
    </properties> 
    <channels> 
     <channel ref="my-amf"></channel> 
    </channels> 
</destination>  

<destination id="SystemService"> 
    <properties> 
     <factory>spring</factory> 
     <source>systemService</source> 
    </properties> 
    <channels> 
     <channel ref="my-amf"></channel> 
    </channels> 
</destination>  

<destination id="SessionService"> 
    <properties> 
     <factory>spring</factory> 
     <source>sessionService</source> 
    </properties> 
    <channels> 
     <channel ref="my-amf"></channel> 
    </channels> 
</destination>  

<destination id="VistorService"> 
    <properties> 
     <factory>spring</factory> 
     <source>visitorService</source> 
    </properties> 
    <channels> 
     <channel ref="my-amf"></channel> 
    </channels> 
</destination>  

<destination id="WidgetService"> 
    <properties> 
     <factory>spring</factory> 
     <source>widgetService</source> 
    </properties> 
    <channels> 
     <channel ref="my-amf"></channel> 
    </channels> 
</destination> 

Répondre

0

Il se trouve qu'un autre développeur a construit un swf qui a été chargé à l'exécution en utilisant la configuration locale du projet au lieu de la configuration du serveur.