You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Bompart Cedric <ce...@thalesgroup.com> on 2007/02/08 14:27:43 UTC

groovy example

Hi,

I'm trying to test Groovy based on this tutorial -->
http://incubator.apache.org/servicemix/groovy.html

I've added these dependencies to my lwcontainer project:
  - groovy 1.0
  - livetribe-jsr223 2.0.0

I'm getting the following exception when I'm trying to deploy to SM 3.1:

<?xml version="1.0" encoding="UTF-8"?>
<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>start</task-id>
<task-result>FAILED</task-result>
<message-type>ERROR</message-type>
</task-result-details>
</frmwk-task-result-details>
</frmwk-task-result>
<component-task-result
xmlns="http://java.sun.com/xml/ns/jbi/management-message"
>
        <component-name>servicemix-lwcontainer</component-name>
        <component-task-result-details>
                <task-result-details>
                        <task-id>start</task-id>
                        <task-result>FAILED</task-result>
                        <message-type>ERROR</message-type>
                        <task-status-msg>
<msg-loc-info>
<loc-token/>
<loc-message>Unable to start service unit</loc-message>
</msg-loc-info>
</task-status-msg>
                        <exception-info>
                                <nesting-level>1</nesting-level>
                                <msg-loc-info>
                                        <loc-token/>
                                        <loc-message>Must be configured
with eit
her the 'compiledScript' or 'engine' property</loc-message>
 
<stack-trace><![CDATA[javax.jbi.JBIExcep
tion: Must be configured with either the 'compiledScript' or 'engine'
property
        at
org.apache.servicemix.components.script.ScriptComponent.start(ScriptC
omponent.java:83)
        at
org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(Compon
entMBeanImpl.java:293)
        at
org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(Componen
tMBeanImpl.java:216)
        at
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
IContainer.java:1122)
        at
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
IContainer.java:1074)
        at
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
IContainer.java:1031)
        at
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
IContainer.java:979)
        at
org.apache.servicemix.lwcontainer.LwContainerEndpoint.activate(LwCont
ainerEndpoint.java:53)
        at
org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:55)
        at
org.apache.servicemix.common.BaseServiceUnitManager.start(BaseService
UnitManager.java:151)
        at
org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(Servic
eUnitLifeCycle.java:103)
        at
org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(Se
rviceAssemblyLifeCycle.java:130)
        at
org.apache.servicemix.jbi.framework.DeploymentService.start(Deploymen
tService.java:374)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchi
ve(AutoDeploymentService.java:336)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExter
nalArchive(AutoDeploymentService.java:201)
        at
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchiv
e(JBIContainer.java:473)
        at
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchiv
e(JBIContainer.java:483)
        at
org.apache.servicemix.jbi.framework.AdminCommandsService.deployServic
eAssembly(AdminCommandsService.java:229)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.jav
a:216)
        at
org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseSta
ndardMBean.java:318)
        at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImp
l.java:213)
        at
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultM
BeanServerInterceptor.java:815)
        at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784
)
        at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
onImpl.java:1408)
        at
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
nImpl.java:81)
        at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run
(RMIConnectionImpl.java:1245)
        at java.security.AccessController.doPrivileged(Native Method)
        at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(R
MIConnectionImpl.java:1348)
        at
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
l.java:782)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
        at sun.rmi.transport.Transport$1.run(Transport.java:153)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
        at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
66)
        at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:707)
        at java.lang.Thread.run(Thread.java:595)
]]></stack-trace>
                                </msg-loc-info>
                        </exception-info>
                </task-result-details>
        </component-task-result-details>
</component-task-result>
</jbi-task-result>
</jbi-task>


I've changed my lwcontainer servicemix.xml file to include the example
of "Maintaining state across requests".

I've looked the GroovyComponent source and there is a set to the script
engine name, which is "groovy". I've neved used Groovy so I can't really
comment...

Any idea?


Another thing is the groovy component going to re-submit the modified
input message to the NMR? (so I can re-send the message to another
provider).
I'm just discovering SM, so just wondering if there is a concept like
the pipeline pattern (for example in Apache Cocoon).
In summary, I would like to do the following:
 FilePooler --> GroovyComponent --> MimeMailSender

Do I need anything else?


How do I manage one consumer with multiple providers in parallel? So
every provider does something independently with the consumer message.

Regards,
Cedric.


RE : groovy example

Posted by ke...@yahoo.fr.
hello,

Did you use
org.apache.servicemix.components.script.ScriptComponent
or 
org.apache.servicemix.components.groovy.GroovyComponent

with the last you don't need to specify the 'engine',
the groovyComponent loads groovy Engine by "groovy"
value @ attribut "scriptEngineName".

Cordialement, 

Grégoire A.

--- Bompart Cedric <ce...@thalesgroup.com> a
écrit :

