You need to rebuild the drools component.  The xbean informations are stored
in the jar, so it should be sufficient.  If it works, can you raise a JIRA
please?

On Tue, Mar 25, 2008 at 1:40 PM, Andrea Zoppello <[EMAIL PROTECTED]>
wrote:

> Looking at the two codebase effectively the NamespaceContextImpl of eip
> declare setter and getters,
> instead the drools one does not declare getters and getter.
>
> Do i need to compile all with maven?? or is just enough to add the
> setter and getters method to the
> NamespaceContextImpl class???
>
> Andrea
>
> Guillaume Nodet ha scritto:
> > If the same config was working in 3.2.1, it may be caused by an upgrade
> of
> > xbean which is used to parse the spring xml configuration.   I must
> admit
> > the map support in xbean is kinda difficult to understand :-(
> >
> > Looking at the "same" class in servicemix-eip, it redefines the getter /
> > setter so that they can be found by xbean in the generation phase.
> > Can you try adding those back and see if it works better ?
> >
> > On Tue, Mar 25, 2008 at 11:52 AM, Andrea Zoppello <[EMAIL PROTECTED]>
> > wrote:
> >
> >
> >> Hi,
> >>
> >> I've just downloaded the latest nightly build of servicemix 3.2.2 and
> it
> >> seems
> >> problem in evaluating expression with namespace are reappred in this
> >> version.
> >>
> >> When i write in the drools rule a rule with namespace prefix, this will
> >> cause
> >> a runtime errors saying the namespace is not bound.
> >>
> >> What i've found is that at deployment phase the namespace context is
> not
> >> populated.
> >>
> >> This seem strange because in the xbean of drools su i've declared
> >> namespace context
> >> as i'm usually able to declare.
> >>
> >> Any idea??
> >>
> >> Here my xbean:
> >>
> >> <?xml version="1.0"?>
> >> <beans xmlns:sm="http://servicemix.apache.org/config/1.0";
> >>      xmlns:drools="http://servicemix.apache.org/drools/1.0";
> >>      xmlns:Es2_v_0="urn:eng:spagic:processes:Es2:v0"
> >>      xmlns:util="http://www.springframework.org/schema/util";>
> >>           <drools:endpoint
> >>           service="Es2_v_0:Es2.Val2Livello_v_0"
> >>           endpoint="Es2.Val2Livello_v_0"
> >>           ruleBaseResource="classpath:val2.drl"
> >>           namespaceContext="#nsContext"
> >>           assertedObjects="#assertedObjects"
> >>           defaultTargetService="Es2_v_0:Es2.Router1_v_0">
> >>
> >>             </drools:endpoint>
> >>             <util:list id="assertedObjects">
> >>             <ref bean="dbhelper"/>
> >>       </util:list>
> >>             <bean id="dbhelper" class="org.spagic.smx.helpers.DbHelper
> ">
> >>       </bean>
> >>
> >>       <drools:endpoint
> >>           service="Es2_v_0:Es2.Router1_v_0"
> >>           endpoint="Es2.Router1_v_0"
> >>           ruleBaseResource="classpath:Es2.Router1_v_0.drl"
> >>           namespaceContext="#nsContext">
> >>       </drools:endpoint>
> >>
> >>       <drools:endpoint
> >>           service="Es2_v_0:Es2.Router2_v_0"
> >>           endpoint="Es2.Router2_v_0"
> >>           ruleBaseResource="classpath:Es2.Router2_v_0.drl"
> >>           namespaceContext="#nsContext">
> >>       </drools:endpoint>
> >>
> >>       <drools:namespace-context id="nsContext">
> >>             <drools:namespaces>
> >>           <drools:namespace
> >> prefix="spgtypes">urn:spagic:crm:types</drools:namespace>
> >>           <drools:namespace
> >> prefix="restart">urn:it:eng:spagic:restart</drools:namespace>
> >>           <drools:namespace
> >> prefix="spagic">urn:it:eng:spagic</drools:namespace>
> >>           <drools:namespace
> >> prefix="spgser">urn:spagic:crm:services</drools:namespace>
> >>             </drools:namespaces>
> >>       </drools:namespace-context>
> >> </beans>
> >>
> >> Here the drools file causing the problem is:
> >>
> >> package org.apache.servicemix.drools
> >>
> >> import org.apache.servicemix.drools.model.Exchange;
> >> import org.spagic.smx.helpers.DbHelper;
> >>
> >> global org.apache.servicemix.drools.model.JbiHelper jbi;
> >>
> >> rule "Route FaultInFlow "
> >>   when
> >>       me : Exchange( status == Exchange.ACTIVE, in : in != null )
> >>       eval( in.xpath("/spgser:in/spgtypes:TIPO_SERVIZIO = '10'") )
> >>   then
> >>       jbi.routeToDefault("<Fault> Tipo Servizio 10 </Fault>");
> >>   end
> >>
> >>
> >>
> >
> >
> >
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Reply via email to