2017-01-05 1 views
0

J'ai une exigence pour créer de manière dynamique un point de terminaison camel-bindy pour la gestion de l'entrée. Voici l'exemple de code:Quel est le point de terminaison Camel pour le marshalling utilisant bindy dataformat?

<dataFormats> 
    <bindy id="bookModel" type="Csv" classType="org.camelcookbook.transformation.csv.model.BookModel"/> 
</dataFormats> 
<route> 
    <from uri="direct:unmarshal"/> 
    <!-- <unmarshal ref="bookModel"/> --> 
    <to uri="dataformat:bindy:unmarshal?ref=bookModel"/>  
</route> 

au lieu de la balise unmarshal, je dois passer l'échange à la fin du point équivalent, mais obtenir erreur « Vous ne trouvez pas dataformat avec le nom Bindy »

+0

J'utiliserai "recipientList" pour router dynamiquement le message vers le classeur bindy approprié. – Raghavan

+0

Avez-vous ajouté camel-bindy comme dépendance à votre chemin de classe. –

+0

Oui, Claus. Il a été ajouté – Raghavan

Répondre

1

Il existe plusieurs formats de données bindy: csv, longueur fixe, paire clé-valeur.

Leurs noms de format de données respectives à utiliser avec la "dataformat:" uri point final sont:

  • Bindy-csv,
  • Bindy fixe,
  • Bindy-kvp

Donc, dans votre cas, vous devez spécifier unmarshalling comme suit:

<to uri="dataformat:bindy-csv:unmarshal?ref=bookModel"/>