Prosys OPC UA Java SDK 1.4.4  
This is a new service release of the SDK. It fixes several implementation details and provides some additional methods to improve existing functionality. 
 OPC Foundation Java Stack changes  
Build 1.01.330.4  
  -  Changed: Communication error related logging to give warning level messages only (instead of errors). 
  
 -  Fixed: A possible NPE at comm.error handling 
  
 -  Fixed: A chunk timing issue, which may lead to comm.errors. 
 
 Changes to both SDK Client and Server  
  -  New: EventData.getFieldNames() 
  
 -  Fixed: DataTypeConverter omits non-UaDataType nodes in the DataTypes - instead of choking with an exception. 
 
 Changes to SDK Client  
  -  New: Subscription.removeItems() 
  
 -  New: Subscription.setMonitoringMode() 
  
 -  Fixed: URISyntaxError was not raised on all invalid Uris 
  
 -  Fixed: Subscription.removeItem() to reset MonitoredItemId instead of ClientHandle to 0 
  
 -  Fixed: MonitoredItem.setMonitoringMode() to trigger the change into the server as well. 
 
 Changes to SDK Server  
  -  Fixed: Thread-safety of previousNode-cache in ServiceManagerBase 
  
 -  Fixed: EventData was not including components of Object type in the event fields 
  
 -  Fixed: BrowseName of the LimitState and ShelvingState components of ExclusiveLimitAlarmType were using an incorrect namespaceIndex 
  
 -  Fixed: DiscoveryServer's endpoints unbound when the server is closed (matters if the same process keeps running after the server is closed) 
  
 -  Fixed: SessionManager.createSession & activateSession synchronized to ensure that the session count won't overcome maxSessionCount even when clients are connected simultaneously 
  
 -  Fixed: AccessLevel was not verified for MonitoredDataItems: Now the IoManager is used to check if the user is allowed to read the variable and this is even rechecked when the session is reactivated. 
  
 -  Fixed: UserAccessLevel, UserWriteMask & UserExecutable filtered to not include values unavailable from AccessLevel, WriteMask & Executabl, respectively 
  
 -  Changed: EventManagerListener.onConditionRefresh is called between RefreshStart- and RefreshEnd-events (not before) 
  
 -  Changed: internal design of EventManager.refreshStart, refreshEnd changed and new refreshItems added (to call refreshItem for each)) 
  
 -  Changed: Opc.Ua.Nodeset2.xml updated 
  
 -  Changed: NodeManagerListener.onAfterModifyMonitoredDataItem & EventManagerListener.onAfterModifyMonitoredEventItem called also when MonitoringMode is changed. 
 
 Changes to the Sample applications  
  -  Fixed: SampleConsoleServer was not defining the LimitState for the alarms 
  
 -  Fixed: SampleConsoleServer was setting the TypeDefinition of analog items to the DataType 
  
 -  Fixed: SampleConsoleClient failed to display non-Variable attributes after read 
 
10.04.13