2013-05-30 8 views
-1

J'ai créé un fichier .jar qui contient mon certificat numérique signé et je veux utiliser ce fichier dans mon projet, comment puis-je l'utiliser actuellement dans & dossier JAVA_HOME/jre7/lib/security.Comment utiliser un fichier JAR exécutable dans mon projet?

Merci pour votre aide à l'avance :).

+0

Vous voulez lire un fichier qui se trouve dans un fichier JAR? – raffian

+0

oui je voulais lire ce qui est dans le JAR – anuj

Répondre

0

Si le JAR est sur votre chemin de classe, et le fichier est "foo.cert" assis à la racine, il suffit de ce ...

InputStream is = this.getClass().getResourceAsStream("/foo.cert"); 
CertificateFactory factory = CertificateFactory.getInstance("X.509"); 
X509Certificate cert = (X509Certificate) factory.generateCertificate(is); 

https://stackoverflow.com/a/4548791/791406

+0

pourquoi je reçois cette erreur? 'Code'Caused par: java.security.InvalidAlgorithmParameterException: le paramètre trustAnchors doit être non-vide \t at java.security.cert.PKIXParameters. setTrustAnchors (source inconnue) \t at java.security.cert.PKIXParameters. (source inconnue) \t à java.security.cert.PKIXBuilderParameters. (source inconnue) \t ... 61 plus – anuj

+0

a édité la réponse, vous devez fournir plus d'informations, essayez-vous de charger un 509 cert? voir ci-dessus, essayez cela – raffian

+0

Je suis en train de me connecter en utilisant l'API et la sécurité SSL – anuj

0
static Connection DBConnectionstring() 
    {  
     Connection con = null; 
     String conUrl = "jdbc:sqlserver://localhost:1433; databaseName=paytest; user=My-PC; password=; integratedSecurity=true; encrypt=true; trustStore=truststore.jks;trustStorePassword=pass; hostNameInCertificate=certificatekey;"; 

     try 
     { 
       con = DriverManager.getConnection(conUrl);     
       JOptionPane.showMessageDialog(null,"Connection is open!","Connection",JOptionPane.WARNING_MESSAGE); 

       } 
     catch (SQLException e) 
     { 

      e.printStackTrace(); 
     }  
     return con; 

    }//connection string method ends 

Et voici la classe où j'ai une chaîne de connexion et d'autres commandes sql

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.sql.Statement; 
import java.applet.*; 
import java.awt.*; 
import java.awt.event.*; 
import javax.net.ssl.*; 
import java.io.*; 
import java.net.*; 
import java.security.*; 

import javax.swing.JOptionPane; 
public abstract class ConnectionDB 
{ 


    public static void main(String[] args) 
    { 

     try {       
      insertRecordIntoDbUserTable(); 
      selectfromdb(); 
     } 
     catch (SQLException e) 
     { 

      System.out.println(e.getMessage()); 

     } 
} 

    private static void GuiContain() 
    { 

    } 

    private static void insertRecordIntoDbUserTable() throws SQLException 
    { 
     Connection con = null; 
     Statement statement = null; 
     String insertTableSQL = "INSERT INTO LoginDetails" + "(Username, Password) " + "VALUES" + "('username','pass1')"; 
     try 
     { 
      con = DBConnectionstring(); 
      statement = con.createStatement(); 
      System.out.println(insertTableSQL);   
      statement.executeUpdate(insertTableSQL);    
      //System.out.println("Record's inserted into Login Details table!"); 
      JOptionPane.showMessageDialog(null,"Your Data has been Inserted","Data Inserted",JOptionPane.WARNING_MESSAGE); 
     } 
     catch (SQLException e) 
     { 

      System.out.println(e.getMessage()); 
     } 
     finally 
     { 

      if (statement != null) 
      { 
        statement.close(); 
       //System.out.println("XXXXX...Statement is terminated..XXXXX"); 
       JOptionPane.showMessageDialog(null,"Statement is closed","Statement",JOptionPane.WARNING_MESSAGE); 
      } 

      if (con != null) 
      { 
       con.close(); 
       //System.out.println("Connection is Closed!!.."); 
       JOptionPane.showMessageDialog(null,"Connection is closed!","Connection",JOptionPane.WARNING_MESSAGE); 
      } 

     } 


    } 

    private static void selectfromdb() throws SQLException 
    {  
     Statement stmt = DBConnectionstring().createStatement(); 
     ResultSet rs = stmt.executeQuery("SELECT Username,Password FROM LoginDetails"); 
     while (rs.next()) 
     { 
       String lastName = rs.getString("Username"); 
       String Pass = rs.getString("Password"); 
       System.out.println(lastName + "" + Pass + "\n"); 

      }  
    } 

    static Connection DBConnectionstring() 
    {  
     Connection con = null; 
     String conUrl = "jdbc:sqlserver://localhost:1433; databaseName=paytest; user=my-PC; password=; integratedSecurity=true;"; 

     try 
     { 
       con = DriverManager.getConnection(conUrl); 

       JOptionPane.showMessageDialog(null,"Connection is open!","Connection",JOptionPane.WARNING_MESSAGE); 

       } 
     catch (SQLException e) 
     { 

      e.printStackTrace(); 
     }  
     return con; 

    } 


    } 
+0

Désolé @Raffian plus tôt pour le matériel insuffisant maintenant j'ai mis à jour ce que j'ai. J'espère que cela aide et dites-moi quelles autres informations vous avez besoin. – anuj

Questions connexes