Z mojego zrozumienia, nie ma czegoś takiego jak parametry POST i GET parametry HTTP, tam są metodami POST i GET. Kiedy żądanie jest realizowane za pomocą metody POST, parametry wchodzą w treść wiadomości. W przypadku żądania GET parametry idą w adresie URL.
Moja pierwsza myśl była taka, że był to błąd związany z implementacją w twoim kontenerze serwletów. Ale ponieważ rzeczy nie zawsze są takie, jakich oczekujesz, specyfikacja serwletu java (przynajmniej wersja 2.4) nie rozróżnia dwóch rodzajów parametrów. Tak więc, nie ma sposobu na uzyskanie parametrów postu lub adresu URL za pomocą interfejsu API serwletu.
Z pewnością masz już plan B. Ale na wszelki wypadek, mogę napisać dwie alternatywy, która przyszła mi do głowy:
Jeśli masz dostęp do definicji nazwy parametru, można użyć prefiksu rozróżnić te dwie wartości podczas iteracji wyniku getParameterNames().
Można przeanalizować URL, tworząc obiekt URL i używając metody getQuery(), aby uzyskać tylko parametry. Następnie przeanalizuj parametry ciągu zapytania za pomocą pewnej klasy narzędziowej, takiej jak ParameterParser w bibliotece HttpClient. I wreszcie odejmij te nazwy od wyniku getParameterNames().
Jak rozumiem, chcesz tylko parametry w treści POST, a nie parametry z adresu URL POST. – McDowell
Dokładnie. To dokładniejszy opis. – dankuck