Fw: StreamingAMFChannel

View: New views
7 Messages — Rating Filter:   Alert me  

Fw: StreamingAMFChannel

by olaf.schumann :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


Hi all,

i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?

Furthermore I try it by mayself using the following config at the server:

# services-config.xml

        <services>
                <service-includefile-path="remoting-config.xml"/>
                <service-includefile-path="messaging-config.xml"/>
        </services>
        <channels>
                <channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                        <endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
                </channel-definition>
                <channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                        <endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
                </channel-definition>
        </channels>

#messaging-config.xml

        <adapters>
                <adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
        </adapters>

        <destinationid="mystreaming">
                <adapterref="messagingAdapter"/>
                <properties>
                        <source>*</source>
                        <network>
                                <session-timeout>0</session-timeout>
                        </network>
                </properties>
                <channels>
                        <channelref="streaming"/>
                </channels>
        </destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe (consumer.subscribe()) in a init() method called on 'creationComplete'

        <mx:ChannelSetid="cs">
                <mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
        </mx:ChannelSet>

        <mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:
'null' channel endpoint set to http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'

Can anybody help me. Thanks

Olaf Schumann




InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516

_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com

Re: Fw: StreamingAMFChannel

by Support-179 :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


Hi Olaf,
 
The SVN version supports Streaming AMF channels.
 
1) The first important setting to enable FluorineFx to work with streaming channels is the asynchronous mode (web.config)
 

<configSections>

<sectionGroup name="fluorinefx">

<section name="settings" type="FluorineFx.Configuration.XmlConfigurator, FluorineFx"/>

</sectionGroup>

</configSections>

<fluorinefx>

<settings>

<runtime asyncHandler="true"/>

</settings>

</fluorinefx>

This way FluorineFx will use the ASP.NET asynchronous processing model which is mandatory for the streaming channel implementation.
If this is not enabled FluorineFx will trace in the fluorine.log file an error with the following message "The requested operation is not supported in synchronous mode"
Additionally ASP.NET session state must be enabled and cookieless session case is not supported.
 
2) Example channel definition in services.config (and supported settings):
 

<channel-definition id="my-streaming-amf" class="mx.messaging.channels.StreamingAMFChannel">

<endpoint uri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx" class="flex.messaging.endpoints.StreamingAMFEndpoint"/>

<properties>

<idle-timeout-minutes>0</idle-timeout-minutes>

<max-streaming-clients>10</max-streaming-clients>

<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>

<user-agent-settings>

<user-agent match-on="IE" kickstart-bytes="2048" max-streaming-connections-per-session="3" />

<user-agent match-on="Firefox" kickstart-bytes="2048" max-streaming-connections-per-session="3" />

</user-agent-settings>

</properties>

</channel-definition>

 
Please note that the endpoint url is pointing to an aspx file. Just add another empty aspx file similarly to the "default" Gateway.aspx (do not use the same aspx page for 2 different endpoint URLs)
(In your case http://localhost:4058/Formulare/streamingamf  would never get processed by the asp.net runtime because it is not a request type that asp.net would handle)
 
Zoli


From: fluorine-bounces@... [mailto:fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent: Tuesday, November 10, 2009 4:55 PM
To: fluorine@...
Subject: [Fluorine] Fw: StreamingAMFChannel


Hi all,

i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?

Furthermore I try it by mayself using the following config at the server:

# services-config.xml

        <services>
                <service-includefile-path="remoting-config.xml"/>
                <service-includefile-path="messaging-config.xml"/>
        </services>
        <channels>
                <channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                        <endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
                </channel-definition>
                <channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                        <endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
                </channel-definition>
        </channels>

#messaging-config.xml

        <adapters>
                <adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
        </adapters>

        <destinationid="mystreaming">
                <adapterref="messagingAdapter"/>
                <properties>
                        <source>*</source>
                        <network>
                                <session-timeout>0</session-timeout>
                        </network>
                </properties>
                <channels>
                        <channelref="streaming"/>
                </channels>
        </destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe (consumer.subscribe()) in a init() method called on 'creationComplete'

        <mx:ChannelSetid="cs">
                <mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
        </mx:ChannelSet>

        <mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:
'null' channel endpoint set to http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'

Can anybody help me. Thanks

Olaf Schumann




InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, J�rg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestra�e 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516

_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com

Re: Fw: StreamingAMFChannel

by olaf.schumann :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


Hi all,

first of all i would like to thank Zoli for the gread support. I change the channel definitions as seen below. The logging of the Flex Client told me that the consumer can now connect to the channel.

--> FlashTracer Logging:
'consumer' consumer subscribe.
'null' channel endpoint set to http://localhost:4058/Formulare/Gateway.aspx
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message 'BA366B63-2501-2F0E-526E-C90DBFDB74FB'
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message '210DD97B-27F2-55CF-3047-C90DBFDB3037'
'null' channel endpoint set to http://localhost:4058/Formulare/StreamingGateway.aspx
'null' pinging endpoint.
'null' channel is connected.
'null' channel sending message: (mx.messaging.messages::CommandMessage)
        body=(Object)#0
        clientId=(null)
        correlationId=""
        destination="streaming"
        headers=(Object)#0
        messageId="AF38D2E8-1367-EA72-E895-C90DC029602B"
        operation="subscribe"
        timeToLive=0
        timestamp=0
'consumer' consumer connected.

Client code:
        ...
        protectedfunctionapplication_creationCompleteHandler(event:FlexEvent):void
        {
                consumer.subscribe();                        
        }

        privatefunctionmessageHandler(message:IMessage):void
        {
                Log.getLogger("mx.foo.Bar").debug("messageHandler");
        }        

        ]]>
        </mx:Script>

        <mx:ChannelSetid="cs">
                <mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/StreamingGateway.aspx" />
        </mx:ChannelSet>

        <mx:Consumerid="consumer" channelSet="{cs}" destination="streaming" message="messageHandler(event.message)"/>

In the backend I try to send a mesage to the consumer using the following code:

        MessageBrokermsgBroker = MessageBroker.GetMessageBroker(null);
        DateTimenow = DateTime.Now;

        AsyncMessagemsg = new AsyncMessage();
        msg.destination = "streaming";
        msg.clientId = Guid.NewGuid().ToString("D");
        msg.messageId = Guid.NewGuid().ToString("D");
        msg.timestamp = Environment.TickCount;
        Hashtablebody = new Hashtable();
        body.Add("userId", "homer");
        body.Add("msg", now.ToString());
        msg.body = body;
        msgBroker.RouteMessage(msg);

But the message is not consumed by the consumer. The  fluorine.log file told me that the StreamingAMFEndpoint has been started but the destination 'streaming' is not accessible:

