Category Archives: Java

Eclipse IoT at JavaOne 2015

If you are attending JavaOne this week, I want to make sure you don’t miss out on the many opportunities to learn more about Eclipse IoT, and meet the people behind it.

Eclipse Foundation booth

You can find us at the Eclipse Foundation booth (#5710). There will be several IoT demos all week long, so it’s probably your best chance to learn about Eclipse IoT and meet the people behind our projects. There will also be an exciting announcement at the beginning of the week so you may want to drop by to learn more! 🙂

Tutorials

We’ll start the week with a CoAP tutorial that should be pretty fun, and an opportunity for you to learn more about this interesting IoT protocol.

  • Connecting Everything with CoAP [TUT5637] – Benjamin Cabé, Eclipse Foundation
    Monday, Oct 26, 8:30 a.m. | Hilton—Continental Ballroom 7/8/9

Conference sessions

There are lots of Eclipse IoT related talks this year, so please make sure your agenda is up-to-date if you want to learn more about Kura, SmartHome, MQTT, and much more…

  • End-to-End IoT Solutions with Java and Eclipse IoT Technology [CON5624] – Benjamin Cabé, Eclipse Foundation
    Monday, Oct 26, 2:30 p.m. | Hilton—Continental Ballroom 6
  • Taming the Nashorn to Rule the Smart Home [CON5375] – Kai Kreuzer, Deutsche Telekom
    Monday, Oct 26, 12:30 p.m. | Hilton—Continental Ballroom 7/8/9
  • Security for Java-Based IoT Gateways [CON5364] – Marco Carrer & Luca Dazi, Eurotech
    Tuesday, Oct 27, 12:30 p.m. | Hilton—Continental Ballroom 6
  • Plugging Configurability into Your IoT Application Gateway [CON4441] – Marco Carrer, Eurotech & Frank Alexander Kramer, bitreactive
    Tuesday, Oct 27, 2:30 p.m. | Hilton—Continental Ballroom 6
  • Visualize Your IoT in the Cloud (with Flying Drones) [CON2087] – Ville Ingman, Vaadin
    Tuesday, Oct 27, 4:00 p.m. | Hilton—Continental Ballroom 7/8/9

I hope to see many of you at the conference, please ping me if you want to have a chat!

Identifier le deadlock d’une application Java

lockLe wiki Eclipse détaille très clairement la procédure pour obtenir un dump de la JVM au moment précis où celle-ci semble soit complétement bloquée, soit tombée dans un mode dans lequel un thread s’est emballé et occupe 100% du CPU…

Pour faire court, si vous avez un JDK 1.6 ou supérieur, il ne vous faudra que quelques secondes pour obtenir un état de la pile, puisqu’il suffit d’exécuter :

  • jps, afin d’obtenir le PID de la JVM qui vous intéresse
  • jstack <pid>, pour obtenir le dump sur la sortie standard

Avec une version de JDK plus ancienne, il faut avoir lancé la JVM (de Sun…) avec l’option -Dcom.sun.management.jmxremote. Cela permet de s’y connecter par la suite avec l’outil jconsole. Bien qu’assez peu contraignante, cette pratique a tout de même l’inconvénient d’obliger à savoir à l’avance que l’application va tomber dans un deadlock, ce qui n’est pas toujours le cas… 😉

Si vous êtes sous Linux, vous avez gagné puisque quelle que soit votre version de Java, un kill -3 <pid_JVM> fonctionnera à coup sûr !

Le wiki détaille d’autres procédures, et notamment comment s’y prendre si l’on veut obtenir le dump d’une application à distance.