Hello there
I've got a DefaultMessageListenerContainer hooked up to a JMS Topic provided via webspheres default messaging provider, I can successfully put a message on the topic but it seems that be that as soon as the message is delivered to the container I see the following error
I was using spring version 3.0.5 but I just upgraded to 3.0.7 in the hope that might resolve the problem, unfortunately that didn't fix it.
Here's the relevant spring config:
Any ideas?
I've got a DefaultMessageListenerContainer hooked up to a JMS Topic provided via webspheres default messaging provider, I can successfully put a message on the topic but it seems that be that as soon as the message is delivered to the container I see the following error
Code:
org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException:
warning can't determine implemented interfaces of missing type com.ibm.ws.sib.api.jms.JmsInternalConstants
[Xlint:cantFindType]
at org.aspectj.weaver.reflect.ReflectionWorld$ExceptionBasedMessageHandler.handleMessage(ReflectionWorld.java:163)
at org.aspectj.weaver.Lint$Kind.signal(Lint.java:287)
at org.aspectj.weaver.MissingResolvedTypeWithKnownSignature.raiseCantFindType(MissingResolvedTypeWithKnownSignature.java:198)
at org.aspectj.weaver.MissingResolvedTypeWithKnownSignature.getDeclaredInterfaces(MissingResolvedTypeWithKnownSignature.java:76)
at org.aspectj.weaver.ResolvedType.getDirectSupertypes(ResolvedType.java:65)
at org.aspectj.weaver.ReferenceType.isAssignableFrom(ReferenceType.java:352)
at org.aspectj.weaver.ReferenceType.isAssignableFrom(ReferenceType.java:353)
at org.aspectj.weaver.ReferenceType.isAssignableFrom(ReferenceType.java:353)
at org.aspectj.weaver.ReferenceType.isAssignableFrom(ReferenceType.java:276)
at org.aspectj.weaver.reflect.ShadowMatchImpl$RuntimeTestEvaluator.visit(ShadowMatchImpl.java:141)
at org.aspectj.weaver.ast.Instanceof.accept(Instanceof.java:29)
at org.aspectj.weaver.reflect.ShadowMatchImpl$RuntimeTestEvaluator.matches(ShadowMatchImpl.java:121)
at org.aspectj.weaver.reflect.ShadowMatchImpl.matchesJoinPoint(ShadowMatchImpl.java:78)
at org.springframework.aop.aspectj.AspectJExpressionPointcut.matches(AspectJExpressionPointcut.java:300)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:160)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
Here's the relevant spring config:
Code:
<jee:jndi-lookup id="sysDateConnectionFactory" jndi-name="jms/sysDateConnFactory"/>
<jee:jndi-lookup id="sysDateRolledTopic" jndi-name="jms/sysDateTopic" proxy-interface="javax.jms.Topic"/>
<!-- Jms Template used by JmsDateRolledDestination to send new messages to the sysDateRolledTopic -->
<bean id="sysDateRolledTemplate" class="org.springframework.jms.core.JmsTemplate" lazy-init="true">
<property name="connectionFactory" ref="sysDateConnectionFactory" />
<property name="defaultDestination" ref="sysDateRolledTopic"/>
<property name="pubSubDomain" value="true"/>
</bean>
<bean id="sysDateWorkManager"
class="org.springframework.scheduling.commonj.WorkManagerTaskExecutor">
<property name="workManagerName" value="wm/default" />
</bean>
<bean id="jmsContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="sysDateConnectionFactory" />
<property name="errorHandler"><bean class="com.hsbc.whatif.api.admin.daterolled.FailedDateRolledHandler"/></property>
<property name="destination" ref="sysDateRolledTopic" />
<property name="messageListener" ref="dateRolledNotifier" />
<property name="taskExecutor" ref="sysDateWorkManager"></property>
<property name="pubSubDomain" value="true"/>
</bean>