이 콘텐츠는 선택한 언어로 제공되지 않습니다.

Chapter 1. Introduction to the File Binding Component


Abstract

The file binding component allows you to create endpoints that read files from a file system and write files out to the file system.
Important
The Java Business Integration components of Red Hat JBoss Fuse are considered deprecated. You should consider migrating any JBI applications to OSGi.

Overview

The file component provides integration to the file system. It can be used to read and write files via URI. It can also be configured to periodically poll directories for new files.
It allows for the creation of two types of endpoint:
poller endpoint
A poller endpoint polls a specified location on the file system for files. When it finds a file it reads the file and sends it to the NMR for delivery to the appropriate endpoint.
Important
A poller endpoint can only create in-only message exchanges.
sender endpoint
A sender endpoint receives messages from the NMR. It then writes the contents of the message to a specified location on the file system.

Key features

The file component has the following advanced features:
  • custom filters for selecting files
  • custom marshalers for converting the contents of a file to and from a normalized message
  • custom locking mechanism for controlling file access during reads
  • archiving of read files

Contents of a file component service unit

A service unit that configures the file binding component will contain two artifacts:
xbean.xml
The xbean.xml file contains the XML configuration for the endpoint defined by the service unit. The contents of this file are the focus of this guide.
Note
The service unit can define more than one endpoint.
meta-inf/jbi.xml
The jbi.xml file is the JBI descriptor for the service unit. Example 1.1, “JBI descriptor for a file component service unit” shows a JBI descriptor for a file component service unit.

Example 1.1. JBI descriptor for a file component service unit

<jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0">
  <services binding-component="false" />
</jbi>
Copy to Clipboard Toggle word wrap
Tip
The developer typically does not need to hand code this file. It is generated by the Red Hat JBoss Fuse Maven tooling.

OSGi Packaging

You can package file endpoints in an OSGi bundle. To do so, you need to make two minor changes:
  • you will need to include an OSGi bundle manifest in the META-INF folder of the bundle.
  • You need to add the following to your service unit's configuration file:
    <bean class="org.apache.servicemix.common.osgi.EndpointExporter" />
    Copy to Clipboard Toggle word wrap
Important
When you deploy file endpoints in an OSGi bundle, the resulting endpoints are deployed as a JBI service unit.
For more information on using the OSGi packaging see Appendix D, Using the Maven OSGi Tooling.

Namespace

The elements used to configure file endpoints are defined in the http://servicemix.apache.org/file/1.0 namespace. You will need to add a namespace declaration similar to the one in Example 1.2, “Namespace declaration for using file endpoints” to your xbean.xml file's beans element.

Example 1.2. Namespace declaration for using file endpoints

<beans ...
       xmlns:file="http://servicemix.apache.org/file/1.0"
       ... >
  ...
</beans>
Copy to Clipboard Toggle word wrap
In addition, you need to add the schema location to the Spring beans element's xsi:schemaLocation as shown in Example 1.3, “Schema location for using file endpoints”.

Example 1.3. Schema location for using file endpoints

<beans ...
       xsi:schemaLocation="...
http://servicemix.apache.org/file/1.0 http://servicemix.apache.org/file/1.0/servicemix-file.xsd
...">
  ...
</beans>
Copy to Clipboard Toggle word wrap
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat