2015-05-06 77 views
1

本程序給出FileNotFoundException。我試圖找到它,但無法解決它。FileNotFound異常。 Keystore文件位置

唯一的例外是:

java.io.FileNotFoundException: src\ritikakeystore (The system cannot find the path specified) 
    at java.io.FileInputStream.open0(Native Method) 
    at java.io.FileInputStream.open(Unknown Source) 
    at java.io.FileInputStream.<init>(Unknown Source) 
    at java.io.FileInputStream.<init>(Unknown Source) 
    at packdigit.DigiCert.writing(DigiCert.java:131) 

的代碼如下:

public class DigiCert { 

    public static final String KEYSTORE = "src/ritikakeystore"; 
    public static final char[] PASSWORD = "ritika".toCharArray(); 
    public static final String SRC = "resources/stw.pdf"; 
    public static final String DEST = "resources/s1new.pdf"; 
    public static final String DEST1 ="resources/s2new.pdf"; 


    public void writing() throws GeneralSecurityException, IOException, DocumentException 
    { 
     BouncyCastleProvider provider = new BouncyCastleProvider(); 
     Security.addProvider(provider); 
     KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType()); 

     //This statement is showing file Not found error.. 
     ks.load(new FileInputStream(KEYSTORE), PASSWORD); 
     String alias = (String)ks.aliases().nextElement(); 

     PrivateKey pk = (PrivateKey) ks.getKey(alias, PASSWORD); 
     Certificate[] chain = ks.getCertificateChain(alias); 
     DigiCert app = new DigiCert(); 
     app.sign(SRC, DEST, chain, pk, DigestAlgorithms.SHA256,provider.getName(), CryptoStandard.CMS,"First Signature", "Delhi",PdfSignatureAppearance.CERTIFIED_NO_CHANGES_ALLOWED); 
     app.signAgain(DEST, DEST1, chain, pk, DigestAlgorithms.SHA256,provider.getName(), CryptoStandard.CMS, "Second Signature", "Delhi"); 

    } 

文件位置

Src 
    packdigit(package) 
    DigiCert.java (class) 
    ritikakeystore 

回答

0

如果該目錄被命名爲Src,更換

public static final String KEYSTORE = "src/ritikakeystore"; 

public static final String KEYSTORE = "Src/ritikakeystore"; 

就是Srcsrc,可能做的伎倆。

相關問題