User user = userServiceTeamcenter.getUserByLogin(username, username);
That won't work in the real world.
Why is the username and password always the same for every user of the system.
OK. The purpose of a UserDetailsService is strictly to load user data, nothing to do with password, that is why password is not passed in to loadUserByUserName(String userName) method.
Typically this method and a UserDetailsService just does a query against the back end data store. In your case your userServiceTeamcenter method requires a password, so it isn't the correct class and method to call. If you don't have a class with a correct api, then you can query a different way.
For instance
Jdbc with SQL queries.
There are built in UserDetailsService like JdbcDaoImpl which is the Jdbc with SQL queries class.
Mark