Error java.lang.ClassCastException: null (selectActions)

Got an error in RM that I can replicate every time.
Seems to depend on the trigger(s) I choose.

Steps to recreate:

  1. Click "Rule Machine"
  2. Click "Create New Rule"
  3. Type the name: "Test"
  4. Click "Select Trigger Events"
  5. Choose "Temperature"
  6. Click on "Temperature Sensors"
  7. Check the box next to one sensor
  8. Click on "Comparison"
  9. Select "<="
  10. Click on "Relative to a device?" to turn it on
  11. Click on "Temperature Sensor" and pick a device
  12. Set "Temperature Offset" to "-4"
  13. Click "Done with this Trigger Event"
  14. Click "Done with Trigger Events"
  15. Click on "Select Actions to run"
  16. Observe blank portion of the page where actions list would have been:
  17. Click "Done"
  18. Click "Done" again
  19. Click "Logs"
  20. Click "Show Past Logs"
  21. Observe the error:
    image

I've repeated these steps 3 times just to make sure that I didn't click "Apps List" or anything like that... Also, no backups were restored either before or during these steps.

Thanks!

I just followed your steps exactly and don't get the same results as you. This is what I get when click 'Select Actions to Run'

I'm not suggesting that your not having this issue just that I can't reproduce it in my system. I wanted to see if it was a bug that impacted all hubs. I'm running 2.1.7.127

Interestingly, I tried a variety of other triggers and did NOT get any errors - just with that specific temperature one...

are you sure that all the temperature sensors that you've selected in fact are reporting temperatures?

check the driver details for that sensor, if there is no temperature being reported that would generate that error

Looks OK to me:

The "relative to" device was a thermostat:

Both seem to have a valid state with the name "temperature"...
But: next I'm going to pick different devices for both of these (especially the first one, given that the driver for that one was written by me :thinking:)

If I start with a different device, say a motion sensor that also reports temperature, THEN edit the trigger and change it to my temperature sensor in question, Actions work properly!

Only if I start right away with this temperature sensor as part of the trigger, then Actions throws that error, and after that the rule becomes "broken" no matter which device I change the trigger to, or even if I delete the entire trigger...

I've put the source code for this driver on GitHub: levvp-TempHumi-Sensor

There, on line 56, I'm getting a plain-text temperature value, converting it to a float and sending that as the "temperature" event.

In the device I can definitely see the value:

Of course, I wish there was a way to get a response from HTTP GET action in RM and assign it to a variable... Then I wouldn't make some kind of a mistake here :grin:
Can't see what's wrong though...