我正在使用 Eclipse 编写证书解析器,我使用我所在国家/地区的政府部门提供的课程,它可以解析我所在国家/地区的专业证书。但是我有一点小麻烦,当我编译我的代码时,控制台会显示这些信息:</p>
java.lang.ClassCastException: java.util.ArrayList cannot be cast to tw.com.chttl.hipki.CredentialBean
at CertParser.Read_Normal(CertParser.java:41)
at CertParser.<init>(CertParser.java:26)
at CertParser.main(CertParser.java:155)
关于 ClassCastException 问题,我知道是一个强制转换问题。但是我使用的class是String类型,比如:</p>
public String getNonce(){
return _credential.getNonce();
}
或者
public String getSubjectDN(){
returnCertParser.getSubjectDN(_credential.getSignerCertificate(0));}
以及我的代码中可能出现的错误:</p>
private int Read_Normal(JPanel panel){
String Field;
try{
FileInputStream file_inputstream=new FileInputStream(CA_Name);
CertificateFactory cf=CertificateFactory.getInstance("X.509");
CredentialBean bean=(CredentialBean)cf.generateCertificates(file_inputstream);
Field=bean.getSubjectDN();
CA_ItemData[0][0]="getSubjectDN";
CA_ItemData[0][1]=Field;
System.out.println("getSubjectDN:"+Field);
Field=bean.getIssuerDN();
CA_ItemData[1][0]="getIssuerDN";
CA_ItemData[1][1]=Field;
System.out.println("getIssuerDN:"+Field);
file_inputstream.close();
final JTable table = new JTable(CA_ItemData, columnNames);
TableColumn tc=null;
tc = table.getColumnModel().getColumn(1);
tc.setPreferredWidth(600);
panel.add(table);
}catch(Exception exception){
exception.printStackTrace();
return -1;
}
return 0;
}
这个类都是字符串类型,我的代码也是字符串。这个问题是什么意思?
我的英语在我的国家不是主要的,如果我有任何错误,请原谅我。
谢谢你。