exceptionfactory opened a new pull request, #8840: URL: https://github.com/apache/nifi/pull/8840
# Summary [NIFI-13236](https://issues.apache.org/jira/browse/NIFI-13236) Corrects filename encoding for the HTTP `Content-Disposition` header when downloading files from FlowFile Queues or Provenance event references over HTTP/2. The HTTP/2 protocol implementation in Jetty 12 includes character encoding validation for HTTP response headers, resulting in an `IllegalArgumentException` when attempting to write invalid characters. [RFC 9110](https://www.rfc-editor.org/rfc/rfc9110.html) requires that HTTP header values consist of specific characters in the ASCII character set, so characters outside of the set must be encoded. The Spring Framework [ContentDisposition](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/http/ContentDisposition.html) supports parsing and encoding filename values according to RFC standards. Replacing existing `Content-Disposition` header formatting with encoded formatting based on the Spring Framework class enables support for extended character sets, such as UTF-8. # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [X] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - [X] Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-00000` - [X] Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-00000` ### Pull Request Formatting - [X] Pull Request based on current revision of the `main` branch - [X] Pull Request refers to a feature branch with one commit containing changes # Verification Please indicate the verification steps performed prior to pull request creation. ### Build - [X] Build completed using `mvn clean install -P contrib-check` - [X] JDK 21 ### UI Contributions - [ ] NiFi is modernizing its UI. Any contributions that update the [current UI](https://github.com/apache/nifi/tree/main/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui) also need to be implemented in the [new UI](https://github.com/apache/nifi/tree/main/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/src/main/nifi). ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
