2012-06-13 113 views
0

我正在使用javaPNS_2.2.jar文件向iPhone设备发送推送通知消息。使用Java-PNS向iPhone发送推送通知时发生错误?

我的代码是:

PushNotificationPayload payload = PushNotificationPayload.complex(); 

/* Customize the payload */ 
payload.addAlert("Hello World!"); 
payload.addCustomDictionary("mykey1", "My Value 1"); 
payload.addCustomDictionary("mykey2", 2); 

/* Push your custom payload */ 
String keystore = "C:/1.0Eywa_Baba/PushNotificationKey.p12"; 
String password = "[email protected]"; 
boolean production = false; 
String devices = "C81DD339-F5C1-529F-BEC4-6C8622BA0BFD"; 
List<PushedNotification> notifications = Push.payload(payload, 
                 keystore, 
                 password, 
                 production, 
                 devices); 

不过,我得到的错误:

log4j:WARN No appenders could be found for logger (javapns.notification.Payload). 
log4j:WARN Please initialize the log4j system properly. 
Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider 
    at javapns.notification.PushNotificationManager.initializeConnection(PushNotificationManager.java:105) 
    at javapns.Push.sendPayload(Push.java:171) 
    at javapns.Push.payload(Push.java:149) 
    at com.example.SendMSG.send(SendMSG.java:35) 
    at com.example.APNDemo1.main(APNDemo1.java:20) 
Caused by: java.lang.ClassNotFoundException: org.bouncycastle.jce.provider.BouncyCastleProvider 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 

是什么原因造成这个异常?

回答

0

将bouncycastle库包含在您的项目中。

1

在项目的classpath中包含bcprov-jdk15-140 jar。

相关问题