Announcement Announcement Module
Collapse
No announcement yet.
StreamingAMF based message destination not working Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • StreamingAMF based message destination not working

    Hi all,

    I cant make a streamingAMF channel work with spring-for-blazeDS 1.0. I dont know what I am doing wrong but any other amf based channel is working.

    Im doing this:

    <flex:message-broker>
    <flex:message-service default-channels="my-streaming-amf" />
    </flex:message-broker>

    <flex:message-destination
    id="messageChannel"
    allow-subtopics="true"
    subtopic-separator="."
    />

    It's quite interesting to see that Christophe Coenraets has commented the streaming channel from his testdrive server sample.

    On the Flex side, I dont even get the connect, fault events ... Changing streaming for longpolling, or any other amf channel, seems to work fine.

    Any ideas?

    Thank you.

  • #2
    StreamingAMF based message destination not working

    Same problem here.
    I have tried reaching clients from a custom ServiceAdapter by calling pushMessageToClients in the invoke, and I also tried using MessageTemplate.send.
    Nothing gets to the Client side. With the M2 integration, everything worked fine.
    Just to repeat the question: Is there anything wrong with the streamingamfchannel in the integration? Or is there a new way to do data push on a streaming channel?

    Thanks

    Comment


    • #3
      I've tried using Spring-3.0M3 and Spring 2.5.6 and same problem. I'm almost sure there is something wrong with this spring-flex-1.0.0-RELEASE since Raduf said it was working on older versions? ( I haven't tested older versions tho ).

      Thank you.

      Comment


      • #4
        There are no known issues with streaming channels that I am aware of, but it is possible you guys may have found a bug. If you feel that is the case, please do open a Jira and give as much info as possible (a zipped up example would be great, but if not available just provide as much specific info as would be needed) to enable us to reproduce the issue.

        Comment


        • #5
          Hi Jeremy,

          I have filed a bug on your Jira system with id=FLEX-66.

          Let me know if you can not reproduce the bug.

          Thank you.

          Comment


          • #6
            Great, thanks...I'll take a look at it.

            Comment


            • #7
              My issue is solved. It was a configuration mistake from my side. I was sending a subtopic message, but my destination did not have allow-subtopics attribute.
              Thanks for taking the time, and sorry for the false alarm.

              Comment


              • #8
                Hi Jeremy,

                I had a typo in the streamingAMF channel URL and the Flex app was connecting to a wrong messaging URL. Thanks to Raduf for pointing this out.

                Please, feel free to remove the opened issue in Jira and thank you for your help.

                Comment


                • #9
                  Ahh, okay...well, that makes it nice and easy for me. Glad you guys were able to help each other out. I will close the issue.

                  Comment


                  • #10
                    StreamingAMF based message destination not working

                    Hi,

                    When I use pooling AMF to datapush everything work fine, but when I change to streaming AMF channel I get the following exception after consumer.subscribe():

                    Code:
                    [BlazeDS]07/30/2010 18:42:08.386 [ERROR] [Message.General] Error handling message: flex.messaging.MessageException: Channel endpoint does not support polling. flex.messaging.MessageException
                      incomingMessage: Flex Message (flex.messaging.messages.CommandMessageExt) 
                        operation = poll
                        clientId = null
                        correlationId = 
                        destination = 
                        messageId = F869E964-347E-C5E3-496F-2585035BAD53
                        timestamp = 1280529728378
                        timeToLive = 0
                        body = {}
                        hdr(DSId) = E5995620-E40A-2237-F81E-035122150810
                        hdr(DSEndpoint) = my-streaming-amf
                      errorReply: Flex Message (flex.messaging.messages.ErrorMessage) 
                        clientId = null
                        correlationId = F869E964-347E-C5E3-496F-2585035BAD53
                        destination = 
                        messageId = E599BD8D-F10C-7CFE-4EBF-FE7D32C56AE3
                        timestamp = 1280529728385
                        timeToLive = 0
                        body = null
                        code =  DashBuilder
                        message =  Channel endpoint does not support polling.
                        details =  flex.messaging.MessageException
                        rootCause =  Flex Message (flex.messaging.messages.ErrorMessage) 
                        clientId = null
                        correlationId = null
                        destination = null
                        messageId = E599BD8D-F11B-F05B-6CD5-33B2A1AF5646
                        timestamp = 1280529728385
                        timeToLive = 0
                        body = null
                        code =  Server.PollNotSupported
                        message =  Channel endpoint does not support polling.
                        details =  Client attempted to contact a server endpoint that does not support a polling channel.
                        rootCause =  null
                        body =  null
                        extendedData =  null
                        body =  null
                        extendedData =  null
                      Exception: flex.messaging.MessageException: Channel endpoint does not support polling. flex.messaging.MessageException
                    	at com.hexalabs.infra.AllExceptionTranslation.translate(AllExceptionTranslation.java:13)
                    	at org.springframework.flex.core.ExceptionTranslationAdvice.afterThrowing(ExceptionTranslationAdvice.java:63)
                    	at sun.reflect.GeneratedMethodAccessor41.invoke(Unknown Source)
                    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    	at java.lang.reflect.Method.invoke(Method.java:597)
                    	at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invokeHandlerMethod(ThrowsAdviceInterceptor.java:146)
                    	at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:131)
                    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
                    	at org.springframework.aop.framework.Cglib2AopProxy$FixedChainStaticTargetInterceptor.intercept(Cglib2AopProxy.java:582)
                    	at flex.messaging.endpoints.StreamingAMFEndpoint$$EnhancerByCGLIB$$802a6ba6.serviceMessage(<generated>)
                    	at flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter.java:121)
                    	at flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158)
                    	at flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:44)
                    	at flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.java:67)
                    	at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:146)
                    	at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:278)
                    	at flex.messaging.endpoints.BaseStreamingHTTPEndpoint.service(BaseStreamingHTTPEndpoint.java:432)
                    	at flex.messaging.endpoints.StreamingAMFEndpoint$$EnhancerByCGLIB$$802a6ba6.service(<generated>)
                    	at org.springframework.flex.servlet.MessageBrokerHandlerAdapter.handle(MessageBrokerHandlerAdapter.java:101)
                    	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:874)
                    	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:808)
                    	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:476)
                    	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:441)
                    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
                    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
                    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                    	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
                    	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
                    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
                    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
                    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
                    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
                    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
                    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                    	at java.lang.Thread.run(Thread.java:637)
                    Caused by: flex.messaging.MessageException: Channel endpoint does not support polling. Client attempted to contact a server endpoint that does not support a polling channel.
                    	at flex.messaging.endpoints.BaseStreamingHTTPEndpoint.handleFlexClientPoll(BaseStreamingHTTPEndpoint.java:532)
                    	at flex.messaging.endpoints.AbstractEndpoint.handleFlexClientPollCommand(AbstractEndpoint.java:1024)
                    	at flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.java:844)
                    	at flex.messaging.endpoints.AbstractEndpoint$$FastClassByCGLIB$$1a3ef066.invoke(<generated>)
                    	at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
                    	at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:700)
                    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
                    	at org.springframework.flex.core.MessageInterceptionAdvice.invoke(MessageInterceptionAdvice.java:59)
                    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
                    	at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:126)
                    	... 34 more
                    What's wrong? I've seen lots of examples using streaming AMF channel with no problems apparently, including the simplefeed at spring integration test drive.

                    Thanks!

                    Comment

                    Working...
                    X