Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Please check this section for the additional information on how JAX-RS JAXB-based providers can be configured.

Multiparts

...

It's possible to control various properties associated with caching large attachments via the following per-endpoint contextual properties:

Property Name

Value

attachment-memory-threshold

The threshold value in bytes to switch from memory to file caching. The default value is 1024K.

attachment-max-size

The data size in bytes to limit the maximum data size to be cached. Since CXF 3.0.16, 3.1.14, 3.2.1.

No max size is set by default. When the limits is reached, the error is returned. JAX-WS consumers will receive 500, JAX-RS/HTTP consumers: 413.

attachment-directory

The directory name for storing the temporary files. None is specified by default.

attachment-max-header-size

The maximum MIME Header Length. The default is 300. This value can also be set by the system property "org.apache.cxf.attachment-max-header-size".

If no per-endpoint contextual properties are specified, then CXF checks any values that are set for the corresponding System properties listed below for large data stream caching and re-uses them for caching attachments.

Large data stream caching

A large stream based message or data will be cached in a temporary file. In default, this caching occurs at data size larger than 64K bytes and a temporary file , which is written in the system's temporary directory. You can change this behavior and other properties of the caching feature by explicitly setting the following properties.

...

Property Name

Value

org.apache.cxf.io.CachedOutputStream.Threshold

The threshold value in bytes to switch from memory to file caching. Note that if you are using attachments, the value (or default value) set for the "attachment-memory-threshold" property will override this valueThe default value is 128K for CachedOutputStream and 64K for CachedWriter.

org.apache.cxf.io.CachedOutputStream.MaxSize

The data size in bytes to limit the maximum data size to be cached. No max size is set by default.

org.apache.cxf.io.CachedOutputStream.OutputDirectory

The directory name for storing the temporary files. None is specified by default.

org.apache.cxf.io.CachedOutputStream.CipherTransformation

The cipher transformation name for encrypting the cached content. None is specified by default.

To change the default behavior for a specific bus, you can set the corresponding bus.io.CachedOutputStream properties (e.g., bus.io.CachedOutputStream.Threshold for org.apache.cxf.io.CachedOutputStream.Threshold).

...