此代码是否需要 Digital Persona One Touch RTE(运行时环境)才能工作?:
DPFPVerification verifier = DPFPGlobal.getVerificationFactory().createVerification();
如果是这样,是否有另一种方法可以仅使用 dpfp JAR 针对数字角色模板(序列化)验证数字角色 SampleFeatures(序列化)?
原因:我们计划在 TIBCO 提供的 Web 服务上安装 DPFP 验证程序。
任何帮助是极大的赞赏!
我使用此示例测试主代码得到 Java JNI 异常:
import com.digitalpersona.onetouch.DPFPFeatureSet;
import com.digitalpersona.onetouch.DPFPFeatureSetFactory;
import com.digitalpersona.onetouch.DPFPGlobal;
import com.digitalpersona.onetouch.DPFPTemplate;
import com.digitalpersona.onetouch.DPFPTemplateFactory;
import com.digitalpersona.onetouch.verification.DPFPVerification;
import com.digitalpersona.onetouch.verification.DPFPVerificationResult;
public class Main {
/**
* fingerScanTemplate is from WC DB
* sample is from the WS input parameters
*/
public boolean performVerification(byte[] fingerScanTemplate, byte[] sampleFeatures) {
DPFPTemplateFactory templateFactory = DPFPGlobal.getTemplateFactory();
DPFPFeatureSetFactory featureSetFactory = DPFPGlobal.getFeatureSetFactory();
DPFPVerification verifier = DPFPGlobal.getVerificationFactory().createVerification();
// Deserialize template & sampleFeature
DPFPTemplate deserializedTemplate = templateFactory.createTemplate(fingerScanTemplate);
DPFPFeatureSet features = featureSetFactory.createFeatureSet(sampleFeatures);
//Compare the feature set with the template, based on which finger was captured
DPFPVerificationResult result = null;
result = verifier.verify(features, deserializedTemplate);
return result != null && result.isVerified();
}
/**
* @param args
*/
public static void main(String[] args) {
new Main().performVerification(null, null);
}
}