On 3/23/07, Rossmanith, Philipp <[EMAIL PROTECTED]> wrote:
> Yes. This error is thrown when the JNDI resource for the JMS connection > factory > can not be found at the specified location (I guess we could throw a more > meaninful > error ) I haven't yet looked into JMS (connection factory settings) too much yet. What's the best way to configure that location?
By default, the WSNotification component looks up a JMS ConnectionFactory at "java:comp/env/jms/wsnotificationCF", which should be already configured in the standard distribution. How did you deploy this component ?
AFAIK no. You can use the lightweight publisher component which is > quite handy, or implement this feature. > However, keep in mind that currently, non-anonymous publishers are not > really supported. Good to know. Thanks for the quick answer. Ciao, Philipp > -----Mensaje original----- > De: Guillaume Nodet [mailto:[EMAIL PROTECTED] > Enviado el: viernes, 23 de marzo de 2007 16:38 > Para: [email protected] > Asunto: Re: how-to implement runtime notifications based on > MessageExchange content > Importancia: Baja > > On 3/23/07, Rossmanith, Philipp <[EMAIL PROTECTED]> wrote: > > > > > > Hi Guillaume, > > > > I missed that the XBean mapping of element component for > > servicemix-wsn2005 maps to WSNSpringComponent and not to WSNComponent. > > The former does not provide a #createServiceUnitManager implementation; > > accordingly, null is returned. (Btw: I added a page on remote debugging > > to the Wiki - > > http://cwiki.apache.org/confluence/display/SM/Remote-debugging+ServiceMi > > x+in+Eclipse) > > > > Nice, thx a lot ! > > Hence, I switched to installing components instead of static > > configuration. Sm-shared works fine. However, with sm-wsn, what I get > > now is an error that the component cannot be started - probably from > > within AutoDeploymentService #updateArchive ("Error calling init", > > "scheme java not recognized", see below**)). > > > > Before I dig in deep, any ideas about what this could be related to? > > > Yes. This error is thrown when the JNDI resource for the JMS connection > factory > can not be found at the specified location (I guess we could throw a more > meaninful > error ). > > In the end, I switched to changing the servicemix.xml config to include > > both sm-shared and sm-wsn libraries and a Spring configuration using > > WSNComponent instead of WSNSpringComponent*). > > > > Another question: does sm-wsn accept publisher service units? That is, > > can I create a publisher via a deployment? > > > AFAIK no. You can use the lightweight publisher component which is > quite handy, or implement this feature. > However, keep in mind that currently, non-anonymous publishers are not > really supported. > > Thanks in advance, > > Ciao, Philipp > > > > *) > > >> > > ... > > <sm:activationSpec componentName="servicemix-wsn2005"> > > <sm:component> > > <bean > > > > class="org.apache.servicemix.wsn.component.WSNComponent"> > > <property name="connectionFactory" > > ref="connectionFactory" /> > > </bean> > > </sm:component> > > </sm:activationSpec> > > ... > > << > > > > **) > > >> > > 16:08:21,750 | INFO | Timer-0 | AutoDeploymentService | > > ramework.AutoDeploymentService 643 | Directory: install: Archive > > changed: processing servicemix-shared-3.1-incubating-installer.zip ... > > 16:08:22,250 | INFO | Timer-0 | AutoDeploymentService | > > ramework.AutoDeploymentService 646 | Directory: install: Finished > > installation of archive: servicemix-shared-3.1-incubating-installer.zip > > 16:08:30,744 | INFO | Timer-0 | AutoDeploymentService | > > ramework.AutoDeploymentService 643 | Directory: install: Archive > > changed: processing servicemix-wsn2005-3.1-incubating-installer.zip ... > > 16:08:32,308 | INFO | Timer-0 | ComponentMBeanImpl | > > i.framework.ComponentMBeanImpl 214 | Starting component: > > servicemix-wsn2005 > > 16:08:32,308 | INFO | Timer-0 | ComponentMBeanImpl | > > i.framework.ComponentMBeanImpl 191 | Initializing component: > > servicemix-wsn2005 > > 16:08:32,324 | ERROR | Timer-0 | ComponentMBeanImpl | > > i.framework.ComponentMBeanImpl 220 | Could not start component > > javax.jbi.JBIException: Error calling init > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:149) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBe > > anImpl.java:201) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(Component > > MBeanImpl.java:287) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMB > > eanImpl.java:216) > > at > > org.apache.servicemix.jbi.framework.InstallationService.install(Installa > > tionService.java:331) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive( > > AutoDeploymentService.java:276) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirecto > > ry(AutoDeploymentService.java:645) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.access$200(Aut > > oDeploymentService.java:62) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDepl > > oymentService.java:605) > > at java.util.TimerThread.mainLoop(Timer.java:512) > > at java.util.TimerThread.run(Timer.java:462) > > Caused by: javax.naming.NamingException: scheme java not recognized > > at > > org.apache.xbean.spring.jndi.DefaultContext.lookup(DefaultContext.java:1 > > 31) > > at javax.naming.InitialContext.lookup(InitialContext.java:392) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.lookupConnectionFactory > > (WSNLifeCycle.java:117) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.doInit(WSNLifeCycle.jav > > a:63) > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:142) > > ... 10 more > > 16:08:32,324 | ERROR | Timer-0 | InstallationService | > > .framework.InstallationService 337 | Failed to start Component: > > servicemix-wsn2005 > > javax.jbi.JBIException: Error calling init > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:149) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBe > > anImpl.java:201) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(Component > > MBeanImpl.java:287) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMB > > eanImpl.java:216) > > at > > org.apache.servicemix.jbi.framework.InstallationService.install(Installa > > tionService.java:331) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive( > > AutoDeploymentService.java:276) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirecto > > ry(AutoDeploymentService.java:645) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.access$200(Aut > > oDeploymentService.java:62) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDepl > > oymentService.java:605) > > at java.util.TimerThread.mainLoop(Timer.java:512) > > at java.util.TimerThread.run(Timer.java:462) > > Caused by: javax.naming.NamingException: scheme java not recognized > > at > > org.apache.xbean.spring.jndi.DefaultContext.lookup(DefaultContext.java:1 > > 31) > > at javax.naming.InitialContext.lookup(InitialContext.java:392) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.lookupConnectionFactory > > (WSNLifeCycle.java:117) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.doInit(WSNLifeCycle.jav > > a:63) > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:142) > > ... 10 more > > 16:08:32,371 | ERROR | Timer-0 | AutoDeploymentService | > > ramework.AutoDeploymentService 286 | Failed to update Component: > > servicemix-wsn2005 > > javax.jbi.management.DeploymentException: javax.jbi.JBIException: Error > > calling init > > at > > org.apache.servicemix.jbi.framework.InstallationService.install(Installa > > tionService.java:338) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive( > > AutoDeploymentService.java:276) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirecto > > ry(AutoDeploymentService.java:645) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.access$200(Aut > > oDeploymentService.java:62) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDepl > > oymentService.java:605) > > at java.util.TimerThread.mainLoop(Timer.java:512) > > at java.util.TimerThread.run(Timer.java:462) > > Caused by: javax.jbi.JBIException: Error calling init > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:149) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBe > > anImpl.java:201) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(Component > > MBeanImpl.java:287) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMB > > eanImpl.java:216) > > at > > org.apache.servicemix.jbi.framework.InstallationService.install(Installa > > tionService.java:331) > > ... 6 more > > Caused by: javax.naming.NamingException: scheme java not recognized > > at > > org.apache.xbean.spring.jndi.DefaultContext.lookup(DefaultContext.java:1 > > 31) > > at javax.naming.InitialContext.lookup(InitialContext.java:392) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.lookupConnectionFactory > > (WSNLifeCycle.java:117) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.doInit(WSNLifeCycle.jav > > a:63) > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:142) > > ... 10 more > > 16:08:32,371 | WARN | Timer-0 | AutoDeploymentService | > > ramework.AutoDeploymentService 649 | Directory: install: Automatic > > install of > > C:\Oy\SM\ws-notification\instance1\install\servicemix-wsn2005-3.1-incuba > > ting-installer.zip failed > > javax.jbi.management.DeploymentException: Failed to update Component: > > servicemix-wsn2005 > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive( > > AutoDeploymentService.java:287) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirecto > > ry(AutoDeploymentService.java:645) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.access$200(Aut > > oDeploymentService.java:62) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDepl > > oymentService.java:605) > > at java.util.TimerThread.mainLoop(Timer.java:512) > > at java.util.TimerThread.run(Timer.java:462) > > Caused by: javax.jbi.management.DeploymentException: > > javax.jbi.JBIException: Error calling init > > at > > org.apache.servicemix.jbi.framework.InstallationService.install(Installa > > tionService.java:338) > > at > > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive( > > AutoDeploymentService.java:276) > > ... 5 more > > Caused by: javax.jbi.JBIException: Error calling init > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:149) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBe > > anImpl.java:201) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(Component > > MBeanImpl.java:287) > > at > > org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMB > > eanImpl.java:216) > > at > > org.apache.servicemix.jbi.framework.InstallationService.install(Installa > > tionService.java:331) > > ... 6 more > > Caused by: javax.naming.NamingException: scheme java not recognized > > at > > org.apache.xbean.spring.jndi.DefaultContext.lookup(DefaultContext.java:1 > > 31) > > at javax.naming.InitialContext.lookup(InitialContext.java:392) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.lookupConnectionFactory > > (WSNLifeCycle.java:117) > > at > > org.apache.servicemix.wsn.component.WSNLifeCycle.doInit(WSNLifeCycle.jav > > a:63) > > at > > org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle. > > java:142) > > ... 10 more > > << > > > > > -----Mensaje original----- > > > De: Guillaume Nodet [mailto:[EMAIL PROTECTED] > > > Enviado el: jueves, 22 de marzo de 2007 18:03 > > > Para: [email protected] > > > Asunto: Re: how-to implement runtime notifications based on > > > MessageExchange content > > > Importancia: Baja > > > > > > Well, I've just looked at the code, and I have absolutely no idea how > > > such a problem can happen. > > > The deployment code is in > > > o.a.s.framework.DeploymentService#deployServiceAssembly > > > and this error is only thrown when the component returns a null > > > ServiceUnitManager, > > > which is not possible for the wsn2005 :-( > > > I guess you will have to remote debug ... > > > > > > On 3/22/07, Rossmanith, Philipp <[EMAIL PROTECTED]> > > wrote: > > > > > > > > > > > > Hi, > > > > > > > > I'm currently attempting to deploy a "Subscribe" service unit to a > > > > servicemix-wsn2005 component (SM version: 3.1-incubating). > > > > > > > > I generate the SU with Maven tooling and then create "... one ... > > (file) > > > > with an xml extension, ... containing a single WS-Notification > > request. > > > > The currently supported set of requests include: > > > > * Subscribe" > > > > (see > > > > > > http://incubator.apache.org/servicemix/servicemix-wsn2005.html#servicemi > > > > x-wsn2005-CreatePullPoint) > > > > > > > > However, when I deploy the SU, I get an error*), telling me that > > > > servicemix-wsn2005 does not accept deployments. I also provide the > > > > contents of my xml-file**) and my servicemix.xml component > > > > configuration***). Please note that the same subscription - done via > > > > static, servicemix.xml configuration - is working fine. > > > > > > > > Any ideas of what is going wrong? Does the naming of the XML file > > > > containing the Subscribe request matter? > > > > > > > > Thanks in advance, > > > > Ciao, Philipp > > > > > > > > *) > > > > >> > > > > <jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message" > > > > version="1.0"> > > > > <jbi-task-result> > > > > <frmwk-task-result> > > > > <frmwk-task-result-details> > > > > <task-result-details> > > > > <task-id>deploy</task-id> > > > > <task-result>FAILED</task-result> > > > > <message-type>ERROR</message-type> > > > > <task-status-msg> > > > > <msg-loc-info> > > > > <loc-token/> > > > > <loc-message>Target component servicemix-wsn2005 for service unit > > > > subscriber-nypdTopic-instance1-su does not accept > > > > deployments</loc-message> > > > > </msg-loc-info> > > > > </task-status-msg> > > > > </task-result-details> > > > > </frmwk-task-result-details> > > > > </frmwk-task-result> > > > > </jbi-task-result> > > > > </jbi-task> > > > > << > > > > > > > > **) file nypdTopic-subscription.xml > > > > >> > > > > <?xml version="1.0" encoding="UTF-8"?> > > > > <wsnt:Subscribe > > > > xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" > > > > xmlns:wsa="http://www.w3.org/2005/08/addressing"> > > > > <wsnt:ConsumerReference> > > > > <wsa:Address> > > > > http://t-systems.es/test/inst1Trace/inst1TraceEndpoint > > > > </wsa:Address> > > > > </wsnt:ConsumerReference> > > > > <wsnt:Filter> > > > > <wsnt:TopicExpression > > > > Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Simple"> > > > > myTopic > > > > </wsnt:TopicExpression> > > > > </wsnt:Filter> > > > > </wsnt:Subscribe> > > > > << > > > > > > > > ***) servicemix.xml excerpt > > > > >> > > > > ... > > > > <!-- WS-Notification component --> > > > > <sm:activationSpec > > > > componentName="servicemix-wsn2005"> > > > > <sm:component> > > > > <wsn:component > > > > > > > > connectionFactory="#connectionFactory"> > > > > <!-- working: > > > > > > <wsn:requests> > > > > > > <wsn:subscribe > > > > > > > > consumer="http://t-systems.es/test/inst1Trace/inst1TraceEndpoint" > > > > > > topic="myTopic" > > > > /> > > > > > > </wsn:requests> > > > > --> > > > > </wsn:component> > > > > </sm:component> > > > > </sm:activationSpec> > > > > ... > > > > << > > > > > > > > > -----Mensaje original----- > > > > > De: Rossmanith, Philipp > > > > > Enviado el: jueves, 15 de marzo de 2007 18:38 > > > > > Para: [email protected] > > > > > Asunto: how-to implement runtime notifications based on > > > > MessageExchange > > > > > content > > > > > Importancia: Baja > > > > > > > > > > > > > > > Hi, > > > > > > > > > > We have a project where we want to enable on-demand notifications > > > > about > > > > > messages being sent in the bus. > > > > > > > > > > > > > > > The idea is that a subscribing component/subscriber (possibly > > outside > > > > > the bus) provides a specification/subscription of what he is > > looking > > > > for > > > > > through a call to a provider service/notification broker; the > > > > > notification broker monitors the messages passing the bus, checks > > if > > > > > they match the subscription and - given that the subscriber avails > > of > > > > > the proper permissions - forwards the message to the subscriber. > > > > > > > > > > What would be the best way to implement this pattern? > > > > > > > > > > So far, I am considering 2 alternatives: > > > > > - Changing org.apache.servicemix.jbi.nmr.SubscriptionManager and > > > > > org.apache.servicemix.jbi.framework.SubscriptionRegistry to allow > > for > > > > > content-based subscriptions > > > > > - Using servicemix-wsn2005; however, I understand that this would > > > > > require the messages to be sent to a defined topic rather than > > based > > > > on > > > > > message characteristics > > > > > > > > > > Any comments/thoughts on this would be welcome. > > > > > > > > > > Thanks in advance, > > > > > Ciao, > > > > > Philipp > > > > > > > > This e-mail may contain confidential or privileged information. Any > > > > unauthorised > > > > copying, use or distribution of this information is strictly > > prohibited. > > > > > > > > > > > > > > > > -- > > > Cheers, > > > Guillaume Nodet > > > ------------------------ > > > Architect, LogicBlaze (http://www.logicblaze.com/) > > > Blog: http://gnodet.blogspot.com/ > > > > This e-mail may contain confidential or privileged information. Any > > unauthorised > > copying, use or distribution of this information is strictly prohibited. > > > > > > -- > Cheers, > Guillaume Nodet > ------------------------ > Architect, LogicBlaze (http://www.logicblaze.com/) > Blog: http://gnodet.blogspot.com/ This e-mail may contain confidential or privileged information. Any unauthorised copying, use or distribution of this information is strictly prohibited.
-- Cheers, Guillaume Nodet ------------------------ Architect, LogicBlaze (http://www.logicblaze.com/) Blog: http://gnodet.blogspot.com/
