使用Java-PNS向iPhone发送推送通知时出错?

时间:2012-06-13 09:41:48

标签: java iphone apple-push-notifications bouncycastle jce

我正在使用javaPNS_2.2.jar文件向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 = "Eywa@12";
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)

导致此例外的原因是什么?

2 个答案:

答案 0 :(得分:1)

在项目的类路径中包含bcprov-jdk15-140 jar。

答案 1 :(得分:0)

在项目中包含bouncycastle库。