You need to use a token initialization application to initialize the PIN. The Java APIs don't support this functionality.
As far as storing keys and certs on the token, you can try using the java.security.KeyStore API. The PKCS#11 documentation should also be helpful:
http://java.sun.com/j2se/1.5.0/docs/guide/security/p11guide.html