Observe Thingworx Property Change with Java SDK
Hi all,
I'd like to observe a specific property of my Thingworx Thing via Java SDK. Therefore I've created a Thingworx Client, which is connected to Thingworx. After this, I've created a Virtual Thing with my Thingname and added a propertyChangeListener. Unfortunately, the listener does not get fired, as soon as I change the property in Thingworx. Does anyone know where's the problem or where to find an example for this?
Here's my Code Snippet:
ClientConfigurator config = new ClientConfigurator();
config.setUri("http://xxx.xxx.xxx.xxx:8080/Thingworx/WS");
config.setAppKey("xxx");
config.ignoreSSLErrors(true);
try {
TwxClient client = new TwxClient(config);
client.start();
boolean isConnected = client.waitForConnection(30000);
System.out.println("Client is connected:"+isConnected);
String thingName = "ThingWatcherThing";
VirtualThing thing = new VirtualThing(thingName, "", thingName, client);
thing.addPropertyChangeListener(new VirtualThingPropertyChangeListener() {
@Override
public void propertyChangeEventReceived(VirtualThingPropertyChangeEvent event) {
Property property = event.getProperty();
String name = property.getPropertyDefinition().getName();
if(name.equals("TestProp") == false){
return;
}
}
} );
client.bindThing(thing);
} catch (Exception e1) {
e1.printStackTrace();
}
So, where's the problem? Is ist the correct approach?
Many Greets, Korbinian

