sealing violation: package oracle.net.ns is sealed

Vinci A De Paul picture Vinci A De Paul · Apr 5, 2017 · Viewed 9.4k times · Source

I am trying to connect to an Oracle 11g XE databse using Oracle SQL Developer. However, I am getting the following exception:

java.lang.SecurityException: sealing violation: package oracle.jdbc.driver is sealed

I have searched for an answer on the web, but have not found a solution.

What is causing this and how can I fix it?

Answer

Arnaud picture Arnaud · Apr 5, 2017

From this documentation at Oracle : Known Issues and Limitations :

java.lang.SecurityException: Sealing violation exception (ID 6554602)

Description

Starting with JDBC 10.2 drivers, having more than one JDBC jar file in the CLASSPATH may result in a java.lang.SecurityException: Sealing violation exception.

Solution (Suggested by Oracle) Make sure that the CLASSPATH includes only one JDBC driver JAR file.

And this forum : SecurityException: sealing violation from Class.forName

A sealing violation means that some classes from a sealed package were loaded from two different locations (directories or jar files).

A sealed package is one that essentially says "I know that all classes in this package come from a single jar file. For security reason no other location may provide classes that are in this package".

Chances are you have two Oracle JDBC driver jars in your classpath.

So make sure that you don't have multiple Oracle JDBC driver jar libraries in your classpath.