mwkirk / javapns

Test import of svn javapns repo from Google Code
3 stars 0 forks source link

Request not even being sent #167

Open mwkirk opened 11 years ago

mwkirk commented 11 years ago

Original author: stack.b...@gmail.com (February 14, 2013 16:59:54)

What steps will reproduce the problem?

public PushedNotifications sendMessage(String[] devices, String apnsMsg, int badge, String tone, String locAction) throws Exception { PushedNotifications pushedNotifications = null; int numDevices = devices.length; //get the number of tokens long start = System.currentTimeMillis();

if(numDevices > 0)
{
    if(StringUtil.isStringEmpty(tone))
    {   
        //if tone is not given, set it to default tone
        tone = "default";
    }

    //prepare the payload with message, badge and tone given,
    PushNotificationPayload payload = PushNotificationPayload.complex();
    payload.addBadge(badge);
    payload.addSound(tone);
    payload.addCustomAlertBody(apnsMsg);
    payload.addCustomAlertActionLocKey(locAction);

    //get the certificate path from given cert filename
    String certPath = getClass().getClassLoader().getResource(certFile).getPath();  

    //replace all whitespace character with %20, since URL object contains "%20" instead of " "
    certPath = certPath.replaceAll("%20", " "); 

    logger.info("About to push notifications: " + (System.currentTimeMillis() - start));

    try {
        logger.info("About to create push queue: " + (System.currentTimeMillis() - start));

        if(queue == null)
        {
            queue = Push.queue(certPath, certPass, isProd, numThreads);
        }
        logger.info("Starting queue: " + (System.currentTimeMillis() - start));
        queue.start();
        logger.info("Queue started: " + (System.currentTimeMillis() - start));
        for(int i = 0; i < numDevices; ++i)
        {
            queue.add(payload, devices[i]);
        }
        pushedNotifications = queue.getPushedNotifications();
        logger.info("Notifications pushed: " + pushedNotifications.size() + " at " + (System.currentTimeMillis() - start));         
    } catch (Exception e) {
        queue = Push.queue(certPath, certPass, isProd, numThreads);
        throw e;
    }
}

What is the expected output? What do you see instead? Expect to see something like [2013-02-13 16:19:04] INFO (APNSServiceImpl.java:94) APNS Request received: {"apnsMsg":"Store 37\u0027s (SAN ANTONIO) status is now good due to Unix server ping being available","badge":1,"locAction":"view stores"} at 0 [2013-02-13 16:19:04] INFO (APNSServiceImpl.java:97) Before sending: 0 [2013-02-13 16:19:04] DEBUG (PushNotificationPayload.java:193) Adding badge [1] [2013-02-13 16:19:04] DEBUG (PushNotificationPayload.java:205) Adding sound [default] [2013-02-13 16:19:04] INFO (APNSWSClient.java:77) About to push notifications: 0 [2013-02-13 16:19:04] INFO (APNSWSClient.java:82) About to create push queue: 0 [2013-02-13 16:19:04] INFO (APNSWSClient.java:90) Starting queue: 0 [2013-02-13 16:19:04] INFO (APNSWSClient.java:92) Queue started: 0 [2013-02-13 16:19:04] INFO (APNSWSClient.java:98) Notifications pushed: 705 at 0 [2013-02-13 16:19:05] INFO (APNSServiceImpl.java:99) After sending: 93 [2013-02-13 16:19:05] INFO (APNSServiceImpl.java:118) {"success":true,"errorCode":0,"serverTime":93} [2013-02-13 16:19:05] DEBUG (AnnotationMethodHandlerAdapter.java:1002) Written [com.neimanmarcus.apns.domain.APNSResponse@1c8ad52] as "application/json" using [org.springframework.http.converter.json.MappingJacksonHttpMessageConverter@1faf3f4] [2013-02-13 16:19:05] DEBUG (DispatcherServlet.java:824) Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling [2013-02-13 16:19:05] DEBUG (FrameworkServlet.java:692) Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@fffa61 [2013-02-13 16:19:05] DEBUG (FrameworkServlet.java:699) Successfully completed request [2013-02-13 16:19:05] DEBUG (AbstractApplicationContext.java:301) Publishing event in WebApplicationContext for namespace 'dispatcherServlet-servlet': ServletRequestHandledEvent: url=[/apns_server/services/apns/send/Store%2037's%20(SAN%20ANTONIO)%20status%20is%20now%20good%20due%20to%20Unix%20server%20ping%20being%20available/1/view%20stores]; client=[10.0.16.30]; method=[GET]; servlet=[dispatcherServlet]; session=[null]; user=[null]; time=[93ms]; status=[OK] [2013-02-13 16:19:05] DEBUG (AbstractApplicationContext.java:301) Publishing event in Root WebApplicationContext: ServletRequestHandledEvent: url=[/apns_server/services/apns/send/Store%2037's%20(SAN%20ANTONIO)%20status%20is%20now%20good%20due%20to%20Unix%20server%20ping%20being%20available/1/view%20stores]; client=[10.0.16.30]; method=[GET]; servlet=[dispatcherServlet]; session=[null]; user=[null]; time=[93ms]; status=[OK] [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:538) Building Raw message from deviceToken and payload [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:617) Built raw message ID 16777294 of total length 216 [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:396) Attempting to send notification: {"aps":{"alert":{"body":"Store 37's (SAN ANTONIO) status is now good due to Unix server ping being available","action-loc-key":"view stores"},"sound":"default","badge":1}} [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:397) to device: b953718a6d52cf4de0138d624a0df25a328afcb0afec8fa95927a548f2004441 [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:415) Flushing [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:417) At this point, the entire 216-bytes message has been streamed out successfully through the SSL connection [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:420) Notification sent on first attempt [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:538) Building Raw message from deviceToken and payload [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:617) Built raw message ID 33554511 of total length 216 [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:396) Attempting to send notification: {"aps":{"alert":{"body":"Store 37's (SAN ANTONIO) status is now good due to Unix server ping being available","action-loc-key":"view stores"},"sound":"default","badge":1}} [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:397) to device: b1db026da59fe160d3a2423e00254c2905370f745f048042c147fbcfff54ad10 [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:415) Flushing [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:417) At this point, the entire 216-bytes message has been streamed out successfully through the SSL connection [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:420) Notification sent on first attempt [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:538) Building Raw message from deviceToken and payload [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:617) Built raw message ID 50331727 of total length 216 [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:396) Attempting to send notification: {"aps":{"alert":{"body":"Store 37's (SAN ANTONIO) status is now good due to Unix server ping being available","action-loc-key":"view stores"},"sound":"default","badge":1}} [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:397) to device: 8606dabb1ba9d2e87dda0652e1311fbb30a1f5651df5319584c9c3112ac14d0c [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:415) Flushing [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:417) At this point, the entire 216-bytes message has been streamed out successfully through the SSL connection [2013-02-13 16:19:05] DEBUG (PushNotificationManager.java:420) Notification sent on first attempt

But i am seeing [2013-02-14 10:50:34] INFO (APNSServiceImpl.java:54) APNS Request received: {"apnsMsg":"request APNSSend","badge":1} at 62 [2013-02-14 10:50:34] INFO (APNSServiceImpl.java:57) Before sending: 62 [2013-02-14 10:50:34] DEBUG (PushNotificationPayload.java:193) Adding badge [1] [2013-02-14 10:50:34] DEBUG (PushNotificationPayload.java:205) Adding sound [default] [2013-02-14 10:50:34] INFO (APNSWSClient.java:77) About to push notifications: 16 [2013-02-14 10:50:34] INFO (APNSWSClient.java:82) About to create push queue: 16 [2013-02-14 10:50:34] INFO (APNSWSClient.java:90) Starting queue: 47 [2013-02-14 10:50:34] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:34] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:34] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:34] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:35] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:35] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:35] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:35] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:36] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:36] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:36] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:36] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:37] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:37] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:37] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:37] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:38] DEBUG (ConnectionToAppleServer.java:94) Creating SSLSocketFactory [2013-02-14 10:50:38] DEBUG (ConnectionToAppleServer.java:149) Creating SSLSocket to gateway.sandbox.push.apple.com:2195 [2013-02-14 10:50:38] INFO (APNSWSClient.java:92) Queue started: 4594 [2013-02-14 10:50:38] INFO (APNSWSClient.java:98) Notifications pushed: 0 at 4594 [2013-02-14 10:50:38] INFO (APNSServiceImpl.java:59) After sending: 4656 [2013-02-14 10:50:38] INFO (APNSServiceImpl.java:75) {"success":true,"errorCode":0,"serverTime":4656}

What version of the product are you using? On what operating system? JavaPNS2.2 on Windows server 2008R2

Please provide any additional information below.

Original issue: http://code.google.com/p/javapns/issues/detail?id=167

mwkirk commented 11 years ago

From stack.b...@gmail.com on February 14, 2013 17:02:44 btw, isProd = false and numThreads = 9

mwkirk commented 11 years ago

From sype...@gmail.com on March 01, 2013 17:29:11 I'm not sure your test is valid... You are adding notifications to a multi-threaded queue, but immediately after, you look at the pushedNotifications list and expect the threads to be done already, but they most certainly would not!

If I'm missing something, please let me know.. otherwise I will close this.