I'm attempting to try the WS-Notification example where I have a producer of
messages (RSS/Quartz) send to a WS-Notification proxy, which in turn sends
the notification message to the WS-Notification broker. A trace component is
a registered subscriber to the broker. The following is my configuration - 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xmlns:jee="http://www.springframework.org/schema/jee";
        xmlns:sm="http://servicemix.apache.org/config/1.0";
        xmlns:wsn="http://servicemix.apache.org/wsn/1.0";
        xmlns:inshare="http://inshare.bah.com/schema/jbi";
        xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd 
        http://www.springframework.org/schema/jee
http://www.springframework.org/schema/jee/spring-jee-2.0.xsd 
        http://servicemix.apache.org/config/1.0 
servicemix-core-3.0-incubating.xsd 
        http://servicemix.apache.org/wsn/1.0 
servicemix-wsn2005-3.0-incubating.xsd"
        default-lazy-init="true">

        <bean id="propertyConfigurer"
        
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
                <property name="locations">
                        <list>
                                
<value>classpath:activemq.jndi.properties</value>
                                <value>classpath:jdbc.properties</value>
                        </list>
                </property>
        </bean>

        <bean id="messageSource"
                
class="org.springframework.context.support.ResourceBundleMessageSource">
                <property name="basenames">
                        <list>
                                <value>alert</value>
                                <value>exception</value>
                                <value>resolution</value>
                        </list>
                </property>
        </bean>

        <!-- JMS Template to initialize context -->
        <bean id="jndiTemplate"
                class="org.springframework.jndi.JndiTemplate">
                <property name="environment">
                        <props>
                                <prop key="java.naming.factory.initial">
                                        ${java.naming.factory.initial}
                                </prop>
                                <prop 
key="brokerURL">${java.naming.provider.url}</prop>
                                <prop key="useEmbeddedBroker">true</prop>
                                <prop key="inshare.jms.topic.AlertTopic">
                                        inshare.jms.topic.AlertTopic
                                </prop>

                                <prop key="inshare.jms.queue.QueryService">
                                        inshare.jms.queue.QueryService
                                </prop>
                        </props>
                </property>
        </bean>

        <!-- JMS Connection Factory -->
        <bean id="internalJmsConnectionFactory"
                class="org.apache.activemq.pool.PooledConnectionFactory">
                <property name="connectionFactory">
                        <bean
                                
class="org.apache.activemq.ActiveMQConnectionFactory">
                                <property name="brokerURL">
                                        
<value>${java.naming.provider.url}</value>
                                </property>
                        </bean>
                </property>
        </bean>

        <!-- JMS Connection Factory for standalone application -->
        <bean id="jmsConnectionFactory"
                
class="org.springframework.jms.connection.SingleConnectionFactory">
                <property name="targetConnectionFactory">
                        <ref bean="internalJmsConnectionFactory" />
                </property>
        </bean>

        <!--  JMS Queue Template -->
        <bean id="jmsQueryTemplate"
                class="org.springframework.jms.core.JmsTemplate">
                <property name="connectionFactory">
                        <ref bean="jmsConnectionFactory" />
                </property>
                <property name="defaultDestination">
                        <ref bean="queueDestination" />
                </property>
                <property name="receiveTimeout">
                        <value>2000</value>
                </property>
                <property name="messageConverter">
                        <ref bean="xmlMessageConverter" />
                </property>
        </bean>

        <bean id="queueDestination"
                class="org.apache.activemq.command.ActiveMQQueue"
                autowire="constructor">
                <constructor-arg>
                        <value>inshare.jms.queue.QueryService</value>
                </constructor-arg>
        </bean>

        <bean id="topicDestination"
                class="org.apache.activemq.command.ActiveMQTopic"
                autowire="constructor">
                <constructor-arg>
                        <value>inshare.jms.topic.AlertTopic</value>
                </constructor-arg>
        </bean>



        <!-- the JBI container -->
        <sm:container id="jbi" name="InShare ESB" useMBeanServer="true"
embedded="true" flowNames="st"
                createMBeanServer="false" dumpStats="false" statsInterval="10">
                <sm:activationSpecs>
                        <sm:activationSpec componentName="feedAggregator"
                                service="inshare:feed" 
failIfNoDestinationEndpoint="false">
                                <sm:component>
                                        <bean
                                                
class="org.apache.servicemix.components.rss.RssPollingComponent">
                                                <property name="outputType" 
value="atom_0.3" />
                                                <property name="period" 
value="10000" />
                                                <property name="lastPolledDate">
                                                        