-->Fluorine Logging:
2009-11-06 11:08:42,784 [ThreadPoolEx Thread #0] DEBUG FluorineFx.Messaging.Endpoints.StreamingAmfEndpoint - Start streaming for endpoint with id streaming and client with id 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
    operation = subscribe
    selector =
    clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
    correlationId =
    destination = streaming
    messageId = 7366C9FC-C492-6E92-8845-C8F7A3306835
    timestamp = 0
    timeToLive = 0
    body = {}
    hdr(DSEndpoint) = null
    hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] ERROR FluorineFx.Messaging.MessageBroker - The requested destination streaming is not accessible
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
    clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
    correlationId = 7366C9FC-C492-6E92-8845-C8F7A3306835
    destination = streaming
    messageId = fa0b065e-73d9-4ada-b852-ad4d9f33f335
    timestamp = 92638609
    timeToLive = 0
    body = null
    hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
    code =  Server.Processing
    message =  The requested destination streaming is not accessible
    details =  
    rootCause =  null
    body =  null
    extendedData =  {}

-->Web.config:
        ...
        </configSections>
        <fluorinefx>
                <settings>
                        <runtimeasyncHandler="true"/>
                </settings>
        </fluorinefx>
        <system.web>
                <sessionStatecookieless="AutoDetect"/>
                <httpModules>
                        <addname="FluorineGateway"type="FluorineFx.FluorineGateway, FluorineFx"/>
                        <addname="ScriptModule"type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                </httpModules>
        ...

Does anybody know what I'am doing wrong.





From:"Support" <support@...>
To:"'Fluorine Mailing List'" <fluorine@...>
Date:10.11.2009 18:15
Subject:Re: [Fluorine] Fw: StreamingAMFChannel
Sent by:fluorine-bounces@...





Hi Olaf,
 
The SVN version supports Streaming AMF channels.
 
1) The first important setting to enable FluorineFx to work with streaming channels is the asynchronous mode (web.config)
 

<configSections>

<sectionGroupname="fluorinefx">

<sectionname="settings"type="FluorineFx.Configuration.XmlConfigurator, FluorineFx"/>

</sectionGroup>

</configSections>

<fluorinefx>

<settings>

<runtimeasyncHandler="true"/>

</settings>

</fluorinefx>

This way FluorineFx will use the ASP.NET asynchronous processing model which is mandatory for the streaming channel implementation.
If this is not enabled FluorineFx will trace in the fluorine.log file an error with the following message "The requested operation is not supported in synchronous mode"
Additionally ASP.NET session state must be enabled and cookieless session case is not supported.
 
2) Example channel definition in services.config (and supported settings):
 

<channel-definitionid="my-streaming-amf"class="mx.messaging.channels.StreamingAMFChannel">

<endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>

<properties>

<idle-timeout-minutes>0</idle-timeout-minutes>

<max-streaming-clients>10</max-streaming-clients>

<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>

<user-agent-settings>

<user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

<user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

</user-agent-settings>

</properties>

</channel-definition>

 
Please note that the endpoint url is pointing to an aspx file. Just add another empty aspx file similarly to the "default" Gateway.aspx (do not use the same aspx page for 2 different endpoint URLs)
(In your case http://localhost:4058/Formulare/streamingamf would never get processed by the asp.net runtime because it is not a request type that asp.net would handle)
 
Zoli


From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Tuesday, November 10, 2009 4:55 PM
To:
fluorine@...
Subject:
[Fluorine] Fw: StreamingAMFChannel



Hi all,


i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?


Furthermore I try it by mayself using the following config at the server:


# services-config.xml


       <
services>
               <
service-includefile-path="remoting-config.xml"/>
               <
service-includefile-path="messaging-config.xml"/>
       </
services>
       <
channels>
               <
channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                       <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
               </
channel-definition>
               <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                       <
endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
               </
channel-definition>
       </
channels>

#messaging-config.xml


       <
adapters>
               <
adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
       </
adapters>

       <
destinationid="mystreaming">
               <
adapterref="messagingAdapter"/>
               <
properties>
                       <
source>*</source>
                       <
network>
                               <
session-timeout>0</session-timeout>
                       </
network>
               </
properties>
               <
channels>
                       <
channelref="streaming"/>
               </
channels>
       </
destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe
(consumer.subscribe()) in a init() method called on 'creationComplete'

       
<mx:ChannelSetid="cs">
               
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
       
</mx:ChannelSet>

       
<mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:

'null' channel endpoint set to
http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'


Can anybody help me. Thanks

Olaf Schumann




InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, J�rg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestra�e 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com



InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516

_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com

Re: Fw: StreamingAMFChannel

by olaf.schumann :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


Hi all again :-),

I forgott to show me my service-config.xml & remoting-config.xml

my service-config.xml is:
<?xmlversion="1.0"encoding="utf-8"?>
<services-config>
        <services>
                <service-includefile-path="remoting-config.xml"/>
                <service-includefile-path="messaging-config.xml"/>
        </services>

        <channels>
                <channel-definitionid="formFiller"class="mx.messaging.channels.AMFChannel">
                        <endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
                </channel-definition>
                <channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                        <endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
                        <properties>
                                <idle-timeout-minutes>0</idle-timeout-minutes>
                                <max-streaming-clients>10</max-streaming-clients>
                                <server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
                                <user-agent-settings>
                                        <user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                                        <user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                                </user-agent-settings>
                        </properties>
                </channel-definition>
        </channels>
</services-config>

my remoting-config.xml is:
<?xmlversion="1.0"encoding="UTF-8"?>
<serviceid="remoting-service"class="flex.messaging.services.RemotingService"messageTypes="flex.messaging.messages.RemotingMessage">

        <!--DO NOT CHANGE <adapters> SECTION-->
        <adapters>
                <adapter-definitionid="dotnet"class="FluorineFx.Remoting.RemotingAdapter"default="true"/>
        </adapters>

        <destinationid="formFiller">
                <properties>
                        <source>Icw.Aragon.ServerModule.HausarztCore.Formulare.Client.FormApplicationService</source>
                </properties>
        </destination>
</service>





From:olaf.schumann@...
To:Fluorine Mailing List <fluorine@...>
Date:11.11.2009 12:05
Subject:Re: [Fluorine] Fw: StreamingAMFChannel
Sent by:fluorine-bounces@...






Hi all,


first of all i would like to thank Zoli for the gread support. I change the channel definitions as seen below. The logging of the Flex Client told me that the consumer can now connect to the channel.


--> FlashTracer Logging:

'consumer' consumer subscribe.
'null' channel endpoint set to
http://localhost:4058/Formulare/Gateway.aspx
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message 'BA366B63-2501-2F0E-526E-C90DBFDB74FB'
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message '210DD97B-27F2-55CF-3047-C90DBFDB3037'
'null' channel endpoint set to
http://localhost:4058/Formulare/StreamingGateway.aspx
'null' pinging endpoint.
'null' channel is connected.
'null' channel sending message: (mx.messaging.messages::CommandMessage)
       body=(Object)#0
       clientId=(null)
       correlationId=""
       destination="streaming"
       headers=(Object)#0
       messageId="AF38D2E8-1367-EA72-E895-C90DC029602B"
       operation="subscribe"
       timeToLive=0
       timestamp=0
