Yes, you found a workaround method by using the bean definition.
BTW, I already committed a patch in the trunk, please try it out when
Camel 2.5.0 released.
Willem
On 9/15/10 8:16 PM, Marcel Jager wrote:
Ok, thank you.
I guess this will be fixed in 2.5, for now I use the following construction:
<bean id="protobuf1"
class="org.apache.camel.dataformat.protobuf.ProtobufDataFormat">
<property name="instanceClass"
value="org.apache.camel.dataformat.protobuf.generated.AddressBookProtos$Person"/>
</bean>
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="direct:start"/>
<unmarshal ref="protobuf1"/>
<to uri="mock:result"/>
</route>
</camelContext>
Cheers,
Marcel Jager
On Tue, Sep 14, 2010 at 3:32 PM, Willem Jiang<willem.ji...@gmail.com>wrote:
Hi,
I just checked the schema of camel-spring, it's bug of Camel since Camel
2.3.0, I just logged a JIRA[1] for it and will commit a fix shortly.
[1]https://issues.apache.org/activemq/browse/CAMEL-3122
Willem
On 9/14/10 5:08 PM, Marcel Jager wrote:
Let me describe a step-by-step guide so you can recreate it.
Ok, I have constructed a small example using a freshly downloaded copy of
Camel 2.4.0.
I'am using the provided example protobuffer definition from the example:
addressbook.proto and run the protobuffer-compiler protoc to generate the
Java-files
After that created a spring-xml file in the META-INF/spring directory with
the following content:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd">
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="direct:start"/>
<unmarshal>
<protobuf
instanceClass="org.apache.camel.dataformat.protobuf.generated.AddressBookProtos$Person"
/>
</unmarshal>
<to uri="mock:result"/>
</route>
</camelContext>
</beans>