Is there a way to change the default ServicemixMapper to another class of
your own? It seems that editing ode-jbi.properties wont do much.I edited
with my own class name and I got this at startup:

ERROR - ComponentMBeanImpl             - Could not start component
javax.jbi.JBIException: Message mapper class "
org.test.ode.CustomOdeServicemixMapper" could not be instantiated!
        at org.apache.ode.jbi.OdeLifeCycle.initMappers(OdeLifeCycle.java
:153)
        at org.apache.ode.jbi.OdeLifeCycle.init(OdeLifeCycle.java:104)
        at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(
ComponentMBeanImpl.java:200)
        at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(
ComponentMBeanImpl.java:286)
        at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(
ComponentMBeanImpl.java:215)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(
NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.commons.beanutils.MethodUtils.invokeMethod(
MethodUtils.java:216)


My class goes as follows:

public class CustomOdeServicemixMapper extends ServiceMixMapper {


    @Override
    public void toNMS(NormalizedMessage nms, Message odeMsg,
javax.wsdl.Message msgdef, QName fault) throws MessagingException,
MessageTranslationException {

        //Some code here

        super.toNMS(nms, odeMsg, msgdef, fault);
    }
}




Any ideas?

Thanks in advance,

Reply via email to