'consumer' consumer connected.


Client code:

       ...

       
protectedfunctionapplication_creationCompleteHandler(event:FlexEvent):void
       {
               consumer.subscribe();                        
       }


       
privatefunctionmessageHandler(message:IMessage):void
       {
               Log.getLogger(
"mx.foo.Bar").debug("messageHandler");
       }        


       ]]>
       
</mx:Script>

       
<mx:ChannelSetid="cs">
               
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/StreamingGateway.aspx" />
       
</mx:ChannelSet>

       
<mx:Consumerid="consumer" channelSet="{cs}" destination="streaming" message="messageHandler(event.message)"/>

In the backend I try to send a mesage to the consumer using the following code:


       
MessageBrokermsgBroker = MessageBroker.GetMessageBroker(null);
       
DateTimenow = DateTime.Now;

       
AsyncMessagemsg = new AsyncMessage();
       msg.destination =
"streaming";
       msg.clientId =
Guid.NewGuid().ToString("D");
       msg.messageId =
Guid.NewGuid().ToString("D");
       msg.timestamp =
Environment.TickCount;
       
Hashtablebody = new Hashtable();
       body.Add(
"userId", "homer");
       body.Add(
"msg", now.ToString());
       msg.body = body;
       msgBroker.RouteMessage(msg);


But the message is not consumed by the consumer. The  fluorine.log file told me that the StreamingAMFEndpoint has been started but the destination 'streaming' is not accessible:


-->Fluorine Logging:

2009-11-06 11:08:42,784 [ThreadPoolEx Thread #0] DEBUG FluorineFx.Messaging.Endpoints.StreamingAmfEndpoint - Start streaming for endpoint with id streaming and client with id 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
   operation = subscribe
   selector =
   clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
   correlationId =
   destination = streaming
   messageId = 7366C9FC-C492-6E92-8845-C8F7A3306835
   timestamp = 0
   timeToLive = 0
   body = {}
   hdr(DSEndpoint) = null
   hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] ERROR FluorineFx.Messaging.MessageBroker -
The requested destination streaming is not accessible
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
   clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
   correlationId = 7366C9FC-C492-6E92-8845-C8F7A3306835
   destination = streaming
   messageId = fa0b065e-73d9-4ada-b852-ad4d9f33f335
   timestamp = 92638609
   timeToLive = 0
   body = null
   hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
   code =  Server.Processing
   message =
 The requested destination streaming is not accessible
   details =  
   rootCause =  null
   body =  null
   extendedData =  {}


-->Web.config:
       ...

       </
configSections>
       <
fluorinefx>
               <
settings>
                       <
runtimeasyncHandler="true"/>
               </
settings>
       </
fluorinefx>
       <
system.web>
               <
sessionStatecookieless="AutoDetect"/>
               <
httpModules>
                       <
addname="FluorineGateway"type="FluorineFx.FluorineGateway, FluorineFx"/>
                       <
addname="ScriptModule"type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
               </
httpModules>
       ...


Does anybody know what I'am doing wrong.





From:"Support" <support@...>
To:"'Fluorine Mailing List'" <fluorine@...>
Date:10.11.2009 18:15
Subject:Re: [Fluorine] Fw: StreamingAMFChannel
Sent by:fluorine-bounces@...






Hi Olaf,


The SVN version supports Streaming AMF channels.


1) The first important setting to enable FluorineFx to work with streaming channels is the asynchronous mode (web.config)

<configSections>

<sectionGroupname="fluorinefx">

<sectionname="settings"type="FluorineFx.Configuration.XmlConfigurator, FluorineFx"/>

</sectionGroup>

</configSections>

<fluorinefx>

<settings>

<runtimeasyncHandler="true"/>

</settings>

</fluorinefx>

This way FluorineFx will use the ASP.NET asynchronous processing model which is mandatory for the streaming channel implementation.
If this is not enabled FluorineFx will trace in the fluorine.log file an error with the following message "The requested operation is not supported in synchronous mode"
Additionally ASP.NET session state must be enabled and cookieless session case is not supported.


2) Example channel definition in services.config (and supported settings):

<channel-definitionid="my-streaming-amf"class="mx.messaging.channels.StreamingAMFChannel">

<endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>

<properties>

<idle-timeout-minutes>0</idle-timeout-minutes>

<max-streaming-clients>10</max-streaming-clients>

<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>

<user-agent-settings>

<user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

<user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

</user-agent-settings>

</properties>

