Ravi, answer for you is always same, use latest camel 2.19.0 without SwitchYard 
or ask Red Hat support. Stop abuse camel user community.


On 05/10/2017 01:48 AM, ravi21588 wrote:
Hi iam getting NoTypeConversionAvailableException  while using xpath in
camel,iam using camel 2.10.Iam getting this exception only in junit test
case,but it is working fine while deployed in Jboss EAP server.

My camel route is as below:

<?xml version="1.0" encoding="ASCII"?>
<routes xmlns="http://camel.apache.org/schema/spring";>
        <route id="TranslatorRoute" streamCache="true">
                <from uri="switchyard://TranslatorService" />
                <doTry>
                        <choice>
                                <when>
                                        <xpath>//response-type='ERROR'</xpath>
                                        <log message="choice ${body} " 
loggingLevel="INFO"/>
                                </when>
                                <otherwise>
                                        <log message="Otherwise ${body} " 
loggingLevel="INFO"/>
                                        
                                </otherwise>
                        </choice>
                        
                        <doCatch>
                                <exception>java.lang.Exception</exception>
                                <handled>
                                        <constant>false</constant>
                                </handled>
                                <log message="Exception " loggingLevel="INFO" />
                        </doCatch>
                </doTry>
        </route>
</routes>

iam sending a jaxb object as input for the switchyard://TranslatorService
service when invoking from Junit test case.

Iam getting the below type conversion exception when it is calling the camel
XPATH.


org.apache.camel.RuntimeCamelException:
org.apache.camel.NoTypeConversionAvailableException: No type converter
available to convert from type: com.company.esb.message.model.v2.EsbMessage
to the required type: org.w3c.dom.Document with value <?xml version="1.0"
encoding="UTF-8" standalone="yes"?>
<ns2:esb-message xmlns:ns2="http://messagev2.esb.company.com/";>
        <header>
                <identity>
                        <user-id>esb_USER</user-id>
                </identity>
                <esb-service-name>createPolicy</esb-service-name>
                <source-system-id>CU_MC</source-system-id>
                <message-type>RES</message-type>
                <message-id>ID-CG02B459-61540-1470327657377-0-4</message-id>
                
<correlation-id>ID-CG02B459-61540-1470327657377-0-4</correlation-id>
                <source-transaction-id>1234567890</source-transaction-id>
                <message-date-time>2017-05-09T17:21:33</message-date-time>
                <esb-environment>DEV</esb-environment>
                 <response-type>DONE</response-type>
        </header>
</ns2:esb-message>


I have already defined the typeconverter for the Object as below and added
the TypeConverter file in META-INF services.

package com.company.esb.message.camel;

import java.io.ByteArrayInputStream;
import java.io.InputStream;

import org.apache.camel.Converter;

import com.company.esb.message.esbMessageHandler;
import com.company.esb.message.model.v2.esbMessage;

@Converter
public class esbMessageConverter {

        @Converter
        public static InputStream toInputStream (esbMessage msg) throws 
Exception {
                String val=new esbMessageHandler(msg).getMessageAsString();
                return new ByteArrayInputStream(val.getBytes("UTF-8"));
        }
        
        @Converter
        public static String toString (esbMessage msg) throws Exception {
                return new esbMessageHandler(msg).getMessageAsString();
        }
        
        @Converter
        public static esbMessage fromString (String src) throws Exception {
                return esbMessageHandler.readesbMessageFromXml(src);
        }
}

can you please help me with this issue.





--
View this message in context: 
http://camel.465427.n5.nabble.com/NoTypeConversionAvailableException-exception-while-running-junit-test-case-tp5799177.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to