サンプルコード (FileToFileのCamelサンプル) | 2012-03-13 17:34 |
documents (OSC2015沖縄セミナー資料) | 2015-07-09 11:48 |
コンポーネント名 | URI | 説明 |
AHCコンポーネント | ahc:hostname[:port] | 外部HTTPサービスを呼び出します。Async Http Clientを使います。 |
AMQPコンポーネント | amqp:[topic:]destinationName | AMQPプロトコルでメッセージング |
APNSコンポーネント | apns:notify?options | Apple iOSデバイスに通知を送る |
Atomコンポーネント | atom:uri | atomと接続用でApache Abderaを使う。例えばatomフィードを読み込みます。 |
AWS-DDBコンポーネント | aws-ddb://tableName?options | AmazonのDynamoDB(DDB)を使います |
AWS-SDBコンポーネント | aws-sdb://domainName?options | AmazonのSimpleDB(SDB)を使います |
AWS-SESコンポーネント | aws-ses://from?options | AmazonのSimple Email Service(SES)を使います |
AWS-SNSコンポーネント | aws-sns://topicname?options | AmazonのSimple Notification Service(SNS)を使ってメッセージング |
AWS-SQSコンポーネント | aws-sqs://queuename?options | AmazonのSimple Queue Service(SQS)を使ってメッセージング |
AWS-S3コンポーネント | aws-s3://bucketname?options | AmazonのSimple Storage Service(S3)を使います。 |
Beanコンポーネント | bean:beanName?method=someMethod | RegistryにあるBeanとメッセージ交換する為にBean Bindingを使います。POJO(Plain Old Java Objects)を呼び出したり外出しする為に使われます。 |
Bean Validationコンポーネント | bean-validator:something | JavaバリデーションAPI(JSR303とJAXPバリデーション)を使ってメッセージのペイロードをチェックします。Hibernateバリデータ実装を参照します。 |
Browseコンポーネント | browse:someName | 簡単なBrowsableEndpointを提供します。これでテスト、可視化ツール、デバッグ時が便利になります。エンドポイントに送られたexchangeは全てブラウズ可能です。 |
Cacheコンポーネント | cache://cachename?options | キャッシュの実装として、キャッシュコンポーネントは楽にキャッシュエンドポイントの作成ができます。EHCacheを使って処理します。 |
Classコンポーネント | class:className?method=someMethod | RegistryにあるBeanとメッセージ交換する為にBean Bindingを使います。POJO(Plain Old Java Objects)を呼び出したり外出しする為に使われます。 |
Cometd | cometd://host:port/channelname | bayeux プロトコルのjetty cometd実装を使ってメッセージを配信する |
Contetコンポーネント | context:camelContextId:localEndpointName | 簡単なブラックボックス構成を提供する為に分割したCamelContextの中でエンドポイントを参照するのに使う |
Crypto(デジタル署名)コンポーネント | crypto:sign:name?options crypto:verify:name?options | exchangeの署名と検証に使う。Java Cryptographic Extensionの署名サービスを使います。 |
CXFコンポーネント | cxf:address?serviceClass=... | Apache CXFを使ってWebサービス接続します。 |
CXF Beanコンポーネント | cxf:bean name | RegistryにあるJAX-WSやJAX-RSアノテーションBeanを使ってexchangeを処理します。CXFコンポーネントより必要な設定は少ない。 |
CXFRSコンポーネント | cxfrs:address?resourcesClasses=... | RESTサービス接続としてApache CXFを使います |
DataSetコンポーネント | dataset:name | 大量&長期テストに使う。DataSetはコンポーネントに送信する為の大量メッセージを作成する機能を提供します。そして正常にメッセージが処理されるのを確認します。 |
Direct | direct:name | 同期的に別のエンドポイントを呼び出します。 |
DNSコンポーネント | dns:operation | ドメイン情報をルックアップし、DNSクエリを実行します。DNSJavaを使います。 |
EJB | ejb:ejbName?method=someMethod | SJBとメッセージ交換する為にBeanBindingを使用します。これはBeanコンポーネントのように動作しますが、EJBにしかアクセスしません。EJB3.0以降をサポートしています。 |
Eventコンポーネント | event://default spring-event://default | Spring ApplicationiEventsを使用します。 |
EventAdminコンポーネント | eventadmin:topic | OSGi EventAdminイベントを受信します。 |
Execコンポーネント | exec://executable?options | システムコマンドを実行します |
Fileコンポーネント | file://nameOfFileOrDirectory | ファイルにメッセージを送ったり、ファイルやディレクトリからポーリングします |
Flatpackコンポーネント | flatpack:fixed|delim:configFile | 固定長や区切りファイルやメッセージを処理します。FlatPackライブラリを使います |
FOPコンポーネント | fop:outputFormat | メッセージを異なった出力フォーマットに描写します。Apache FOPを使います。 |
FreeMarkerコンポーネント | freemarker:someTemplateResource | 応答メッセージを作成します。FreeMarkerテンプレートを使います |
FTPコンポーネント | ftp://host[:port]/fileName | FTPを使って送受信 |
FTPSコンポーネント | ftps://host[:port]/fileName | FTPセキュアを使って送受信(TLSとSSL) |
GAuthコンポーネント | gauth://name?options | WebアプリケーションでOAuthコンシューマ実装。「Camelコンポーネント for Google App Engine」も参照。 |
GHttpコンポーネント | ghttp://hostname[:port]/path?options ghttp:///path?options | Google App EngineのURLフェッチサービスとの接続。そしてサーブレットからのメッセージ受信にも使える。「Camelコンポーネント for Google App Engine」も参照 |
GLogineコンポーネント | glogin://hostname[:port]?options | Google App Engine(GAE)アプリケーションにプログラムでログインするためにGAEの外のCamelアプリケーションで使う |
GTaskコンポーネント | gtask://queue-name | メッセージキューであるタスクキューサービスを使ってGoogle App Engine上で非同期メッセージ処理をサポートする。「Camelコンポーネント for Google App Engine」を参照 |
GMail | gmail://user@gmail.com?options gmail://user@googlemail.com?options | Google App Engineのメールサービスを使ってeメールを送信する。「Camelコンポーネント for Google App Engine」を参照 |
Hazelcast | hazelcast://type:cachename?options | HazelcastはデータグリッドでJava(単一jar)での完全実装です。このコンポーネントはmap, multimap, seda, queue, set atomic number, simple clusterをサポートします。 |
HDFSコンポーネント | hdfs://path?options | HDFSファイルシステムを読み込み/書き込み、from/to |
HL7コンポーネント | mina:tcp://hostname[:port] | HL7 MLLPプロトコルとHL7モデルで動作します。HAPIライブラリを使います。 |
HTTPコンポーネント | http://hostname[:port] | 外部HTTPサーバを呼び出します。Apache HTTP Client 3.xを使います。 |
HTTP4コンポーネント | http4://hostname[:port] | 外部HTTPサーバを呼び出します。Apache HTTP Client 4.xを使います。 |
iBATISコンポーネント | ibatis://statementName | リレーショナルデータベースでクエリ、ポーリング、 insert, update, deleteが動作します。Apache iBATISを使います。 |
IMAPコンポーネント | imap://hostname[:port] | IMAPでeメールを受信します |
IRCコンポーネント | irc:host[:port]/#room | IRCコミュニケーション用 |
JavaSpaceコンポーネント | javaspace:jini://host?spaceName=mySpace?... | JavaSpaceを使ってメッセージの送受信 |
JBIコンポーネント | jbi:serviceName | JBI接続用。例えばApache ServiceMixを使う。 |
jcloudsコンポーネント | jclouds:blobstore|computservice:provider | クラウドコンピューティング&blobstoreサービスをjcloudを使って接続する |
JCRコンポーネント | jcr://user:password@repository/path/to/node | JCR準拠のレポジトリにメッセージを保存する。例えばApache Jackrabbit |
JDBCコンポーネント | jdbc:dataSourceName?options | JDBCクエリと操作の実行(ノントランザクション実装なので主にSELECT用) |
Jettyコンポーネント | jetty:url | HTTPでサービスを公開 |
JMSコンポーネント | jms:[topic:]destinationName | JMSプロバイダを使用 |
JMXコンポーネント | jmx://platform?options | JMX通知リスナを使用 |
JPAコンポーネント | jpa://entityName | JPA使用を使ってデータベースをキューとして使う。OpenJPA, Hibernate, TopLinkを使用 |
SCPコンポーネント | scp://localhost/destination | SCPプロトコルのサポート |
JT400コンポーネント | jt400://user:pwd@system/<path_to_dtaq> | AS/400(aka System i, IBM i, i5,...)システム上データキューと接続 |
Kestrelコンポーネント | kestrel://addresslist/queuename?options | Kestrelキューから送受信 |
Kratiコンポーネント | krati://to datastore/?options | Kratiデータストアからの送受信 |
Languageコンポーネント | language://languageName[:script]?options | Languageスクリプトを実行 |
LDAPコンポーネント | ldap:host[:port]?base=...&scope=<scope> | LDAPサーバ上で検索を実行(<scope>はobect|onelevel|subtreeのどれか必須) |
LOGコンポーネント | log:loggingCategory?level=ERROR | Jakarta CommonsLoggingを使ってメッセージexchangeのログをとります。これはlog4jのようないくつかのロギングシステムの元で動作します。 |
Luceneコンポーネント | lucene:searcherName:insert?analyzer=<analyzer> lucene:searcherName:query?analyzer=<analyzer> | Apache Luceneを使って、Javaベースのインデックスとフルテキストベースの検索を実行します。高度な分析や分割能力を使います。 |
Mailコンポーネント | mail://user-info@host:port | eメールの送受信 |
MINAコンポーネント | tcp|udp|vm:host[:port] | Apache MINAを使います |
Mockコンポーネント | mock:name | モックを使ったルートやルールのテスト用 |
MongoDBコンポーネント | mongodb:connection?options | MongoDBデータベースやコレクションとの接続。 |
MSVコンポーネント | msv:someLocalOrRemoteResource | メッセージのペイロードのチェック。MSVライブラリを使う |
MyBatisコンポーネント | mybatis://statementName | リレーショナルデータベースでクエリ、ポーリング、insert, update, deleteの実行。MyBatisを使う |
Nagiosコンポーネント | nagios://host[:port]?options | Nagiosにパッシブチェックを送信する。JSendNSCAを使う |
Nettyコンポーネント | netty:tcp//host[:port]?options netty:udp//host[:port]?options | TCPとUDPプロトコルを使用。JBoss Netty コミュニティプロジェクトによる提供のJava NIOベースが使えます。 |
Pax-Loggingコンポーネント | paxlogging:appender | OSGiでPax-Loggingイベントを受信 |
POPコンポーネント | pop3://user-info@host:port | POP3とJavaMailをを使ってeメール受信 |
Printerコンポーネント | lpr://host:port/path/to/printer?options | プリンターコンポーネントはローカル、リモート、ワイヤレスプリンタに対するプリンタエンドポイントを作成する機能があります。このエンドポイントはcamelルート上に使用された時にCamelのペイロードを直接印刷する事ができます |
Propertiesコンポーネント | properties://key?options | このPropertiesコンポーネントはエンドポイントURI定義でプロパティプレースホルダを直接使う機能があります |
Quartzコンポーネント | quartz://groupName/timerName | スケジュール通りにメッセージを配信する機能。Quartzスケジューラを使用します |
Quickfixコンポーネント | quickfix-server:config file quickfix-client:config-file | JavaエンジンであるQuickFixの実装。これはFIXメッセージの送受信ができます。 |
Refコンポーネント | ref:name | Registry内の既存のエンドポイントのルックアップ用コンポーネント |
Restletコンポーネント | restlet:restletUrl?options | Restfulリソースの送受信コンポーネント。Restletを使います。 |
RMIコンポーネント | rmi://host[:port] | RMIを使います |
RNCコンポーネント | rnc:/relativeOrAbsoluteUri | メッセージのペイロードのチェック。RelaxNG コンパクト構文を使います。 |
RNGコンポーネント | rng:/relativeOrAbsoluteUri | メッセージのペイロードのチェック。RelaxNGを使います |
Routeboxコンポーネント | routebox:routeboxName?options | 特別なエンドポイントの作成機能。これはカプセル化やstrategy/mapベースの間接サービスを提供します |
RSSコンポーネント | rss:uri | RSS接続としてROMEを使います。例えば、RSSフィードの受信 |
SEDAコンポーネント | seda:name | 同一CamelContext内で、別のエンドポイントを非同期呼び出しします。 |
SERVLETコンポーネント | servlet:uri | サーブレット上でHTTPを使ってサービスを提供します。これはWebコンテナ内にデプロイされた時に使います。 |
SFTPコンポーネント | sftp://host[:port]/fileName | SFTPを使ってファイルの送受信(FTP over SSH) |
SIPコンポーネント | sip://user@host[:port]?options sips://user@host[:port]?options | テレコムSIPプロトコルを使ってパブリッシュ/サブスクライブコミュニケーションができます。RFC3903-Session Initiation Protocol(SIP) Extension for Event |
SMTPコンポーネント | smtp://user-info@host[:port] | SMTPとJavaMailをつかってeメールを送信 |
SMPPコンポーネント | smpp://user-info@host[:port]?options | ショートメッセージサービスセンターを使ってSMSを送受信する。JSMPPライブラリを使います |
SNMPコンポーネント | snmp://host[:port]?options | SNMPを使ってOID値をポーリングしたり、TRAPを受信します。SNMP4Jライブラリを使います |
Solrコンポーネント | solr://host[:port]/solr?options | SolrjクライアントAPIを使って、ApacheLucene Solrサーバと接続します |
SpringIntegrationコンポーネント | spring-integration:defaultChannelName | CamelとSpringIntegrationのブリッジコンポーネント |
Spring Web Servicesコンポーネント | spring-ws:[mapping-type:]address?options | クライアント側はWebサービスにアクセスできます。サーバサイドは自分のWebサービスの初回接続の作成をサポートしています。Spring Web Servicesを使います。 |
SQLコンポーネント | sql:select * from table where id=# | JDBCを使ってSQLクエリを実行します |
SSHコンポーネント | ssh:[username[:password]@]host[:port]?options | SSHサーバにコマンドを送信 |
StAXコンポーネント | stax:contentHandlerClassName | SAX ContentHandlerを使ってメッセージを処理 |
Streamコンポーネント | stream:in|out|err|file | unixのパイプのように input/output/error/file ストリームを読み書きする。 |
String Templateコンポーネント | string-template:someTemplateResource | 返信メッセージを作成。String Templateを使います |
Stubコンポーネント | stub:someOtherCamelUri | 簡単にテストやデバッグできるようにするため、外部の物理ミドルウェアエンドポイントのスタブを作成します |
TCPコンポーネント | mina:tcp://host:port | Apache MINAを使ってTCPプロトコルを使う。 |
Testコンポーネント | test:expectedMessagesEndpointUri | モックエンドポイントを作成します。指定されたエンドポイントからポーリングした全てのメッセージボディを受信してチェックします。 |
Timerコンポーネント | timer://name | 指定された時間間隔でメッセージを送る |
Twitterコンポーネント | twitter://endpoint?options | Twitterに接続する |
UDPコンポーネント | mina:udp://host:port | UDPプロトコル動作。ApacheMINAを使用。 |
Validationプロトコル | validation:someLocalOrRemoteResource | XMLスキーマとJAXPバリデーションを使ってメッセージのペイロードをチェック |
Velocityコンポーネント | velocity:someTemplateResource | 応答メッセージを作成する。Apache Velocityテンプレートを使う。 |
VMコンポーネント | vm:name | 同一JVM内で別のエンドポイントを非同期に呼び出す |
Websocketコンポーネント | websocket://host:port/path | Websocketクライアントとして接続する |
XMPPコンポーネント | xmpp://host:port/room | XMPPとJabberを使う |
XQueryコンポーネント | xquery:someXQueryResource | 応答メッセージを作成する。XQueryテンプレートを使います |
XSLTコンポーネント | xslt:someTemplateResource | 応答メッセージを作成する。XSLTテンプレートを使います |
Zookeeperコンポーネント | zookeeper://host:port/path | ZooKeeperクラスターを使います。 |