> Hi,
> 
> I'm trying to test Groovy based on this tutorial -->
> http://incubator.apache.org/servicemix/groovy.html
> 
> I've added these dependencies to my lwcontainer
> project:
>   - groovy 1.0
>   - livetribe-jsr223 2.0.0
> 
> I'm getting the following exception when I'm trying
> to deploy to SM 3.1:
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <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>start</task-id>
> <task-result>FAILED</task-result>
> <message-type>ERROR</message-type>
> </task-result-details>
> </frmwk-task-result-details>
> </frmwk-task-result>
> <component-task-result
>
xmlns="http://java.sun.com/xml/ns/jbi/management-message"
> >
>        
>
<component-name>servicemix-lwcontainer</component-name>
>         <component-task-result-details>
>                 <task-result-details>
>                         <task-id>start</task-id>
>                        
> <task-result>FAILED</task-result>
>                        
> <message-type>ERROR</message-type>
>                         <task-status-msg>
> <msg-loc-info>
> <loc-token/>
> <loc-message>Unable to start service
> unit</loc-message>
> </msg-loc-info>
> </task-status-msg>
>                         <exception-info>
>                                
> <nesting-level>1</nesting-level>
>                                 <msg-loc-info>
>                                         <loc-token/>
>                                        
> <loc-message>Must be configured
> with eit
> her the 'compiledScript' or 'engine'
> property</loc-message>
>  
> <stack-trace><![CDATA[javax.jbi.JBIExcep
> tion: Must be configured with either the
> 'compiledScript' or 'engine'
> property
>         at
>
org.apache.servicemix.components.script.ScriptComponent.start(ScriptC
> omponent.java:83)
>         at
>
org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(Compon
> entMBeanImpl.java:293)
>         at
>
org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(Componen
> tMBeanImpl.java:216)
>         at
>
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
> IContainer.java:1122)
>         at
>
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
> IContainer.java:1074)
>         at
>
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
> IContainer.java:1031)
>         at
>
org.apache.servicemix.jbi.container.JBIContainer.activateComponent(JB
> IContainer.java:979)
>         at
>
org.apache.servicemix.lwcontainer.LwContainerEndpoint.activate(LwCont
> ainerEndpoint.java:53)
>         at
>
org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:55)
>         at
>
org.apache.servicemix.common.BaseServiceUnitManager.start(BaseService
> UnitManager.java:151)
>         at
>
org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(Servic
> eUnitLifeCycle.java:103)
>         at
>
org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(Se
> rviceAssemblyLifeCycle.java:130)
>         at
>
org.apache.servicemix.jbi.framework.DeploymentService.start(Deploymen
> tService.java:374)
>         at
>
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchi
> ve(AutoDeploymentService.java:336)
>         at
>
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExter
> nalArchive(AutoDeploymentService.java:201)
>         at
>
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchiv
> e(JBIContainer.java:473)
>         at
>
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchiv
> e(JBIContainer.java:483)
>         at
>
org.apache.servicemix.jbi.framework.AdminCommandsService.deployServic
> eAssembly(AdminCommandsService.java:229)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>         at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at
> java.lang.reflect.Method.invoke(Method.java:585)
>         at
>
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.jav
> a:216)
>         at
>
org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseSta
> ndardMBean.java:318)
>         at
>
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImp
> l.java:213)
>         at
>
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
>         at
>
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultM
> BeanServerInterceptor.java:815)
>         at
>
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784
> )
>         at
>
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
> onImpl.java:1408)
>         at
>
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
> nImpl.java:81)
>         at
>
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run
> (RMIConnectionImpl.java:1245)
>         at
> java.security.AccessController.doPrivileged(Native
> Method)
>         at
>
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(R
> MIConnectionImpl.java:1348)
>         at
>
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
> l.java:782)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>         at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at
> java.lang.reflect.Method.invoke(Method.java:585)
>         at
>
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
>         at
>
sun.rmi.transport.Transport$1.run(Transport.java:153)
>         at
> java.security.AccessController.doPrivileged(Native
> Method)
>         at
>
sun.rmi.transport.Transport.serviceCall(Transport.java:149)
>         at
>
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
> 66)
>         at
>
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
> .java:707)
>         at java.lang.Thread.run(Thread.java:595)
> ]]></stack-trace>
>                                 </msg-loc-info>
>                         </exception-info>
>                 </task-result-details>
>         </component-task-result-details>
> </component-task-result>
> </jbi-task-result>
> </jbi-task>
> 
> 
> I've changed my lwcontainer servicemix.xml file to
> include the example
> of "Maintaining state across requests".
> 
> I've looked the GroovyComponent source and there is
> a set to the script
> engine name, which is "groovy". I've neved used
> Groovy so I can't really
> comment...
> 
> Any idea?
> 
> 
> Another thing is the groovy component going to
> re-submit the modified
> input message to the NMR? (so I can re-send the
> message to another
> provider).
> I'm just discovering SM, so just wondering if there
> is a concept like
> the pipeline pattern (for example in Apache Cocoon).
> In summary, I would like to do the following:
>  FilePooler --> GroovyComponent --> MimeMailSender
> 
> Do I need anything else?
> 
> 
> How do I manage one consumer with multiple providers
> in parallel? So
> every provider does something independently with the
> consumer message.
> 
> Regards,
> Cedric.
> 
> 



	

	
		
___________________________________________________________________________ 
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions ! 
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses 
http://fr.answers.yahoo.com