<value>2005/08/10</value>
                                                </property>
                                                <property name="urlStrings">
                                                        <list>
                                                                <value>
                                                                
http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml
                                                                </value>
                                                                <value>
                                                                        
http://rss.cnn.com/rss/cnn_topstories.rss
                                                                </value>
                                                        </list>
                                                </property>
                                        </bean>
                                </sm:component>
                        </sm:activationSpec>
                        <!-- Publish WS-Notifications -->
                        <sm:activationSpec componentName="notificationPublisher"
                                destinationService="inshare:publisher"
destinationEndpoint="wsnPublisher">
                                <sm:component>
                                        <bean
                                                
class="org.apache.servicemix.components.quartz.QuartzComponent">
                                                <property name="triggers">
                                                        <map>
                                                                <entry>
                                                                        <key>
                                                                                
<bean
                                                                                
        class="org.quartz.SimpleTrigger">
                                                                                
        <property
                                                                                
                name="repeatInterval" value="0" />
                                                                                
        <property name="repeatCount"
                                                                                
                value="0" />
                                                                                
</bean>
                                                                        </key>
                                                                        <bean
                                                                                
class="org.quartz.JobDetail">
                                                                                
<property name="name"
                                                                                
        value="Notification Alert" />
                                                                                
<property name="group"
                                                                                
        value="InShare" />
                                                                        </bean>
                                                                </entry>
                                                        </map>
                                                </property>
                                        </bean>
                                </sm:component>
                        </sm:activationSpec>
                        <sm:activationSpec
                                componentName="notificationProxyPublisher"
                                service="inshare:publisher" 
endpoint="wsnPublisher">
                                <sm:component>
                                        <wsn:publisher topic="myTopic" />
                                </sm:component>
                                <!--sm:subscriptions>
                                        <sm:subscriptionSpec 
service="inshare:feed" />
                                </sm:subscriptions-->
                        </sm:activationSpec>
                        <sm:activationSpec componentName="notificationBroker">
                                <sm:component>
                                        <wsn:component
                                                
connectionFactory="#internalJmsConnectionFactory">
                                                <wsn:requests>
                                                        <wsn:subscribe
                                                                
consumer="http://inshare.bah.com/schema/jbi/trace/debug";
                                                                topic="myTopic" 
/>
                                                </wsn:requests>
                                        </wsn:component>
                                </sm:component>
                        </sm:activationSpec>
                        <!-- Route the event to a trace component that just 
outputs the event to
the console -->
                        <sm:activationSpec componentName="tracer" 
endpoint="debug"
                                service="inshare:trace">
                                <sm:component>
                                        <bean
                                                
class="org.apache.servicemix.components.util.TraceComponent" />
                                </sm:component>
                                <!--sm:subscriptions>
                                        <sm:subscriptionSpec 
service="inshare:feed" />
                                </sm:subscriptions-->
                        </sm:activationSpec>
                </sm:activationSpecs>
        </sm:container>


        <!-- Custom editor for the Date variable lastPolledDate so we can see
immediate output -->
        <bean id="customEditorConfigurer"
                
class="org.springframework.beans.factory.config.CustomEditorConfigurer">
                <property name="customEditors">
                        <map>
                                <entry key="java.util.Date">
                                        <bean
                                                
class="org.springframework.beans.propertyeditors.CustomDateEditor">
                                                <constructor-arg index="0">
                                                        <bean 
class="java.text.SimpleDateFormat">
                                                                
<constructor-arg>
                                                                        
<value>yyyy/MM/dd</value>
                                                                
</constructor-arg>
                                                        </bean>
                                                </constructor-arg>
                                                <constructor-arg index="1">
                                                        <value>true</value>
                                                </constructor-arg>
                                        </bean>
                                </entry>
                        </map>
                </property>
        </bean>

</beans>


I receive the following exception(s) when I enable trace - 

08 Nov 2006 19:31:15,528 [ActiveMQ Session Task] ERROR
org.apache.servicemix.wsn.spring.WSNSpringComponent  - Error processing
exchange InOnly[
  id: ID:UWS007-4369-1163032267795-5:0
  status: Done
  role: consumer
  endpoint: debug
  in: <?xml version="1.0" encoding="UTF-8"?><ns2:Notify
xmlns:ns2="http://docs.oasis-open.org/wsn/b-2";
xmlns="http://www.w3.org/2005/08/addressing";
xmlns:ns3="http://docs.oasis-open.org/wsrf/bf-2";
xmlns:ns4="http://docs.oasis-open.org/wsn/t-1";><ns2:NotificationMessage><ns2:Topic>myTopic</ns2:Topic><ns2:Message><timer
xmlns="" xmlns:ns5="http://www.w3.org/2005/08/addressing";><name>Notification
Alert</name><group>InShare</group><fullname>InShare.Notification
Alert</fullname><description/><fireTime>Wed Nov 08 19:31:13 EST
2006</fireTime></timer></ns2:Message></ns2:NotificationMessage></ns2:Notify>
]
java.lang.NullPointerException
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:474)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:461)
        at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
        at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:51)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:126)
        at
