As I understand the POP flow, it is the PRESENTER (CLIENT) that creates the ephemeral keypair. Then the presenter publishes the corresponding public key, to facilitate the proof-of-possession protocol.
If Apigee IS NOT acting as the presenter, then you do not need Apigee to create an ephmeral keypair. If Apigee IS the presenter, then you DO need to do that, and I suppose if I were doing that, I would use a Java callout for that purpose.