JDBC :: Options Required For DB Schema Password Encryption - Connecting To Backend Database
Jul 9, 2015
We currently have an application which uses JDBC to connect to the backend database (DB version - 11.2.0.3 ). The application uses a properties file in which the password for the db schema is hardcoded in plain text format. Due to security restrictions we have been asked to make sure the password is encrypted in the file and no direct access is made to the schema using the plain text password. Best options we can use to make this password encrypted both at Oracle DB side and Java side.
I am trying to connect to Sql Server database using Oracle UCP with sqljdbc4-3.0 JDBC driver for Sql Server,with different ports and instances.
– the issue is with the port being ignored in the server string.
For example, using port 1440 connects to the default instance (which is on port 1433) rather than MSSQLINSTANCE1 which is on 1440.
Below are Server hosts used.
sql005.sqlasoftware.com (connects correctly to the default instance) sql005.sqlasoftware.com:1440 (connects incorrectly to the default instance on port 1433) sql005.sqlasoftware.comMSSQLINSTANCE1 (connects correctly to the named instance)
I know that Servlets are meant to do the JDBC tasks, JSP are only for displaying the final information forwarded by the Servlet.
JSP are Servlets too, but I heard an idea that it is safer to make database operations in a Servlet.
The idea is that I have a few JSP that use JSTL tags to retrieve some database information. By doing this I was concerned that this may be bad design, though I really wanted to get in fit with the JSTL tags.
Are there any security weaknesses if doing some JDBC stuff in a JSP, by using JSTL or plain Java code in <%...%>?
P.S. In my JSP I only retrieve data, not modifying it.
I am new to Java Stored Procedures. There is a PL/SQL package in our legacy application(Oracle 9i) which pulls data from Oracle 8i source database through a DB link. Now we have upgraded our databas to Oracle 11g R2 from 9i. So the DB lint to Oracle 8i will no longer work in 11g. Hence I have created a Java stored procedure that establishes JDBC thin connection to the source 8i database. I have loaded the java stored procedure in the database using loadjava and have created a call specifaction.
I have called this java stored procedure inside the PL/SQL package. Now while executing the PL/SQL package, it takes the default driver ojdbc6.jar to establish JDBC connection and fails to connect to the 8i database giving ArrayIndexOutOfBounds Exception. While running the code in the linux application server with classes12.jar the code succeeds. But when the same is called in the database it fails.
1. How can I make my PL/SQL call use classes12.jar while calling the Java Stored Procedure?
2. How can I load the jar file(which includes my classes and the classes12.jar) into the datase as one object? (When I tried to load the whole jar, in database the classes and dependent jar loaded separately)
3. Is there a way to use classpath while calling the Java Stored Procedure like how we do from Unix?
I am using simple jdbc connection to connect to Sybase as shown above , problem is security team is able to see password as clear text in heap, How to avoid it.
@Transactional public long getSequenceSedeB(Long id) { BigDecimal seqValue = nu String sql = "SELECT MAX(ID) FROM SEDE_B_ALLEGATI_A WHERE ID_SEDE=:id"; SQLQuery query = getSession().createSQLQuery(sql);
[Code] ....
But it do not works; this is the log.
type.NullableType (NullableType.java:182) - could not read column value from result set: ID; Invalid column name
I created a database in mysql, but I have problems communicating with the DB in java.
Here is the error :
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/books at java.sql.DriverManager.getConnection(DriverManager.java:604) at java.sql.DriverManager.getConnection(DriverManager.java:221) at displayauthors.DisplayAuthors.main(DisplayAuthors.java:30) java.lang.NullPointerException
[Code] ....
HERE IS THE CODE
public class DisplayAuthors { // database URL static final String DATABASE_URL = "jdbc:mysql://localhost:3306/books"; // launch the application public static void main( String args[] )
I have a problem with my code i try to identify users by password and username but I cannot recognize only the last row in my table in database what can i do ....
This question is not about syntax but a best way to handle something. What is the best way to store a image into a database? For example converting it into binary etc. I just wanted to get some opinions.
This the output of java from my PC under linux platform (rhel 6.5).
[pentaho@vertica-srv1 Downloads]$ java -version java version "1.7.0_79" Java(TM) SE Runtime Environment (build 1.7.0_79-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
[Code] ....
But the problem is while trying to open ETL program under linux platform [pentaho@vertica-srv1 data-integration]$ ./spoon.sh .... I received the following error messages.
Trying to add database driver (JDBC): RmiJdbc.RJDriver - Warning, not in CLASSPATH? Trying to add database driver (JDBC): jdbc.idbDriver - Warning, not in CLASSPATH? Trying to add database driver (JDBC): org.gjt.mm.mysql.Driver - Warning, not in CLASSPATH? Trying to add database driver (JDBC): com.mckoi.JDBCDriver - Warning, not in CLASSPATH? [KnowledgeFlow] Loading properties and plugins...
I have completed an assignment for my university in which I had to make a Java NetBeans project. My project is now completed but now I have to make a setup of my NetBeans project and give the university the setup file, only.
My question is, the software I made has a database attached to it, meaning the purpose of the software is to be used with the database. Values must be saved in the database, deleted from the database etc.. I have used MySQL database connections with the JDBC driver
I have used exe4j to make the .exe file and Setup Factory to make the exe file and setup file respectively. Once I make the setup and run the setup, the application works, ON MY COMPUTER. The computer which made the software. But once I take it to a computer in which MySQL was not installed, the setup installed, but the software did not work.
I have small Java code, which execute every day and checks for data in database using Cronj Schedular and everything works fine, but recently I have observed that, it is failing due to
java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@160.110.xx.xxx:1521/test
At the same time, when I run my test code to check Database connectivity that works fine without above exception. I'm unable to figure it out. Although, there was just slight code change, but that was nowhere related to Database or Database connection.
dbconf.java public class dbconf { private Connection connect; private String connstr; public Connection getConnection() throws SQLException { connstr = "jdbc:oracle:thin:@160.110.xx.xxx:1521/test";
[Code] ....
Application Log file
Wed Jul 01 09:25:17 IST 2015:------- Initializing ------------------- Wed Jul 01 09:25:17 IST 2015:------- Scheduling Jobs ---------------- Wed Jul 01 09:25:17 IST 2015:------- Job Started Running ---------------- Thu Jul 02 06:00:00 IST 2015 : Job Executed..!! Bschedularv2.2 java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@160.xxx.67.xxx:1521/test Sat Jul 04 06:00:00 IST 2015 : Job Executed..!! Bschedularv2.2 Sun Jul 05 06:00:00 IST 2015 : Job Executed..!! Bschedularv2.2 java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@160.xxx.67.xxx:1521/test
So, you can see, It failed on 3rd of July and 5th July as well. But, in between it ran fine.
I have a template file which I'm tring to upload into a database using setBlob or setBinaryStream but I'm getting the following error:
java.lang.AbstractMethodError: setBlob at weblogic.jdbc.wrapper.PreparedStatement.setBlob(PreparedStatement.java:1005) at com.capitalone.citrix.ssp.dao.KatetDaoImpl.uploadReport(KatetDaoImpl.java:1697) at com.capitalone.citrix.ssp.services.FileOpsImpl.generateDownload(FileOpsImpl.java:648) at com.capitalone.citrix.ssp.controller.JSONController.display(JSONController.java:61) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[Code] .....
I'm using :
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production Weblogic Server Versions: 10.3.0.0 with Java 1.6.0_05
The driver class name for the weblogic datasource: weblogic.jdbcx.oracle.OracleDataSource
Initially, I tried:
sqlQuery = new StringBuffer(); ps = null; sqlQuery.append("insert into KATET_REPORTS (FILE_DATA)");
[Code] ....
This failed, so I changed ps.setBlob(1,is) to ps.setBinaryStream(1,is). This failed as well with teh same error, just for setBinaryStream instead of setBlob.
Is there a known inconsistency between that driver and this Weblogic version? Is there something else going on? If I haven't given enough data to debug the issue here, what other data should I gather?
I am trying to run a simple program that connects to a mysql database and prints out some fields. I am using Eclipse.
THe problem I am having is on the following line of code.
Class.forName("com.mysql.jdbc.Driver");
I get an error:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method)
[Code] ....
I have done some research and from what I have found is that I need to alter the class path to pick up the driver. When I downloaded the .msi I ran it and then the program closed. Where the files are ??? How to locate and import the file so I need to get my program to run?
I have included all the of the source code below.
package mySQLConnect; import java.sql.*; public class Connect { // JDBC Driver name and database URL static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String BD_URL = "jdbc:mysql://localhost/sstbde";
My homework is asking me to write a program that prompts the user to enter a password and displays "valid password" if the rule is followed or "invalid password"
Sample enter a string for password: wewewx valid password
It's being graded on Design of my GUI Dialog box User friendliness Creativity
My current issues with the current code I have written is simply the password doesn't work unless it starts with 2 digits, the other order it displays as wrong. and I have no idea how to add a GUI.
calling a parameterized stored procedure in java jdbc from sql server.The stored procedure goes like this in sql
create proc patientreg @id int as begin select [patient_id],[Psurname], [pFirstname], [pMiddlename], [reg_date], [DOB], [Sex], [Phone_num], [Addr],[Email],[dbo].[fncomputeage](DOB) from [dbo].[Patient_registration] where [patient_id] = @id end please note dbo.fncompute(DOB) is a function
I was wondering, for both a web based application and a normal Java program, should I just open up an I/O every time I need certain data, or am I better off just loading all the information into my program at start up?
In the code that I am currently trying to do, I want to make it so that the program loops until the randomly generated number is 1, to a maximum of 4 loops.I have figured out how to make it stop at a randomly generated 1, but I can't quite figure out how to make it stop at four loops if it doesn't reach the 1 before the maximum number of loops.
I am looking to develop a program that does the following:
User selects Microsoft Excel xlsx, xlsm files.Program copies worksheets, userforms and modules from a template excel file into the user files.Program changes the XML schema of the files..I am looking for MAC compatibility too. Is Java suitable for this exact requirements I am asking?
I'm working on a project that has two separate components. The first is a back end, that will do most of the heavy lifting, the other part is a front end GUI. The GUI will include the back end into it's project as an imported JAR file.
I need to be able to keep these two decoupled, as I might be writing different front ends using the same back end. The challenge in front of me (well one of many) is how to pass messages from the back end to the GUI so I can report things that are happening.
For example, if i call method FOO, FOO might do several different things; connect to a database, divide by zero, solve world hunger. I want to be able to either tie a JTextArea , or another component (or multiple components) to this stack of information, or at the very least, have something listening for this information, and when I see that my back end reports something, my front end is quickly aware of this information, and then I can process it and inform the user of the front end.
It would also be useful to be able to send a message from front end to back end , so perhaps the back end might learn that the front end user is unhappy and would like to stop running the current query.