1. 21 10月, 2014 1 次提交
  2. 01 9月, 2014 1 次提交
  3. 12 8月, 2014 1 次提交
  4. 10 8月, 2014 1 次提交
    • J
      JmsMessagingTemplate uses local convertJmsException template method instead of... · c06ac06b
      Juergen Hoeller 提交于
      JmsMessagingTemplate uses local convertJmsException template method instead of generic MessagingExceptionTranslator interface
      
      This commit also turns MessagingException into a NestedRuntimeException subclass which delivers a root message that has the cause message appended to it. That's a common expectation with the use of Spring exceptions since all of our exception hierarchies have historically been designed that way.
      
      Issue: SPR-12064
      Issue: SPR-12038
      c06ac06b
  5. 09 8月, 2014 1 次提交
  6. 08 8月, 2014 1 次提交
  7. 04 8月, 2014 1 次提交
  8. 01 8月, 2014 1 次提交
    • S
      Move JmsHandlerMethodFactory to spring-messaging · 7d1e33d8
      Stephane Nicoll 提交于
      This commit moves JmsHandlerMethodFactory and its default
      implementation to the messaging abstraction. Working on a similar
      support for AMQP revealed that this factory has nothing that is JMS
      specific and is exactly identical in the case of AMQP.
      
      Issue: SPR-12053
      7d1e33d8
  9. 29 7月, 2014 2 次提交
  10. 28 7月, 2014 2 次提交
    • J
      JmsListener/ScheduledAnnotationBeanPostProcessor uses... · 92c657e1
      Juergen Hoeller 提交于
      JmsListener/ScheduledAnnotationBeanPostProcessor uses SmartInitializingSingleton instead of ContextRefreshedEvent
      
      Also reducing the container dependencies to BeanFactory instead of ApplicationContext, wherever possible.
      
      Issue: SPR-12039
      92c657e1
    • S
      Jms request/reply operations · b6389a6c
      Stephane Nicoll 提交于
      This commit updates JmsMessagingTemplate to support the
      MessageRequestReplyOperation interface that provides synchronous
      request/reply operations.
      
      As JmsMessagingTemplate delegates everything under the scenes to
      JmsTemplate, the latter has been updated as well to offer such lower
      level operation.
      
      Issue: SPR-12037
      b6389a6c
  11. 24 7月, 2014 1 次提交
  12. 18 7月, 2014 1 次提交
  13. 14 7月, 2014 1 次提交
    • S
      Customize concurrency at listener level · 29bdbcea
      Stephane Nicoll 提交于
      Prior to this commit, customizing the concurrency to use fo a given JMS
      listener involved to define it in a specific listener-container. As
      this is quite restrictive, users may stop using the XML namespace
      support altogether to fallback on regular abstract bean definition for
      the container.
      
      This commit adds a concurrency attribute to the jms and jca listener
      element as well as on the @JmsListener annotation. If the value is set,
      it takes precedence; otherwise the value provided by the factory is
      used.
      
      Issue: SPR-11988
      29bdbcea
  14. 10 7月, 2014 3 次提交
  15. 28 5月, 2014 2 次提交
    • S
      Throw a proper exception if no convert is found · 12a9df8a
      Stephane Nicoll 提交于
      Prior to this commit, no exception was raised if a message could not
      be converted to the requested payload because no suitable converter
      were found.
      
      This commit adds an explicit check if the converted payload is null.
      
      Issue: SPR-11817
      12a9df8a
    • S
      Tweak JmsMessagingTemplateTests for Eclipse 4.4 · 8dec1db9
      Sam Brannen 提交于
      Eclipse 4.4 early release versions have issues with generics.
      
      This commit slightly tweaks the use of generics in
      JmsMessagingTemplateTests so that the class compiles in the latest
      builds of Eclipse 4.4
      8dec1db9
  16. 26 5月, 2014 1 次提交
    • S
      Revisit JmsMessagingTemplate · 9fabcad3
      Stephane Nicoll 提交于
      This commit revisits JmsMessagingTemplate and adds support for
      receiving operations as well. JmsMessageSendingOperations has been
      renamed to JmsMessageOperations.
      
      The messaging abstraction did not split receiving and request-reply
      operations. AbstractMessageReceivingTemplate has been created to hold
      only the receiving operations.
      
      Issue: SPR-11772
      9fabcad3
  17. 19 5月, 2014 1 次提交
    • S
      Add MessageSendingOperations for JMS · 7469159b
      Stephane Nicoll 提交于
      This commit adds a JMS implementation of MessageSendingOperations,
      allowing to send JMS messages using Spring's standard Messaging
      abstraction.
      
      MessagingMessageConverter is a standard JMS's MessageConverter that
      can convert Spring's Message to JMS message and vice versa. Existing
      infrastructure has been updated to use this implementation.
      
      Issue: SPR-11772
      7469159b
  18. 15 5月, 2014 1 次提交
    • S
      Avoid JMSException in listener execution · 6560aed1
      Stephane Nicoll 提交于
      This commit avoids throwing JMSException from the listener execution
      as this is not allowed per spec. Our SessionAwareMessageListener
      gives a callback that can throw JMSException and we have "abused" it
      so far.
      
      Typical message processing goes in those 3 steps:
      * Unmarshall the javax.jms.Message to the requested type
      * Invoke the actual user method (including processing of method
        arguments)
      * Send a reply message, if any
      
      Those three steps have been harmonized so that they don't throw a
      JMSException anymore. For the later case, introduced
      ReplyFailureException as a general exception indicating the
      reply message could not have been sent.
      
      Issue: SPR-11778
      6560aed1
  19. 09 5月, 2014 3 次提交
    • S
      Add BackOffExecution to isolate state · 89fc3c02
      Stephane Nicoll 提交于
       This commit separates the BackOff configuration from an actual
       execution. BackOffExecution now contains all the state of a
       particular execution and BackOff is only meant to start (i.e.
       create) a new execution.
      
       The method "reset" has been removed as its no longer necessary:
       when an execution does not need to be used for a given operation
       anymore it can be simply discarded.
      
       Issue: SPR-11746
      89fc3c02
    • S
      Add back-off attribute to JMS namespace · 49040a29
      Stephane Nicoll 提交于
       This commit adds a "back-off" attribute to the jms:listener-container
       element so that a BackOff instance can be provided for users of the
       XML namespace.
      
       Issue: SPR-11746
      49040a29
    • S
      Configurable back off for listener recovery · 6a048312
      Stephane Nicoll 提交于
      Prior to this commit, DefaultMessageListenerContainer was recovering
      on failure using a fixed time interval, potentially in an infinite way.
      
      This commit adds an extra "backoff" property to the container that
      permits to fine tune the recovery interval using a BackOff instance.
      
      FixedBackOff provides a fixed interval between two attempts and a
      maximum number of retries. ExponentialBackOff increases an initial
      interval until a maximum interval has been reached. A BackOff instance
      can return a special "STOP" time value that indicates that no further
      attemps should be made. DefaultMessageListenerContainer uses this
      value to stop the container.
      
      protected method "sleepInbetweenRecoveryAttempts" has been renamed
      to "applyBackOff" and now returns a boolean that indicate if the
      back off has been applied and a new attempt should now be made.
      
      Issue: SPR-11746
      6a048312
  20. 24 4月, 2014 3 次提交
    • S
      polishing · 6aa16b74
      Stephane Nicoll 提交于
      This commit removes the queue attribute of the JmsListener annotation
      as this information should be provided by the container factory and not
      by each individual listener endpoints.
      
      There was a side effect that an annotation value cannot be null, which
      was forcing the container to be a queue-based container by default.
      
      Issue: SPR-9882
      6aa16b74
    • S
      @SendTo support for jms listener endpoints · bded025d
      Stephane Nicoll 提交于
      This commit replaces the "responseDestination" attribute on the
      JmsListener annotation by a support of the standard SendTo annotation.
      
      Issue: SPR-11707
      bded025d
    • S
      Default JmsListenerContainerFactory lookup · 4b0aba63
      Stephane Nicoll 提交于
      Prior to this commit, the default JmsListenerContainerFactory to use
      must be explicitly set. Since having a single container factory is a
      fairly common use case, we look up the default one automatically
      using the bean name "jmsListenerContainerFactory".
      
      It is still possible to provide an explicit default but since it refers
      more to "the" container factory to use, the parameter has been
      renamed to "containerFactory" which is shorter and more explicit.
      
      The lookup strategy is lazy: if all endpoints are providing an
      explicit container factory and no container factory with the
      "jmsListenerContainerFactory" bean name exists, no exception
      will be thrown.
      
      Issue : SPR-11706
      4b0aba63
  21. 22 4月, 2014 1 次提交
    • P
      Clean up spring-jms tests warnings · 404eb48f
      Philippe Marschall 提交于
      Clean up compiler warnings in the tests of spring-jms. This commit
      adds type parameters to all the types (mostly `List` and `Map`).
      
      I am not too sure about the `Map` type parameters in
      `MessageContentsDelegate` and `ResponsiveMessageDelegate` however the
      respective methods seem unused.
      404eb48f
  22. 17 4月, 2014 1 次提交
    • S
      JMS annotation-driven endpoints. · 713dd60f
      Stephane Nicoll 提交于
      This commit adds the support of JMS annotated endpoint. Can be
      activated both by @EnableJms or <jms:annotation-driven/> and
      detects methods of managed beans annotated with @JmsListener,
      either directly or through a meta-annotation.
      
      Containers are created and managed under the cover by a registry
      at application startup time. Container creation is delegated to a
      JmsListenerContainerFactory that is identified by the containerFactory
      attribute of the JmsListener annotation. Containers can be
      retrieved from the registry using a custom id that can be specified
      directly on the annotation.
      
      A "factory-id" attribute is available on the container element of
      the XML namespace. When it is present, the configuration defined at
      the namespace level is used to build a JmsListenerContainerFactory
      that is exposed with the value of the "factory-id" attribute. This can
      be used as a smooth migration path for users having listener containers
      defined at the namespace level. It is also possible to migrate all
      listeners to annotated endpoints and yet keep the
      <jms:listener-container> or <jms:jca-listener-container> element to
      share the container configuration.
      
      The configuration can be fine-tuned by implementing the
      JmsListenerConfigurer interface which gives access to the registrar
      used to register endpoints. This includes a programmatic registration
      of endpoints in complement to the declarative approach. A default
      JmsListenerContainerFactory can also be specified to be used if no
      containerFactory has been set on the annotation.
      
      Annotated methods can have flexible method arguments that are similar
      to what @MessageMapping provides. In particular, jms listener endpoint
      methods can fully use the messaging abstraction, including convenient
      header accessors. It is also possible to inject the raw
      javax.jms.Message and the Session for more advanced use cases. The
      payload can be injected as long as the conversion service is able to
      convert it from the original type of the JMS payload. By
      default, a DefaultJmsHandlerMethodFactory is used but it can be
      configured further to support additional method arguments or to
      customize conversion and validation support.
      
      The return type of an annotated method can also be an instance of
      Spring's Message abstraction. Instead of just converting the payload,
      such response type allows to communicate standard and custom headers.
      
      The JmsHeaderMapper infrastructure from Spring integration has also
      been migrated to the Spring framework. SimpleJmsHeaderMapper is based
      on SI's DefaultJmsHeaderMapper. The simple implementation maps all
      JMS headers so that the generated Message abstraction has all the
      information stored in the protocol specific message.
      
      Issue: SPR-9882
      713dd60f
  23. 28 3月, 2014 1 次提交
  24. 23 1月, 2014 1 次提交
  25. 28 8月, 2013 1 次提交
  26. 02 5月, 2013 1 次提交
  27. 19 3月, 2013 1 次提交
  28. 07 3月, 2013 1 次提交
  29. 11 2月, 2013 1 次提交
  30. 26 1月, 2013 2 次提交