-
-
Notifications
You must be signed in to change notification settings - Fork 499
Open
Description
Describe the bug
After upgrade from 4.2.12 to 4.2.13, the geonetwork portal us unresponsive and logs give the following SwErr
06-Aug-2025 13:34:39.140 INFO [http-nio-8080-exec-10] org.apache.coyote.http11.Http11Processor.service Error parsing HTTP request header
Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x07a0x010x000x07]0x030x030x0bQ0x870xa5[0xd10x170x990x990xce0xc10xfdz0xa9k0xc1=0xee0x0d0xa60xf6t^0xa3{S0xff0xab00xa70xfa0xae ]. HTTP method names must be tokens
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:404)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:270)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
06-Aug-2025 13:34:39.154 INFO [http-nio-8080-exec-1] org.apache.coyote.http11.Http11Processor.service Error parsing HTTP request header
Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x07a0x010x000x07]0x030x030x050x000xe4w0xcf0xd7"v40x9eV0x040xa30xa80x1e=0xf1@_0x9b_0xc30xa00x020xb5{N0xaad0xf90x070x91 ]. HTTP method names must be tokens
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:404)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:270)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Thread.java:750)
To Reproduce
Steps to reproduce the behavior:
- Upgrade to 4.2.13
- Open Firefox to url 'http://localhost:8080'
- SwErr!
¯\_ (ツ)_/¯
Expected behavior
I expect the portal to just-work
Screenshots
x
Log file
x
Setup:
- Browser: Firefox 141 with "Don't enable HTTPS-Only Mode". But happens on Edge and Chrome too.
- Server application:
- Adoptium Open Java JRE 8u462-b08. But, I tried earlier versions too
- Tomcat 9.0.106. But I tried earlier versions too 9.0.87
- GeoNetwork: upgrade to 4.2.13
- HNAP upgrade to 4.2.13
- my own docker container environment
- ElasticSearch and Kibana 7.17.15. But, also tried newest .29
Additional context
Tomcat <Connector>
s:
- protocol="HTTP/1.1", for both
- SSLEnabled="true" secure="true" sslProtocol="TLS" and local cert, for HTTPS
- http connector scheme="http" https connector scheme="https" .. in local testing but both become https when i deploy to azure.
- using proxyName and proxyPort to eliminate use of reverse-proxy
flowchart
subgraph cont[Container]
subgraph tomcat[Tomcat]
subgraph connectors[Connectors]
http[HTTP/8080]
https[HTTPS/4430</br>SSL/TLS</br>Self-signed Cert]
http -- redirect 4430 --> https
end
end
health[Internal Health] -- 8080 --> http
health -- 4430 --> https
end
firefox[FireFox</br>http:80 or</br>http:8080</br>'Don’t enable HTTPS-Only Mode']
edge[Edge</br>https:443 or</br>https:4430]
firefox -- 80:8080</br>8080:8080 --> http
edge -- 443:4430</br>4430:4430 --> https
Metadata
Metadata
Assignees
Labels
No labels