I followed all the steps mentioned in this link, https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-6-3/notifications/push-notifications-hybrid-applications/ and I am able to successfully sent push notifications for android phones. But iPhone is not receiving any notification.
I have properly added APNS certificates and 2195, 2196 ports are opened.
In mobilefirst console, push notification section showing my iphone received 10 messages from event sources. When I looked the tomcat logs it showing following warning
Nov 05, 2015 3:48:48 PM com.worklight.gadgets.serving.ClientConfigProfileServlet piggybackConfigProfile
WARNING: com.worklight.core.messages:could not piggyback configprofile due to invalid or incomplete headers sent from client
Nov 05, 2015 3:48:48 PM com.ibm.pushworks.server.notification.Mediator run()
SEVERE: FPWSE1067E: An Exception occurred in the mediator.
java.lang.RuntimeException: Not yet implemented
at com.ibm.pushworks.server.notification.Mediator.updateDeviceSubscriptionByToken(Mediator.java:130)
at com.ibm.pushworks.server.notification.gcm.GCMMediator.updateDeviceSubsciption(GCMMediator.java:172)
at com.ibm.pushworks.server.notification.gcm.GCMSender.sendAndVerify(GCMSender.java:169)
at com.ibm.pushworks.server.notification.gcm.GCMMediator.sendOrWait(GCMMediator.java:139)
at com.ibm.pushworks.server.notification.gcm.GCMMediator.sendNotification(GCMMediator.java:128)
at com.ibm.pushworks.server.notification.Mediator$2.run(Mediator.java:87)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Is above warning is the clue for the issue? If so what I'm missing? Any suggestions will help.
This was recently resolved.
Visit IBM Fix Central and download the latest iFix for your MobileFirst Platform Foundation release. Use the updated Studio/CLI package to re-build your application.
Related
When I try to create and send a push notificartion to my Android TV, I get following toast message on my TV:
Developer warning for package *.
Failed to post notification on channel "default".
See logs for more details.
Where are those log files saved to?
I've found it in usual logcat. But not under app package's logs, but just in unfiltered system ones, like:
2021-12-17 01:27:54.257 665-1957/? E/NotificationService: No Channel found for pkg=com.company.appname, channelId=default, id=0, tag=null, opPkg=com.company.appname, callingUid=10131, userId=0, incomingUserId=0, notificationUid=10131, notification=Notification(channel=default pri=0 contentView=null vibrate=null sound=null defaults=0x0 flags=0x10 color=0xffffffff vis=PRIVATE)
Push Notification for Apple was tried to implement using IBM MFP 7.1.0.
Sandbox certificate apns-certificate-sandbox.p12 in the project directory[apps/MyApp/apns-certificate-sandbox.p12] was added.
Below error has occurred, while the project was built.
FWLST1040E: iphone build failed: com.worklight.common.util.WorklightCertificateException: Certificate error: Unable to process certificate: apns-certificate-sandbox.p12
As per the earlier post's about the similar issue in this forum are tried. Ex: worklight-62-encrypt-ios-pushsender-password-in-application-descriptor
These two options are tried but still problem remains.
<pushSender password="password"/> in application-descriptor.xml
<pushSender password="${passwd}"/>in application-descriptor.xml
passwd=passwordin worklight.properties
A sample helloworld project is created & iphone environment added. As per the above drafted procedure tried and no luck with below combination.
IBM MFP 7.0.0.00.20150706-1910
IBM MFP 7.1.0.00.20151227-1725
IBM MFP 7.1.0.00.20160513-1006
As suspects in the comments, the problem was with the .p12 certificate. Once it has been regenerated the problem was resolved.
I'm successfully using the push notifications service provided by Bluemix, but a few days ago the push service became unavailable, at least for configuration purposes.
The only hint I've got is that my trial expired and had to enter my credit card, maybe that caused this problem.
Here's the exception thrown:
Exception thrown by application class 'com.ibm.mbaas.ui.BackendUtility.getJSONResponse:-1'
javax.servlet.ServletException: UIBACK108E: Got unsuccessful response from 'https://mccp.ng.bluemix.net/login/rolecheck?role=developers&space_guid=568581a0-9bbd-4fbf-9fb0-243c0d7febc3'. The response status was 502 Bad Gateway. The response body was: "502 Bad Gateway: Registered endpoint failed to handle the request. ".
at com.ibm.mbaas.ui.BackendUtility.getJSONResponse(Unknown Source)
at com.ibm.mbaas.ui.BackendUtility.checkRole(Unknown Source)
at com.ibm.mbaas.ui.security.UAACallBackServlet.doGet(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1285)
at [internal classes]
There may be times when the service itself becomes temporarily unavailable and can cause errors like this. Our team is working around the clock when these outages occur so be sure to check the status page for announcements/status when you think something is wrong.
https://developer.ibm.com/bluemix/support/#status
You can also check announcements on the developer works forum or post a question if the status pages are not reflecting your issues.
Up until recently my catalina.log used to report the following:
Mar 19, 2015 4:49:20 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring FrameworkServlet 'dispatcher1'
Mar 19, 2015 4:49:20 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-9080"]
Mar 19, 2015 4:49:20 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 53209 ms
which I look for during an automated deployment to know whether my servlet started OK. Recently, I no longer get this message in catalina.out. However:
there are no startup errors
logging is working
the server seems to be working perfectly, AFAICT (responds to all requests)
kill -3 doesn't show anything helpful that I can see
So,
What might have caused the "Server startup" message to stop being printed (and yet the server to accept connections)?
In (annotation based) Spring MVC, there a good place where I can place a hook and output a custom "servlet startup success" message?
The "standard out" may no longer be going to catalina.out. What's in your log4j property file? And what are you using to start Tomcat?
You could impelement a ServletContextListener to be aware of when the Servlet based application is ready to accept requests.
http://docs.oracle.com/javaee/6/api/javax/servlet/ServletContextListener.html#contextInitialized(javax.servlet.ServletContextEvent)
I'm trying to connect from adobe flash builder 4 beta to red5 v0.9 rc2 (latest svn).
i try to connect using the exact following example:
http://www.actionscript.org/resources/articles/615/3/Getting-started-with-red5-server/Page3.html
i get the following error message:
INFO] [NioProcessor-3] org.red5.server.net.rtmp.RTMPHandler - Connecting to: [WebScope#627b5c Depth = 1, Path = '/default', Name = 'mytestapp']
[WARN] [NioProcessor-3] org.red5.server.net.rtmp.RTMPConnection - Client rejected, unscheduling waitForHandshakeJob
org.red5.server.exception.ClientRejectedException: Client rejected
i can't seem to figure out what's the problem. can anyone please provide any information regarding to what may have caused this ?
i tried both on rtmp and rtmpe protocol but i receive the same error message.
thanks
update
I tried also using flex builder 3 and i get the same results.
Client rejected, unscheduling waitForHandshakeJob
this just means that the server rejected the connection.
the server side scripting rejected the connection because i did not provide several required parameters by the application.