</channel-definition>

 
Please note that the endpoint url is pointing to an aspx file. Just add another empty aspx file similarly to the "default" Gateway.aspx (do not use the same aspx page for 2 different endpoint URLs)
(In your case
http://localhost:4058/Formulare/streamingamfwould never get processed by the asp.net runtime because it is not a request type that asp.net would handle)

Zoli



From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Tuesday, November 10, 2009 4:55 PM
To:
fluorine@...
Subject:
[Fluorine] Fw: StreamingAMFChannel



Hi all,

i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?

Furthermore I try it by mayself using the following config at the server:

# services-config.xml


      <
services>
              <
service-includefile-path="remoting-config.xml"/>
              <
service-includefile-path="messaging-config.xml"/>
      </
services>
      <
channels>
              <
channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                      <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
              </
channel-definition>
              <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                      <
endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
              </
channel-definition>
      </
channels>

#messaging-config.xml


      <
adapters>
              <
adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
      </
adapters>

      <
destinationid="mystreaming">
              <
adapterref="messagingAdapter"/>
              <
properties>
                      <
source>*</source>
                      <
network>
                              <
session-timeout>0</session-timeout>
                      </
network>
              </
properties>
              <
channels>
                      <
channelref="streaming"/>
              </
channels>
      </
destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe
(consumer.subscribe()) in a init() method called on 'creationComplete'

     
<mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
     
</mx:ChannelSet>

     
<mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:

'null' channel endpoint set to
http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'


Can anybody help me. Thanks

Olaf Schumann




InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, J�rg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestra�e 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...

http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com



InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516

_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


Re: Fw: StreamingAMFChannel

by Support-179 :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


Hi,
 
In the messaging config you should have a destination with id = "streaming" defined (or based on your previous emails you should connect the consumer to & push the data to the "mystreaming" destination).
Consumers and producers connect to a specific destination identified with an id and not to a channel identifier.


From: fluorine-bounces@... [mailto:fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent: Wednesday, November 11, 2009 1:33 PM
To: Fluorine Mailing List
Subject: Re: [Fluorine] Fw: StreamingAMFChannel


Hi all again :-),

I forgott to show me my service-config.xml & remoting-config.xml

my service-config.xml is:
<?xmlversion="1.0"encoding="utf-8"?>
<services-config>
        <services>
                <service-includefile-path="remoting-config.xml"/>
                <service-includefile-path="messaging-config.xml"/>
        </services>

        <channels>
                <channel-definitionid="formFiller"class="mx.messaging.channels.AMFChannel">
                        <endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
                </channel-definition>
                <channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                        <endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
                        <properties>
                                <idle-timeout-minutes>0</idle-timeout-minutes>
                                <max-streaming-clients>10</max-streaming-clients>
                                <server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
                                <user-agent-settings>
                                        <user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                                        <user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                                </user-agent-settings>
                        </properties>
                </channel-definition>
        </channels>
</services-config>

my remoting-config.xml is:
<?xmlversion="1.0"encoding="UTF-8"?>
<serviceid="remoting-service"class="flex.messaging.services.RemotingService"messageTypes="flex.messaging.messages.RemotingMessage">

        <!--DO NOT CHANGE <adapters> SECTION-->
        <adapters>
                <adapter-definitionid="dotnet"class="FluorineFx.Remoting.RemotingAdapter"default="true"/>
        </adapters>

        <destinationid="formFiller">
                <properties>
                        <source>Icw.Aragon.ServerModule.HausarztCore.Formulare.Client.FormApplicationService</source>
                </properties>
        </destination>
</service>





From: olaf.schumann@...
To: Fluorine Mailing List <fluorine@...>
Date: 11.11.2009 12:05
Subject: Re: [Fluorine] Fw: StreamingAMFChannel
Sent by: fluorine-bounces@...






Hi all,


first of all i would like to thank Zoli for the gread support. I change the channel definitions as seen below. The logging of the Flex Client told me that the consumer can now connect to the channel.


--> FlashTracer Logging:

'consumer' consumer subscribe.
'null' channel endpoint set to
http://localhost:4058/Formulare/Gateway.aspx
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message 'BA366B63-2501-2F0E-526E-C90DBFDB74FB'
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message '210DD97B-27F2-55CF-3047-C90DBFDB3037'
'null' channel endpoint set to
http://localhost:4058/Formulare/StreamingGateway.aspx
'null' pinging endpoint.
'null' channel is connected.
'null' channel sending message: (mx.messaging.messages::CommandMessage)
       body=(Object)#0
       clientId=(null)
       correlationId=""
       destination="streaming"
       headers=(Object)#0
       messageId="AF38D2E8-1367-EA72-E895-C90DC029602B"
       operation="subscribe"
       timeToLive=0
       timestamp=0
'consumer' consumer connected.


Client code:

       ...

       
protectedfunctionapplication_creationCompleteHandler(event:FlexEvent):void
       {
               consumer.subscribe();                        
       }


       
privatefunctionmessageHandler(message:IMessage):void
       {
               Log.getLogger(
"mx.foo.Bar").debug("messageHandler");
       }        


       ]]>
       
</mx:Script>

       
<mx:ChannelSetid="cs">
               
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/StreamingGateway.aspx" />
       
</mx:ChannelSet>

       
<mx:Consumerid="consumer" channelSet="{cs}" destination="streaming" message="messageHandler(event.message)"/>

In the backend I try to send a mesage to the consumer using the following code:


       
MessageBrokermsgBroker = MessageBroker.GetMessageBroker(null);
       
DateTimenow = DateTime.Now;

       
AsyncMessagemsg = new AsyncMessage();
       msg.destination =
"streaming";
       msg.clientId =
Guid.NewGuid().ToString("D");
       msg.messageId =
Guid.NewGuid().ToString("D");
       msg.timestamp =
Environment.TickCount;
       
Hashtablebody = new Hashtable();
       body.Add(
"userId", "homer");
       body.Add(
"msg", now.ToString());
       msg.body = body;
       msgBroker.RouteMessage(msg);


But the message is not consumed by the consumer. The  fluorine.log file told me that the StreamingAMFEndpoint has been started but the destination 'streaming' is not accessible:


-->Fluorine Logging:

2009-11-06 11:08:42,784 [ThreadPoolEx Thread #0] DEBUG FluorineFx.Messaging.Endpoints.StreamingAmfEndpoint - Start streaming for endpoint with id streaming and client with id 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
   operation = subscribe
   selector =
   clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
   correlationId =
   destination = streaming
   messageId = 7366C9FC-C492-6E92-8845-C8F7A3306835
   timestamp = 0
   timeToLive = 0
   body = {}
   hdr(DSEndpoint) = null
   hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] ERROR FluorineFx.Messaging.MessageBroker -
The requested destination streaming is not accessible
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
   clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
   correlationId = 7366C9FC-C492-6E92-8845-C8F7A3306835
   destination = streaming
   messageId = fa0b065e-73d9-4ada-b852-ad4d9f33f335
   timestamp = 92638609
   timeToLive = 0
   body = null
   hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
   code =  Server.Processing
   message =
 The requested destination streaming is not accessible
   details =  
   rootCause =  null
   body =  null
   extendedData =  {}


-->Web.config:
       ...

       </
configSections>
       <
fluorinefx>
               <
settings>
                       <
runtimeasyncHandler="true"/>
               </
settings>
       </
fluorinefx>
       <
system.web>
               <
sessionStatecookieless="AutoDetect"/>
               <
httpModules>
                       <
addname="FluorineGateway"type="FluorineFx.FluorineGateway, FluorineFx"/>
                       <
addname="ScriptModule"type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
               </
httpModules>
       ...


Does anybody know what I'am doing wrong.





From: "Support" <support@...>
To: "'Fluorine Mailing List'" <fluorine@...>
Date: 10.11.2009 18:15
Subject: Re: [Fluorine] Fw: StreamingAMFChannel
Sent by: fluorine-bounces@...






Hi Olaf,


The SVN version supports Streaming AMF channels.


1) The first important setting to enable FluorineFx to work with streaming channels is the asynchronous mode (web.config)

<configSections>

<sectionGroupname="fluorinefx">

<sectionname="settings"type="FluorineFx.Configuration.XmlConfigurator, FluorineFx"/>

</sectionGroup>

</configSections>

<fluorinefx>

<settings>

<runtimeasyncHandler="true"/>

</settings>

</fluorinefx>

This way FluorineFx will use the ASP.NET asynchronous processing model which is mandatory for the streaming channel implementation.
If this is not enabled FluorineFx will trace in the fluorine.log file an error with the following message "The requested operation is not supported in synchronous mode"
Additionally ASP.NET session state must be enabled and cookieless session case is not supported.


2) Example channel definition in services.config (and supported settings):

<channel-definitionid="my-streaming-amf"class="mx.messaging.channels.StreamingAMFChannel">

<endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>

<properties>

<idle-timeout-minutes>0</idle-timeout-minutes>

<max-streaming-clients>10</max-streaming-clients>

<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>

<user-agent-settings>

<user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

<user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

</user-agent-settings>

</properties>

</channel-definition>


