High-performance OPC-UA stack for Java
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


This project has moved!

The digitalpetri OPC-UA projects have been combined and are now part of the Eclipse IoT project umbrella.

Please use https://github.com/eclipse/milo instead.

OPC-UA Stack

Join the chat at https://gitter.im/digitalpetri/opc-ua-stack

A high-performance and open-source OPC-UA stack implementation.

Note: this is just a stack implementation (channels, serialization, structures, security). If you're looking to build a client or server, try the OPC-UA Client SDK or OPC-UA Server SDK.

Running the Example

Certificate validation is implemented in the server stack and so upon running the ClientServerExample for the first time you'll probably see a stack trace containing this exception:

Caused by: com.digitalpetri.opcua.stack.core.UaException: security checks failed
	at UaTcpClientAcknowledgeHandler.onError(UaTcpClientAcknowledgeHandler.java:162)
	at UaTcpClientAcknowledgeHandler.decode(UaTcpClientAcknowledgeHandler.java:89)

You'll now find a "security" folder in whatever you've configured your working directory as when running the example. Inside that folder, you should find "rejected", "revocation", and "trusted" folders. Move the client certificate in the "rejected" folder to the "trusted" folder and run the example again.


Releases are available from Maven Central:

Stack Server


Stack Client


The latest snapshots are available from the Sonatype snapshot repository:


Supported Features

Transport Protocols


Data Encoding

  • OPC-UA Binary

Security Profiles

  • None
  • Basic128Rsa15
  • Basic256
  • Basic256Sha256
Not Supported
  • SOAP/HTTP/HTTPS Transport
  • XML Data Encoding

Get Help

Contact kevinherron@gmail.com for more information.


Apache License, Version 2.0