[Bug]: Invalid Domain name in URL to PDF crashes the website ui
The Problem
When giving the "URL To PDF" an invalid domain name like https://fjsdaklf.example.org it crashes the website ui.
Version of Stirling-PDF
0.26.1
Last Working Version of Stirling-PDF
No response
Page Where the Problem Occurred
/url-to-pdf
Docker Configuration
No response
Relevant Log Output
stirling-pdf-1 | 14:15:15.691 [qtp1681318273-50] INFO s.s.SPDF.utils.ProcessExecutor - Running command: weasyprint https://fjsdaklf.example.org /tmp/output_3943997749591159185.pdf
stirling-pdf-1 | 14:15:16.378 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - Traceback (most recent call last):
stirling-pdf-1 | 14:15:16.378 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 1344, in do_open
stirling-pdf-1 | 14:15:16.378 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - h.request(req.get_method(), req.selector, req.data, headers,
stirling-pdf-1 | 14:15:16.378 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1336, in request
stirling-pdf-1 | 14:15:16.378 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - self._send_request(method, url, body, headers, encode_chunked)
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1382, in _send_request
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - self.endheaders(body, encode_chunked=encode_chunked)
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - self._send_output(message_body, encode_chunked=encode_chunked)
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - self.send(msg)
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1035, in send
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - self.connect()
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1470, in connect
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - super().connect()
stirling-pdf-1 | 14:15:16.381 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/http/client.py", line 1001, in connect
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - self.sock = self._create_connection(
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/socket.py", line 828, in create_connection
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - for res in getaddrinfo(host, port, 0, SOCK_STREAM):
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/socket.py", line 963, in getaddrinfo
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - socket.gaierror: [Errno -2] Name does not resolve
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor -
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - During handling of the above exception, another exception occurred:
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor -
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - Traceback (most recent call last):
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 258, in fetch
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - result = url_fetcher(url)
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 223, in default_url_fetcher
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - response = urlopen(
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 215, in urlopen
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - return opener.open(url, data, timeout)
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 515, in open
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - response = self._open(req, data)
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 532, in _open
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - result = self._call_chain(self.handle_open, protocol, protocol +
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 492, in _call_chain
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - result = func(*args)
stirling-pdf-1 | 14:15:16.382 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 1392, in https_open
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - return self.do_open(http.client.HTTPSConnection, req,
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/urllib/request.py", line 1347, in do_open
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - raise URLError(err)
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - urllib.error.URLError: <urlopen error [Errno -2] Name does not resolve>
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor -
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - During handling of the above exception, another exception occurred:
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor -
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - Traceback (most recent call last):
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/bin/weasyprint", line 8, in <module>
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - sys.exit(main())
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/__main__.py", line 180, in main
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - html = HTML(
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 166, in __init__
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - with result as (source_type, source, base_url, protocol_encoding):
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - return next(self.gen)
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 382, in _select_source
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - with result as result:
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - return next(self.gen)
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 390, in _select_source
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - with fetch(url_fetcher, url) as result:
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
stirling-pdf-1 | 14:15:16.383 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - return next(self.gen)
stirling-pdf-1 | 14:15:16.384 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - ^^^^^^^^^^^^^^
stirling-pdf-1 | 14:15:16.384 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 260, in fetch
stirling-pdf-1 | 14:15:16.384 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - raise URLFetchingError(f'{type(exception).__name__}: {exception}')
stirling-pdf-1 | 14:15:16.384 [Thread-47] INFO s.s.SPDF.utils.ProcessExecutor - weasyprint.urls.URLFetchingError: URLError: <urlopen error [Errno -2] Name does not resolve>
stirling-pdf-1 | 14:15:16.425 [qtp1681318273-50] WARN o.e.j.ee10.servlet.ServletChannel - handleException /api/v1/convert/url/pdf java.io.IOException: Command process failed with exit code 1. Error message: Traceback (most recent call last):
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 1344, in do_open
stirling-pdf-1 | h.request(req.get_method(), req.selector, req.data, headers,
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1336, in request
stirling-pdf-1 | self._send_request(method, url, body, headers, encode_chunked)
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1382, in _send_request
stirling-pdf-1 | self.endheaders(body, encode_chunked=encode_chunked)
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders
stirling-pdf-1 | self._send_output(message_body, encode_chunked=encode_chunked)
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output
stirling-pdf-1 | self.send(msg)
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1035, in send
stirling-pdf-1 | self.connect()
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1470, in connect
stirling-pdf-1 | super().connect()
stirling-pdf-1 | File "/usr/lib/python3.12/http/client.py", line 1001, in connect
stirling-pdf-1 | self.sock = self._create_connection(
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/socket.py", line 828, in create_connection
stirling-pdf-1 | for res in getaddrinfo(host, port, 0, SOCK_STREAM):
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/socket.py", line 963, in getaddrinfo
stirling-pdf-1 | for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | socket.gaierror: [Errno -2] Name does not resolve
stirling-pdf-1 |
stirling-pdf-1 | During handling of the above exception, another exception occurred:
stirling-pdf-1 |
stirling-pdf-1 | Traceback (most recent call last):
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 258, in fetch
stirling-pdf-1 | result = url_fetcher(url)
stirling-pdf-1 | ^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 223, in default_url_fetcher
stirling-pdf-1 | response = urlopen(
stirling-pdf-1 | ^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 215, in urlopen
stirling-pdf-1 | return opener.open(url, data, timeout)
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 515, in open
stirling-pdf-1 | response = self._open(req, data)
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 532, in _open
stirling-pdf-1 | result = self._call_chain(self.handle_open, protocol, protocol +
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 492, in _call_chain
stirling-pdf-1 | result = func(*args)
stirling-pdf-1 | ^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 1392, in https_open
stirling-pdf-1 | return self.do_open(http.client.HTTPSConnection, req,
stirling-pdf-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/urllib/request.py", line 1347, in do_open
stirling-pdf-1 | raise URLError(err)
stirling-pdf-1 | urllib.error.URLError: <urlopen error [Errno -2] Name does not resolve>
stirling-pdf-1 |
stirling-pdf-1 | During handling of the above exception, another exception occurred:
stirling-pdf-1 |
stirling-pdf-1 | Traceback (most recent call last):
stirling-pdf-1 | File "/usr/bin/weasyprint", line 8, in <module>
stirling-pdf-1 | sys.exit(main())
stirling-pdf-1 | ^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/__main__.py", line 180, in main
stirling-pdf-1 | html = HTML(
stirling-pdf-1 | ^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 166, in __init__
stirling-pdf-1 | with result as (source_type, source, base_url, protocol_encoding):
stirling-pdf-1 | File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
stirling-pdf-1 | return next(self.gen)
stirling-pdf-1 | ^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 382, in _select_source
stirling-pdf-1 | with result as result:
stirling-pdf-1 | File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
stirling-pdf-1 | return next(self.gen)
stirling-pdf-1 | ^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 390, in _select_source
stirling-pdf-1 | with fetch(url_fetcher, url) as result:
stirling-pdf-1 | File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
stirling-pdf-1 | return next(self.gen)
stirling-pdf-1 | ^^^^^^^^^^^^^^
stirling-pdf-1 | File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 260, in fetch
stirling-pdf-1 | raise URLFetchingError(f'{type(exception).__name__}: {exception}')
stirling-pdf-1 | weasyprint.urls.URLFetchingError: URLError: <urlopen error [Errno -2] Name does not resolve>
### Additional Information
_No response_
### Browsers Affected
Chrome, Safari, Other
### No Duplicate of the Issue
- [X] I have verified that there are no existing issues raised related to my problem.
Hi @benni347 , I just did a test with your URL (.vip) and it worked without any problems.
There may be a typo or your DNS doesn't recognize the page or your firewall is preventing it...
Hi @Ludy87 I just pulled and built stirling locally on my development machine, after building it I tested it again with the url https://fjsdaklf.example.org I got I guess the same error. When I test it with a valid domain like https://example.org it works fine. The bug is probably in the fact that the error is not handled when an invalid url is parsed to /api/v1/convert/url/pdf.
I assume the error is being caused by these lines not catching any errors. https://github.com/Stirling-Tools/Stirling-PDF/blob/cbe92269f4eab07ce28cd8506ea8dfb6b07c39b9/src/main/java/stirling/software/SPDF/controller/api/converters/ConvertWebsiteToPDF.java#L44-L60
Stack Log
java.io.IOException: Command process failed with exit code 1. Error message: Traceback (most recent call last): File "/usr/lib/python3.12/urllib/request.py", line 1344, in do_open h.request(req.get_method(), req.selector, req.data, headers, File "/usr/lib/python3.12/http/client.py", line 1336, in request self._send_request(method, url, body, headers, encode_chunked) File "/usr/lib/python3.12/http/client.py", line 1382, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output self.send(msg) File "/usr/lib/python3.12/http/client.py", line 1035, in send self.connect() File "/usr/lib/python3.12/http/client.py", line 1470, in connect super().connect() File "/usr/lib/python3.12/http/client.py", line 1001, in connect self.sock = self._create_connection( ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/socket.py", line 829, in create_connection for res in getaddrinfo(host, port, 0, SOCK_STREAM): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/socket.py", line 964, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ socket.gaierror: [Errno -2] Name or service not known During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 258, in fetch result = url_fetcher(url) ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 223, in default_url_fetcher response = urlopen( ^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 215, in urlopen return opener.open(url, data, timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 515, in open response = self._open(req, data) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 532, in _open result = self._call_chain(self.handle_open, protocol, protocol + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 492, in _call_chain result = func(*args) ^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 1392, in https_open return self.do_open(http.client.HTTPSConnection, req, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 1347, in do_open raise URLError(err) urllib.error.URLError: <urlopen error [Errno -2] Name or service not known> During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/bin/weasyprint", line 8, in <module> sys.exit(main()) ^^^^^^ File "/usr/lib/python3.12/site-packages/weasyprint/__main__.py", line 180, in main html = HTML( ^^^^^ File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 166, in __init__ with result as (source_type, source, base_url, protocol_encoding): File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__ return next(self.gen) ^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 382, in _select_source with result as result: File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__ return next(self.gen) ^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 390, in _select_source with fetch(url_fetcher, url) as result: File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__ return next(self.gen) ^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 260, in fetch raise URLFetchingError(f'{type(exception).__name__}: {exception}') weasyprint.urls.URLFetchingError: URLError: <urlopen error [Errno -2] Name or service not known> for path: /api/v1/convert/url/pdf
java.io.IOException: Command process failed with exit code 1. Error message: Traceback (most recent call last):
File "/usr/lib/python3.12/urllib/request.py", line 1344, in do_open
h.request(req.get_method(), req.selector, req.data, headers,
File "/usr/lib/python3.12/http/client.py", line 1336, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/lib/python3.12/http/client.py", line 1382, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output
self.send(msg)
File "/usr/lib/python3.12/http/client.py", line 1035, in send
self.connect()
File "/usr/lib/python3.12/http/client.py", line 1470, in connect
super().connect()
File "/usr/lib/python3.12/http/client.py", line 1001, in connect
self.sock = self._create_connection(
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/socket.py", line 829, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/socket.py", line 964, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
socket.gaierror: [Errno -2] Name or service not known
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 258, in fetch
result = url_fetcher(url)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 223, in default_url_fetcher
response = urlopen(
^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 215, in urlopen
return opener.open(url, data, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 515, in open
response = self._open(req, data)
^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 532, in _open
result = self._call_chain(self.handle_open, protocol, protocol +
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 492, in _call_chain
result = func(*args)
^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 1392, in https_open
return self.do_open(http.client.HTTPSConnection, req,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 1347, in do_open
raise URLError(err)
urllib.error.URLError: <urlopen error [Errno -2] Name or service not known>
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/weasyprint", line 8, in <module>
sys.exit(main())
^^^^^^
File "/usr/lib/python3.12/site-packages/weasyprint/__main__.py", line 180, in main
html = HTML(
^^^^^
File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 166, in __init__
with result as (source_type, source, base_url, protocol_encoding):
File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
return next(self.gen)
^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 382, in _select_source
with result as result:
File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
return next(self.gen)
^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/weasyprint/__init__.py", line 390, in _select_source
with fetch(url_fetcher, url) as result:
File "/usr/lib/python3.12/contextlib.py", line 137, in __enter__
return next(self.gen)
^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/weasyprint/urls.py", line 260, in fetch
raise URLFetchingError(f'{type(exception).__name__}: {exception}')
weasyprint.urls.URLFetchingError: URLError: <urlopen error [Errno -2] Name or service not known>
at stirling.software.SPDF.utils.ProcessExecutor.runCommandWithOutputHandling(ProcessExecutor.java:190)
at stirling.software.SPDF.utils.ProcessExecutor.runCommandWithOutputHandling(ProcessExecutor.java:85)
at stirling.software.SPDF.controller.api.converters.ConvertWebsiteToPDF.urlToPdf(ConvertWebsiteToPDF.java:56)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
at org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736)
at org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1614)
at org.eclipse.jetty.ee10.websocket.servlet.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:195)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at stirling.software.SPDF.config.security.IPRateLimitingFilter.doFilter(IPRateLimitingFilter.java:62)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at stirling.software.SPDF.config.security.UserBasedRateLimitingFilter.doFilterInternal(UserBasedRateLimitingFilter.java:48)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:110)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at stirling.software.SPDF.config.security.FirstLoginFilter.doFilterInternal(FirstLoginFilter.java:53)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at stirling.software.SPDF.config.MetricsFilter.doFilterInternal(MetricsFilter.java:61)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108)
at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
at org.springframework.security.web.ObservationFilterChainDecorator$FilterObservation$SimpleFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:479)
at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:340)
at org.springframework.security.web.ObservationFilterChainDecorator.lambda$wrapSecured$0(ObservationFilterChainDecorator.java:82)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:128)
at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at stirling.software.SPDF.config.security.UserAuthenticationFilter.doFilterInternal(UserAuthenticationFilter.java:41)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240)
at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323)
at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224)
at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74)
at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:109)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
at org.eclipse.jetty.ee10.servlet.FilterHolder.doFilter(FilterHolder.java:205)
at org.eclipse.jetty.ee10.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1586)
at org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1547)
at org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:824)
at org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:436)
at org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:464)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:575)
at org.eclipse.jetty.ee10.servlet.SessionHandler.handle(SessionHandler.java:703)
at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:851)
at org.eclipse.jetty.server.Server.handle(Server.java:179)
at org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:635)
at org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:411)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:478)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:441)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)
at java.base/java.lang.Thread.run(Thread.java:1583)
[Submit a ticket on GitHub](https://github.com/Stirling-Tools/Stirling-PDF/issues) [Join our Discord server](https://discord.gg/Cn8pWhQRxZ)
May I work on this issue if it hasn't been addressed yet? @Frooodle
Certainly