Please note that the endpoint url is pointing to an aspx file. Just add another empty aspx file similarly to the "default" Gateway.aspx (do not use the same aspx page for 2 different endpoint URLs)
(In your case
http://localhost:4058/Formulare/streamingamfwould never get processed by the asp.net runtime because it is not a request type that asp.net would handle)

Zoli



From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Tuesday, November 10, 2009 4:55 PM
To:
fluorine@...
Subject:
[Fluorine] Fw: StreamingAMFChannel



Hi all,

i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?

Furthermore I try it by mayself using the following config at the server:

# services-config.xml


      <
services>
              <
service-includefile-path="remoting-config.xml"/>
              <
service-includefile-path="messaging-config.xml"/>
      </
services>
      <
channels>
              <
channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                      <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
              </
channel-definition>
              <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                      <
endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
              </
channel-definition>
      </
channels>

#messaging-config.xml


      <
adapters>
              <
adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
      </
adapters>

      <
destinationid="mystreaming">
              <
adapterref="messagingAdapter"/>
              <
properties>
                      <
source>*</source>
                      <
network>
                              <
session-timeout>0</session-timeout>
                      </
network>
              </
properties>
              <
channels>
                      <
channelref="streaming"/>
              </
channels>
      </
destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe
(consumer.subscribe()) in a init() method called on 'creationComplete'

     
<mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
     
</mx:ChannelSet>

     
<mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:

'null' channel endpoint set to
http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'


Can anybody help me. Thanks

Olaf Schumann




InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, J�rg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestra�e 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...

http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com



InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516


_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com

Re: Fw: StreamingAMFChannel

by olaf.schumann :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


Hi again,

my messaging-config.xml is now:

<?xmlversion="1.0"encoding="UTF-8"?>
<serviceid="message-service"class="flex.messaging.services.MessageService"messageTypes="flex.messaging.messages.AsyncMessage">

        <!--DO NOT CHANGE <adapters> SECTION-->
        <adapters>
                <adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
        </adapters>

        <destinationid="streaming">
                <adapterref="messagingAdapter"/>
                <channels>
                        <channelref="streaming"/>
                </channels>
        </destination>
</service>

With this configuration I still get the message that the ' Endpoint was not specified'. Must have the destination id different than the channel-definitionid="streaming"?

2009-11-06 14:04:43,601 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
    operation = subscribe
    selector =
    clientId = b998aee1-87ef-47c7-b11d-5c0b74c3f326
    correlationId =
    destination = streaming
    messageId = EE7428F7-50BC-7C15-B3B9-C998C823C3D1
    timestamp = 0
    timeToLive = 0
    body = {}
    hdr(DSEndpoint) = null
    hdr(DSId) = 26f474ce-1811-4dff-919b-3fead62176fb
2009-11-06 14:04:43,601 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.Services.MessageService - MessageService servicing subscribe command for destination streaming, new message client b998aee1-87ef-47c7-b11d-5c0b74c3f326
2009-11-06 14:04:43,617 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Endpoint was not specified
2009-11-06 14:04:43,617 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
    clientId = b998aee1-87ef-47c7-b11d-5c0b74c3f326
    correlationId = EE7428F7-50BC-7C15-B3B9-C998C823C3D1
    destination = streaming
    messageId = dd344dc7-3887-4725-bfb2-2aaa06c59cf2
    timestamp = 103198593
    timeToLive = 0
    body = null
    hdr(DSId) = 26f474ce-1811-4dff-919b-3fead62176fb
    code =  Server.Processing.MissingEndpoint
    message =  Endpoint was not specified
    details =  
    rootCause =  null
    body =  null
    extendedData =  {}

Please help me again.



From:"Support" <support@...>
To:"'Fluorine Mailing List'" <fluorine@...>
Date:11.11.2009 13:31
Subject:Re: [Fluorine] Fw: StreamingAMFChannel
Sent by:fluorine-bounces@...





Hi,
 
In the messaging config you should have a destination with id = "streaming" defined (or based on your previous emails you should connect the consumer to & push the data to the "mystreaming" destination).
Consumers and producers connect to a specific destination identified with an id and not to a channel identifier.


From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Wednesday, November 11, 2009 1:33 PM
To:
Fluorine Mailing List
Subject:
Re: [Fluorine] Fw: StreamingAMFChannel



Hi all again :-),


I forgott to show me my service-config.xml & remoting-config.xml


my service-config.xml is:

<?
xmlversion="1.0"encoding="utf-8"?>
<
services-config>
       <
services>
               <
service-includefile-path="remoting-config.xml"/>
               <
service-includefile-path="messaging-config.xml"/>
       </
services>

       <
channels>
               <
channel-definitionid="formFiller"class="mx.messaging.channels.AMFChannel">
                       <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
               </
channel-definition>
               <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                       <
endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
                       <
properties>
                               <
idle-timeout-minutes>0</idle-timeout-minutes>
                               <
max-streaming-clients>10</max-streaming-clients>
                               <
server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
                               <
user-agent-settings>
                                       <
user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                                       <
user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                               </
user-agent-settings>
                       </
properties>
               </
channel-definition>
       </
channels>
</
services-config>

my remoting-config.xml is:

<?
xmlversion="1.0"encoding="UTF-8"?>
<
serviceid="remoting-service"class="flex.messaging.services.RemotingService"messageTypes="flex.messaging.messages.RemotingMessage">

       <!--
DO NOT CHANGE <adapters> SECTION-->
       <
adapters>
               <
adapter-definitionid="dotnet"class="FluorineFx.Remoting.RemotingAdapter"default="true"/>
       </
adapters>

       <
destinationid="formFiller">
               <
properties>
                       <
source>Icw.Aragon.ServerModule.HausarztCore.Formulare.Client.FormApplicationService</source>
               </
properties>
       </
destination>
</
service>




From:olaf.schumann@...
To:Fluorine Mailing List <fluorine@...>
Date:11.11.2009 12:05
Subject:Re: [Fluorine] Fw: StreamingAMFChannel
Sent by:fluorine-bounces@...







Hi all,

first of all i would like to thank Zoli for the gread support. I change the channel definitions as seen below. The logging of the Flex Client told me that the consumer can now connect to the channel.

--> FlashTracer Logging:

'consumer' consumer subscribe.
'null' channel endpoint set to
http://localhost:4058/Formulare/Gateway.aspx
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message 'BA366B63-2501-2F0E-526E-C90DBFDB74FB'
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message '210DD97B-27F2-55CF-3047-C90DBFDB3037'
'null' channel endpoint set to
http://localhost:4058/Formulare/StreamingGateway.aspx
'null' pinging endpoint.
'null' channel is connected.
'null' channel sending message: (mx.messaging.messages::CommandMessage)
      body=(Object)#0
      clientId=(null)
      correlationId=""
      destination="streaming"
      headers=(Object)#0
      messageId="AF38D2E8-1367-EA72-E895-C90DC029602B"
      operation="subscribe"
      timeToLive=0
      timestamp=0
