ORA-22800: invalid user-defined type
Cause : An attempt was made to use an incomplete type as a constructor.
Action - How to fix it : DBA Scripts :: www.high-oracle.com/scripts
Complete the type definition before using it in a query.
Well, the reason for above error is that i have taken the above script from a 11g database and running it on 10g database. 11g has bring some changes in password management. Below code is executed on 11g and user created successfully, which is expected result.