Setting DataItem Value by using Java SDK on ServiceLink 6.1.3
Hi All,
I am trying to set a dataitem value by using Axeda Java SDK on ServicLink 6.1.3. I wrote following function to set data item value but it seems it is not working.
What is wrong with it? I found several piece of codes in forum with Groovy but I need Java SDK code. Thanks in advance..
import com.axeda.drm.sdk.device.DataItemValue;
import com.axeda.drm.sdk.device.Device;
import com.axeda.drm.sdk.device.DeviceData;
import com.axeda.drm.sdk.device.DeviceDataFinder;
public void setDeviceDataItemValue(Device device,String dataItemName, String value) {
DeviceDataFinder deviceDataFinder = new DeviceDataFinder(context);
deviceDataFinder.setId(device.getId());
deviceDataFinder.setIncludeDataItems(true);
DeviceData deviceData = deviceDataFinder.getDeviceData();
List<DataItemValue> dataItemValues = deviceData.getDataItems();
for(DataItemValue dataItemValue: dataItemValues){
if (dataItemValue.getDataItem().getName().equalsIgnoreCase(dataItemName)){
dataItemValue.setDataItemValue(value);
break;
}
}

Setting DataItem Value by using Java SDK on ServiceLink 6.1.3
By the way DataItem that I am trying to update is defined on Entrprise Server not on Agent.
Agent doesnt aware such data item. And I dont want to send it to agent too.
Did you get help for this?
If not, how are you setting this DI, with Action or Event?
In either way, I dont see how you're passing the context or the device in.