'consumer' consumer connected.


Client code:

      ...

     
protectedfunctionapplication_creationCompleteHandler(event:FlexEvent):void
      {
              consumer.subscribe();                        
      }

     
privatefunctionmessageHandler(message:IMessage):void
      {
              Log.getLogger(
"mx.foo.Bar").debug("messageHandler");
      }        

      ]]>
     
</mx:Script>

     
<mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/StreamingGateway.aspx" />
     
</mx:ChannelSet>

     
<mx:Consumerid="consumer" channelSet="{cs}" destination="streaming" message="messageHandler(event.message)"/>

In the backend I try to send a mesage to the consumer using the following code:


     
MessageBrokermsgBroker = MessageBroker.GetMessageBroker(null);
     
DateTimenow = DateTime.Now;

     
AsyncMessagemsg = new AsyncMessage();
      msg.destination =
"streaming";
      msg.clientId =
Guid.NewGuid().ToString("D");
      msg.messageId =
Guid.NewGuid().ToString("D");
      msg.timestamp =
Environment.TickCount;
     
Hashtablebody = new Hashtable();
      body.Add(
"userId", "homer");
      body.Add(
"msg", now.ToString());
      msg.body = body;
      msgBroker.RouteMessage(msg);


But the message is not consumed by the consumer. The  fluorine.log file told me that the StreamingAMFEndpoint has been started but the destination 'streaming' is not accessible:

-->Fluorine Logging:

2009-11-06 11:08:42,784 [ThreadPoolEx Thread #0] DEBUG FluorineFx.Messaging.Endpoints.StreamingAmfEndpoint - Start streaming for endpoint with id streaming and client with id 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
  operation = subscribe
  selector =
  clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
  correlationId =
  destination = streaming
  messageId = 7366C9FC-C492-6E92-8845-C8F7A3306835
  timestamp = 0
  timeToLive = 0
  body = {}
  hdr(DSEndpoint) = null
  hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] ERROR FluorineFx.Messaging.MessageBroker -
The requested destination streaming is not accessible
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
  clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
  correlationId = 7366C9FC-C492-6E92-8845-C8F7A3306835
  destination = streaming
  messageId = fa0b065e-73d9-4ada-b852-ad4d9f33f335
  timestamp = 92638609
  timeToLive = 0
  body = null
  hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
  code =  Server.Processing
  message =
 The requested destination streaming is not accessible
  details =  
  rootCause =  null
  body =  null
  extendedData =  {}


-->Web.config:
      ...

      </
configSections>
      <
fluorinefx>
              <
settings>
                      <
runtimeasyncHandler="true"/>
              </
settings>
      </
fluorinefx>
      <
system.web>
              <
sessionStatecookieless="AutoDetect"/>
              <
httpModules>
                      <
addname="FluorineGateway"type="FluorineFx.FluorineGateway, FluorineFx"/>
                      <
addname="ScriptModule"type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
              </
httpModules>
      ...


Does anybody know what I'am doing wrong.




From:"Support" <support@...>
To:"'Fluorine Mailing List'" <fluorine@...>
Date:10.11.2009 18:15
Subject:Re: [Fluorine] Fw: StreamingAMFChannel
Sent by:fluorine-bounces@...







Hi Olaf,

The SVN version supports Streaming AMF channels.

1) The first important setting to enable FluorineFx to work with streaming channels is the asynchronous mode (web.config)

<configSections>

<sectionGroupname="fluorinefx">

<sectionname="settings"type="FluorineFx.Configuration.XmlConfigurator, FluorineFx"/>

</sectionGroup>

</configSections>

<fluorinefx>

<settings>

<runtimeasyncHandler="true"/>

</settings>

</fluorinefx>

This way FluorineFx will use the ASP.NET asynchronous processing model which is mandatory for the streaming channel implementation.
If this is not enabled FluorineFx will trace in the fluorine.log file an error with the following message "The requested operation is not supported in synchronous mode"
Additionally ASP.NET session state must be enabled and cookieless session case is not supported.

2) Example channel definition in services.config (and supported settings):

<channel-definitionid="my-streaming-amf"class="mx.messaging.channels.StreamingAMFChannel">

<endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>

<properties>

<idle-timeout-minutes>0</idle-timeout-minutes>

<max-streaming-clients>10</max-streaming-clients>

<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>

<user-agent-settings>

<user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

<user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

</user-agent-settings>

</properties>

</channel-definition>


