Object decoder = appctx.getBean("mydecoder");
        Object encoder = appctx.getBean("myencoder");
        
        SimpleRegistry registry = new SimpleRegistry(); 
        
        List<ChannelDownstreamHandler> encoders = new
ArrayList<ChannelDownstreamHandler>();
        encoders.add((ChannelDownstreamHandler)encoder);
        
        registry.put("myDecoder", decoder);
        registry.put("myEncoder", encoder);
        registry.put("myEncoders", encoders);
        
        CamelContext context = new DefaultCamelContext(registry);

        context.addRoutes(new RouteBuilder() {
            public void configure() throws Exception {
                from("direct:cpsp")
                .process(new MyToProcessor())
               
.to("netty:tcp://localhost:6789?encoder=#myEncoder&sync=true")
                .process(new MyFromProcessor());
            }
        });

why the to URI "encoder=#myEncoder"... exception like:

 Failed to create route route1 at: >>>
To[netty:tcp://localhost:6789?encoder=#myEncoder&sync=true] <<< in route:
Route[[From[direct:cpsp]] -> [process[Wrap[com.sunyard.camel... because of
Failed to resolve endpoint:
netty://tcp://localhost:6789?encoder=%23myEncoder&sync=true due to: Could
not find a suitable setter for property: encoder as there isn't a setter
method with same type: java.lang.String nor type conversion possible: No
type converter available to convert from type: java.lang.String to the
required type: org.jboss.netty.channel.ChannelDownstreamHandler with value
#myEncoder

but that's ok if URI set to "encoders=#myEncoders".

--
View this message in context: 
http://camel.465427.n5.nabble.com/in-netty-why-sended-6bytes-but-server-recved-9bytes-tp5131271p5148545.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to