Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. https://crt.sh/?q=example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.
I think @orangepizza assumed that you already had a certificate in some other format (not PFX format) and wanted to "create a PFX file" by converting it.
So, for the third time, consult the Getting Started page (link has been given twice above) for information on how to get a cert from Let's Encrypt. They only issue certs for public domain names, though, so you'll need to be able to prove control over one--as explained on that page.
You could also try https://certifytheweb.com (which I develop) - it has a deployment task for Apache Tomcat that outputs the required PFX file. See our docs for more specific info on that task as there is some configuration required for Tomcat: Deployment Tasks | Certify The Web Docs
The basic process is:
Use the New Certificate option to setup and order a certificate from your certificate authority (the default is Let's Encrypt, there are several options). You need to use a real domain/subdomain you cannot you an internal machine name etc.
You can validate your domain using http (if the domain resolves to your server IP and you have TCP port 80 open) or you can use DNS validation if your domain DNS supports an API
Once you have successfully acquired a certificate you can add a Deploy to Tomcat task under Tasks, save then hit to run the task and copy the cert to the required destination etc. Future renewals will automatically run this task when the cert is renewed.
You can also add a Stop/Start/restart task for the tomcat server to restart Tomcat when the cert renews. Some prefer to make this a regular task they perform manually in their maintenance window if restarting is problematic for users.