org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:281)
        at
org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:769)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:361)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:397)
        at
org.apache.servicemix.components.util.PojoSupport.done(PojoSupport.java:193)
        at
org.apache.servicemix.components.util.TraceComponent.onMessageExchange(TraceComponent.java:72)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
        at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:51)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:126)
        at
org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:281)
        at
org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:769)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:361)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:397)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.sendConsumerExchange(AsyncBaseLifeCycle.java:498)
        at
org.apache.servicemix.wsn.jbi.JbiSubscription.doNotify(JbiSubscription.java:133)
        at
org.apache.servicemix.wsn.jms.JmsSubscription.onMessage(JmsSubscription.java:185)
        at
org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:828)
        at
org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:96)
        at
org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:155)
        at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:111)
        at
org.apache.activemq.thread.PooledTaskRunner.access$100(PooledTaskRunner.java:26)
        at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:44)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
08 Nov 2006 19:31:15,544 [ActiveMQ Session Task] DEBUG
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl  - Send
ID:UWS007-4369-1163032267795-5:0 in DeliveryChannel{notificationBroker}
08 Nov 2006 19:31:15,559 [ActiveMQ Session Task] DEBUG
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl  - Sent: InOnly[
  id: ID:UWS007-4369-1163032267795-5:0
  status: Error
  role: consumer
  endpoint: debug
  in: <?xml version="1.0" encoding="UTF-8"?><ns2:Notify
xmlns:ns2="http://docs.oasis-open.org/wsn/b-2";
xmlns="http://www.w3.org/2005/08/addressing";
xmlns:ns3="http://docs.oasis-open.org/wsrf/bf-2";
xmlns:ns4="http://docs.oasis-open.org/wsn/t-1";><ns2:NotificationMessage><ns2:Topic>myTopic</ns2:Topic><ns2:Message><timer
xmlns="" xmlns:ns5="http://www.w3.org/2005/08/addressing";><name>Notification
Alert</name><group>InShare</group><fullname>InShare.Notification
Alert</fullname><description/><fireTime>Wed Nov 08 19:31:13 EST
2006</fireTime></timer></ns2:Message></ns2:NotificationMessage></ns2:Notify>
  error: java.lang.NullPointerException
]
08 Nov 2006 19:31:15,559 [ActiveMQ Session Task] DEBUG
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl  - Exception
processing: ID:UWS007-4369-1163032267795-5:0 in
DeliveryChannel{notificationBroker}
08 Nov 2006 19:31:15,559 [ActiveMQ Session Task] ERROR
org.apache.servicemix.wsn.spring.WSNSpringComponent  - Error setting
exchange status to ERROR
javax.jbi.messaging.MessagingException: illegal call to send / sendSync
        at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:350)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:397)
        at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
        at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:51)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:126)
        at
org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:281)
        at
org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:769)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:361)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:397)
        at
org.apache.servicemix.components.util.PojoSupport.done(PojoSupport.java:193)
        at
org.apache.servicemix.components.util.TraceComponent.onMessageExchange(TraceComponent.java:72)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
        at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:51)
        at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:126)
        at
org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:281)
        at
org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:769)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:361)
        at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:397)
        at
org.apache.servicemix.common.AsyncBaseLifeCycle.sendConsumerExchange(AsyncBaseLifeCycle.java:498)
        at
org.apache.servicemix.wsn.jbi.JbiSubscription.doNotify(JbiSubscription.java:133)
        at
org.apache.servicemix.wsn.jms.JmsSubscription.onMessage(JmsSubscription.java:185)
        at
org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:828)
        at
org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:96)
        at
org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:155)
        at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:111)
        at
org.apache.activemq.thread.PooledTaskRunner.access$100(PooledTaskRunner.java:26)
        at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:44)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)


-- 
View this message in context: 
http://www.nabble.com/NullPointerException---AsyncBaseLifeCycle.doProcess-tf2598962s12049.html#a7250337
Sent from the ServiceMix - Dev mailing list archive at Nabble.com.

Reply via email to