Please note that the endpoint url is pointing to an aspx file. Just add another empty aspx file similarly to the "default" Gateway.aspx (do not use the same aspx page for 2 different endpoint URLs)
(In your case
http://localhost:4058/Formulare/streamingamfwould never get processed by the asp.net runtime because it is not a request type that asp.net would handle)

Zoli



From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Tuesday, November 10, 2009 4:55 PM
To:
fluorine@...
Subject:
[Fluorine] Fw: StreamingAMFChannel



Hi all,

i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?

Furthermore I try it by mayself using the following config at the server:

# services-config.xml


     <
services>
             <
service-includefile-path="remoting-config.xml"/>
             <
service-includefile-path="messaging-config.xml"/>
     </
services>
     <
channels>
             <
channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                     <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
             </
channel-definition>
             <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                     <
endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
             </
channel-definition>
     </
channels>

#messaging-config.xml


     <
adapters>
             <
adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
     </
adapters>

     <
destinationid="mystreaming">
             <
adapterref="messagingAdapter"/>
             <
properties>
                     <
source>*</source>
                     <
network>
                             <
session-timeout>0</session-timeout>
                     </
network>
             </
properties>
             <
channels>
                     <
channelref="streaming"/>
             </
channels>
     </
destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe
(consumer.subscribe()) in a init() method called on 'creationComplete'

     
<mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
     
</mx:ChannelSet>

     
<mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:

'null' channel endpoint set to
http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'


Can anybody help me. Thanks

Olaf Schumann





InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, J�rg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestra�e 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...

http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com



InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...

http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516

_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


Re: Fw: StreamingAMFChannel

by Support-179 :: Rate this Message:

Reply (Restricted by the Administrator) | Reply to Author | View Threaded | Show Only this Message


You are missing the endpoint id in your flex code
 
      <mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/StreamingGateway.aspx" />
     
</mx:ChannelSet>
 
If you do not set an id for the channel, the DSEndpoint header is not set (from Flex) and the gateway will not know how to route the message (that is what the error message means).
Or, you could just simply compile your Flex application with the existing service config file without redefining the channels in mxml
 


From: fluorine-bounces@... [mailto:fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent: Wednesday, November 11, 2009 3:17 PM
To: Fluorine Mailing List
Subject: Re: [Fluorine] Fw: StreamingAMFChannel


Hi again,

my messaging-config.xml is now:

<?xmlversion="1.0"encoding="UTF-8"?>
<serviceid="message-service"class="flex.messaging.services.MessageService"messageTypes="flex.messaging.messages.AsyncMessage">

        <!--DO NOT CHANGE <adapters> SECTION-->
        <adapters>
                <adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
        </adapters>

        <destinationid="streaming">
                <adapterref="messagingAdapter"/>
                <channels>
                        <channelref="streaming"/>
                </channels>
        </destination>
</service>

With this configuration I still get the message that the ' Endpoint was not specified'. Must have the destination id different than the channel-definitionid="streaming"?

2009-11-06 14:04:43,601 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
    operation = subscribe
    selector =
    clientId = b998aee1-87ef-47c7-b11d-5c0b74c3f326
    correlationId =
    destination = streaming
    messageId = EE7428F7-50BC-7C15-B3B9-C998C823C3D1
    timestamp = 0
    timeToLive = 0
    body = {}
    hdr(DSEndpoint) = null
    hdr(DSId) = 26f474ce-1811-4dff-919b-3fead62176fb
2009-11-06 14:04:43,601 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.Services.MessageService - MessageService servicing subscribe command for destination streaming, new message client b998aee1-87ef-47c7-b11d-5c0b74c3f326
2009-11-06 14:04:43,617 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Endpoint was not specified
2009-11-06 14:04:43,617 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
    clientId = b998aee1-87ef-47c7-b11d-5c0b74c3f326
    correlationId = EE7428F7-50BC-7C15-B3B9-C998C823C3D1
    destination = streaming
    messageId = dd344dc7-3887-4725-bfb2-2aaa06c59cf2
    timestamp = 103198593
    timeToLive = 0
    body = null
    hdr(DSId) = 26f474ce-1811-4dff-919b-3fead62176fb
    code =  Server.Processing.MissingEndpoint
    message =  Endpoint was not specified
    details =  
    rootCause =  null
    body =  null
    extendedData =  {}

Please help me again.



From: "Support" <support@...>
To: "'Fluorine Mailing List'" <fluorine@...>
Date: 11.11.2009 13:31
Subject: Re: [Fluorine] Fw: StreamingAMFChannel
Sent by: fluorine-bounces@...





Hi,
 
In the messaging config you should have a destination with id = "streaming" defined (or based on your previous emails you should connect the consumer to & push the data to the "mystreaming" destination).
Consumers and producers connect to a specific destination identified with an id and not to a channel identifier.


From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Wednesday, November 11, 2009 1:33 PM
To:
Fluorine Mailing List
Subject:
Re: [Fluorine] Fw: StreamingAMFChannel



Hi all again :-),


I forgott to show me my service-config.xml & remoting-config.xml


my service-config.xml is:

<?
xmlversion="1.0"encoding="utf-8"?>
<
services-config>
       <
services>
               <
service-includefile-path="remoting-config.xml"/>
               <
service-includefile-path="messaging-config.xml"/>
       </
services>

       <
channels>
               <
channel-definitionid="formFiller"class="mx.messaging.channels.AMFChannel">
                       <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
               </
channel-definition>
               <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                       <
endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
                       <
properties>
                               <
idle-timeout-minutes>0</idle-timeout-minutes>
                               <
max-streaming-clients>10</max-streaming-clients>
                               <
server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
                               <
user-agent-settings>
                                       <
user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                                       <
user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>
                               </
user-agent-settings>
                       </
properties>
               </
channel-definition>
       </
channels>
</
services-config>

my remoting-config.xml is:

<?
xmlversion="1.0"encoding="UTF-8"?>
<
serviceid="remoting-service"class="flex.messaging.services.RemotingService"messageTypes="flex.messaging.messages.RemotingMessage">

       <!--
DO NOT CHANGE <adapters> SECTION-->
       <
adapters>
               <
adapter-definitionid="dotnet"class="FluorineFx.Remoting.RemotingAdapter"default="true"/>
       </
adapters>

       <
destinationid="formFiller">
               <
properties>
                       <
source>Icw.Aragon.ServerModule.HausarztCore.Formulare.Client.FormApplicationService</source>
               </
properties>
       </
destination>
</
service>




From: olaf.schumann@...
To: Fluorine Mailing List <fluorine@...>
Date: 11.11.2009 12:05
Subject: Re: [Fluorine] Fw: StreamingAMFChannel
Sent by: fluorine-bounces@...







Hi all,

first of all i would like to thank Zoli for the gread support. I change the channel definitions as seen below. The logging of the Flex Client told me that the consumer can now connect to the channel.

--> FlashTracer Logging:

'consumer' consumer subscribe.
'null' channel endpoint set to
http://localhost:4058/Formulare/Gateway.aspx
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message 'BA366B63-2501-2F0E-526E-C90DBFDB74FB'
'517AAAF6-286C-3D46-D450-C90DBFCB3921' producer sending message '210DD97B-27F2-55CF-3047-C90DBFDB3037'
'null' channel endpoint set to
http://localhost:4058/Formulare/StreamingGateway.aspx
'null' pinging endpoint.
'null' channel is connected.
'null' channel sending message: (mx.messaging.messages::CommandMessage)
      body=(Object)#0
      clientId=(null)
      correlationId=""
      destination="streaming"
      headers=(Object)#0
      messageId="AF38D2E8-1367-EA72-E895-C90DC029602B"
      operation="subscribe"
      timeToLive=0
      timestamp=0
'consumer' consumer connected.


Client code:

      ...

     
protectedfunctionapplication_creationCompleteHandler(event:FlexEvent):void
      {
              consumer.subscribe();                        
      }

     
privatefunctionmessageHandler(message:IMessage):void
      {
              Log.getLogger(
"mx.foo.Bar").debug("messageHandler");
      }        

      ]]>
     
</mx:Script>

     
<mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/StreamingGateway.aspx" />
     
</mx:ChannelSet>

     
<mx:Consumerid="consumer" channelSet="{cs}" destination="streaming" message="messageHandler(event.message)"/>

In the backend I try to send a mesage to the consumer using the following code:


     
MessageBrokermsgBroker = MessageBroker.GetMessageBroker(null);
     
DateTimenow = DateTime.Now;

     
AsyncMessagemsg = new AsyncMessage();
      msg.destination =
"streaming";
      msg.clientId =
Guid.NewGuid().ToString("D");
      msg.messageId =
Guid.NewGuid().ToString("D");
      msg.timestamp =
Environment.TickCount;
     
Hashtablebody = new Hashtable();
      body.Add(
"userId", "homer");
      body.Add(
"msg", now.ToString());
      msg.body = body;
      msgBroker.RouteMessage(msg);


But the message is not consumed by the consumer. The  fluorine.log file told me that the StreamingAMFEndpoint has been started but the destination 'streaming' is not accessible:

-->Fluorine Logging:

