5 January 2011

ORA-12514

ORA-12514: TNS:listener does not currently know of service requested in connect descriptor.

I have encountered this problem using OC4J. I was trying to connect to a database using JDBC (via OC4J) while caught this error. I have searched a little bit online about this one and it seems it is a general error of oracle saying that there is something wrong with the listener or your database credentials. The connection was able to be established, but something was wrong in getting the data. It might be your credentials, might be any other thing.
If you want to know a little bit more in detail you might want to check the solutions to it at this page.

Cause:The listener received a request to establish a connection to a database or other service. The connect descriptor received by the listener specified a service name for a service (usually a database service) that either has not yet dynamically registered with the listener or has not been statically configured for the listener. This may be a temporary condition such as after the listener has started, but before the database instance has registered with the listener.Action:

Wait a moment and try to connect a second time.

Check which services are currently known by the listener by executing: lsnrctl services

Check that the SERVICE_NAME parameter in the connect descriptor of the net service name used specifies a service known by the listener.

If an easy connect naming connect identifier was used, check that the service name specified is a service known by the listener.