Mongo Java Driver ~ "Class contains generic types that have not been specialised."-error for class without generic types

I am using MongoDB Java driver, and have come across this error message:

Encoding a Class: '...DefaultDiscussionThreadConfiguration' failed with the following exception:

Class contains generic types that have not been specialised.
Top level classes with generic types are not supported by the PojoCodec.

The strange part here is that this class looks like that:

public class DefaultDiscussionThreadConfiguration extends DiscussionThreadConfiguration {
	
	@Override
	@BsonIgnore
	public DiscussionThreadConfigurationType getDiscussionThreadConfigurationType() {
		return DiscussionThreadConfigurationType.DEFAULT;
	}

	@Override
	public DefaultDiscussionThreadConfigurationNetworkData toDiscussionThreadConfigurationNetworkData() {
		return new DefaultDiscussionThreadConfigurationNetworkData();
	}
}

…and even the parent class doesn’t have generic types:

@BsonDiscriminator
public abstract class DiscussionThreadConfiguration {
	public abstract DiscussionThreadConfigurationType getDiscussionThreadConfigurationType();
	
	public abstract DiscussionThreadConfigurationNetworkData toDiscussionThreadConfigurationNetworkData();
}

So, I am at a complete loss about what is happening here and how to fix it.

For context:
The DiscussionThreadConfiguration is a field in a DiscussionThread database object that is responsible for determining the type of the thread and carrying thread-specific information:

DiscussionThreadDbData
├DiscussionThreadConfiguration 
â””[Other fields]

Meanwhile, the DiscussionThreadConfiguration can currently be one of three things organized in an abstract structure:

DiscussionThreadConfiguration  (abstract)
├DefaultDiscussionThreadConfiguration
â””DiscussionThreadPrdConfiguration (abstract)
 ├DiscussionThreadPrdGlobalConfiguration 
 â””DiscussionThreadPrdInternalConfiguration 

I already have working logic that filters out only the PRD Configurations, which goes like this:

	Filters.in(
		"discussionThreadConfiguration._t",
		["...DiscussionThreadPrdGlobalConfiguration ", "...DiscussionThreadPrdInternalConfiguration "]
	);

And that works fine. However, when I try to “reverse” that filter so I only get the non-PRD threads, the above error happens:

	Filters.eq(
		"discussionThreadConfiguration._t",
		"...DefaultDiscussionThreadConfiguration"
	);

I’ve also already tried Filters.in for that, and tried converting the class identifier as a string, but nothing works.

Sow, what is happening here? And what can I do to fix this?

Any help would be greatly appreciated.