-
Notifications
You must be signed in to change notification settings - Fork 823
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proper escaping of TNS_ADMIN path. Select JDBC driver with defined implementation. #5363
Proper escaping of TNS_ADMIN path. Select JDBC driver with defined implementation. #5363
Conversation
enterprise/cloud.oracle/src/org/netbeans/modules/cloud/oracle/actions/DownloadWalletAction.java
Outdated
Show resolved
Hide resolved
This will be also needed for vsnetbeans, I guess I should rebase to |
If it needs to go into NB17, then yes - base branch of PR needs changing to delivery, and commit rebasing on top of delivery if necessary. Also add the milestone when you're ready. |
c074c4f
to
c158a2c
Compare
(marked as NB17, will rebase after @jhorvath's review, should be clean) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good
enterprise/cloud.oracle/src/org/netbeans/modules/cloud/oracle/actions/DownloadWalletAction.java
Show resolved
Hide resolved
6308873
to
7ce696e
Compare
The base branch was changed.
Rebased onto |
…plementation. (#5363) * Proper escaping of TNS_ADMIN path. Select JDBC driver with defined implementation. * Issue warning if driver w/o code locations is selected.
This PR fixes two issues with OCI database support:
The
Download Wallet
action writes a JDBC connection string with a pathname in it, but the pathname is not properly escaped. This is not an issue on MacOS / Linux, but on Windows that uses backslashes as dir separators, the backslashes in string content are interpreted as escapes by the JDBC driver, and the resulting path will be broken.Second, the action tries to find the appropriate JDBC driver, but
JDBCDriverManager.getDefault().getDrivers()
call may reeturn half-configured drivers, that have no JAR files associated with them. This PR makes the action to prefer such drivers that define jars with the actual driver code.The original behaviour had the effect of selecting a wrong driver, i.e. OracleThin driver (without JARs) was persisted while there was full Oracle jdbc driver present (that was configured with appropriate code jars).