2009-11-06 11:08:42,784 [ThreadPoolEx Thread #0] DEBUG FluorineFx.Messaging.Endpoints.StreamingAmfEndpoint - Start streaming for endpoint with id streaming and client with id 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing message Flex Message (CommandMessage)
  operation = subscribe
  selector =
  clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
  correlationId =
  destination = streaming
  messageId = 7366C9FC-C492-6E92-8845-C8F7A3306835
  timestamp = 0
  timeToLive = 0
  body = {}
  hdr(DSEndpoint) = null
  hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] ERROR FluorineFx.Messaging.MessageBroker -
The requested destination streaming is not accessible
2009-11-06 11:08:43,362 [ThreadPoolEx Thread #1] DEBUG FluorineFx.Messaging.MessageBroker - Routing response Flex Message (ErrorMessage)
  clientId = 261fa9e7-171a-4e3d-8662-efa8860cbdcc
  correlationId = 7366C9FC-C492-6E92-8845-C8F7A3306835
  destination = streaming
  messageId = fa0b065e-73d9-4ada-b852-ad4d9f33f335
  timestamp = 92638609
  timeToLive = 0
  body = null
  hdr(DSId) = 07a6c2f9-632c-4123-81c5-c125d8f735b7
  code =  Server.Processing
  message =
 The requested destination streaming is not accessible
  details =  
  rootCause =  null
  body =  null
  extendedData =  {}


-->Web.config:
      ...

      </
configSections>
      <
fluorinefx>
              <
settings>
                      <
runtimeasyncHandler="true"/>
              </
settings>
      </
fluorinefx>
      <
system.web>
              <
sessionStatecookieless="AutoDetect"/>
              <
httpModules>
                      <
addname="FluorineGateway"type="FluorineFx.FluorineGateway, FluorineFx"/>
                      <
addname="ScriptModule"type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
              </
httpModules>
      ...


Does anybody know what I'am doing wrong.




From: "Support" <support@...>
To: "'Fluorine Mailing List'" <fluorine@...>
Date: 10.11.2009 18:15
Subject: Re: [Fluorine] Fw: StreamingAMFChannel
Sent by: fluorine-bounces@...







Hi Olaf,

The SVN version supports Streaming AMF channels.

1) The first important setting to enable FluorineFx to work with streaming channels is the asynchronous mode (web.config)

<configSections>

<sectionGroupname="fluorinefx">

<sectionname="settings"type="FluorineFx.Configuration.XmlConfigurator, FluorineFx"/>

</sectionGroup>

</configSections>

<fluorinefx>

<settings>

<runtimeasyncHandler="true"/>

</settings>

</fluorinefx>

This way FluorineFx will use the ASP.NET asynchronous processing model which is mandatory for the streaming channel implementation.
If this is not enabled FluorineFx will trace in the fluorine.log file an error with the following message "The requested operation is not supported in synchronous mode"
Additionally ASP.NET session state must be enabled and cookieless session case is not supported.

2) Example channel definition in services.config (and supported settings):

<channel-definitionid="my-streaming-amf"class="mx.messaging.channels.StreamingAMFChannel">

<endpointuri="http://{server.name}:{server.port}/{context.root}/StreamingGateway.aspx"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>

<properties>

<idle-timeout-minutes>0</idle-timeout-minutes>

<max-streaming-clients>10</max-streaming-clients>

<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>

<user-agent-settings>

<user-agentmatch-on="IE"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

<user-agentmatch-on="Firefox"kickstart-bytes="2048"max-streaming-connections-per-session="3"/>

</user-agent-settings>

</properties>

</channel-definition>


Please note that the endpoint url is pointing to an aspx file. Just add another empty aspx file similarly to the "default" Gateway.aspx (do not use the same aspx page for 2 different endpoint URLs)
(In your case
http://localhost:4058/Formulare/streamingamfwould never get processed by the asp.net runtime because it is not a request type that asp.net would handle)

Zoli



From: fluorine-bounces@... [fluorine-bounces@...] On Behalf Of olaf.schumann@...
Sent:
Tuesday, November 10, 2009 4:55 PM
To:
fluorine@...
Subject:
[Fluorine] Fw: StreamingAMFChannel



Hi all,

i use subversion this morning to checkout the actual FluorineFx sources from the trunk. In the namespace 'FluorineFx.Messaging.Endpoints' i see a class with the name 'StreamingAmfEndpoint'. Does FluorineFx now support StreamingAMFChannels?

Furthermore I try it by mayself using the following config at the server:

# services-config.xml


     <
services>
             <
service-includefile-path="remoting-config.xml"/>
             <
service-includefile-path="messaging-config.xml"/>
     </
services>
     <
channels>
             <
channel-definitionid="amf"class="mx.messaging.channels.AMFChannel">
                     <
endpointuri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx"class="flex.messaging.endpoints.AMFEndpoint"/>
             </
channel-definition>
             <
channel-definitionid="streaming"class="mx.messaging.channels.StreamingAMFChannel">
                     <
endpointurl="http://{server.name}:{server.port}/{context.root}/streamingamf"class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
             </
channel-definition>
     </
channels>

#messaging-config.xml


     <
adapters>
             <
adapter-definitionid="messagingAdapter"class="FluorineFx.Messaging.Services.Messaging.MessagingAdapter"default="true"/>
     </
adapters>

     <
destinationid="mystreaming">
             <
adapterref="messagingAdapter"/>
             <
properties>
                     <
source>*</source>
                     <
network>
                             <
session-timeout>0</session-timeout>
                     </
network>
             </
properties>
             <
channels>
                     <
channelref="streaming"/>
             </
channels>
     </
destination>


On the client i try to connect to the streaming amf channel using the consumer that subscribe
(consumer.subscribe()) in a init() method called on 'creationComplete'

     
<mx:ChannelSetid="cs">
             
<mx:StreamingAMFChannelurl="http://localhost:4058/Formulare/streamingamf" />
     
</mx:ChannelSet>

     
<mx:Consumerid="consumer" channelSet="{cs}" destination="mystreaming" message="messageHandler(event.message)"/>

I allways get the following log messages:

'null' channel endpoint set to
http://localhost:4058/Formulare/streamingamf
'null' pinging endpoint.
'null' channel polling stopped.
'null' channel connect failed.
'null' pinging endpoint.
'consumer' consumer channel faulted with Channel.Stream.Failed  url: 'http://localhost:4058/Formulare/streamingamf'


Can anybody help me. Thanks

Olaf Schumann





InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, J�rg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestra�e 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...

http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com



InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...

http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516
_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com


InterComponentWare AG:
Vorstand: Dr. Lutz Kleinholz (Vors.), Dr. Georg Ralle, Jörg Stadler / Aufsichtsratsvors.: Prof. Dr. Christof Hettich
Firmensitz: 69190 Walldorf, Industriestraße 41 / AG Mannheim HRB 351761 / USt.-IdNr.: DE 198388516


_______________________________________________
fluorine mailing list
fluorine@...
http://fluorine.thesilentgroup.com/mailman/listinfo/fluorine_fluorine.thesilentgroup.com