takraj opened a new issue, #1106:
URL: https://github.com/apache/plc4x/issues/1106

   ### What would you like to happen?
   
   The OPC-UA protocol supports browsing, but the driver does not. Please 
implement it, in order to be able to recursively fetch data with the library.
   
   Example code to browse the value tree:
   ```
   DefaultPlcDriverManager driverManager = new DefaultPlcDriverManager();
   try (PlcConnection opcuaConnection = 
driverManager.getConnection("opcua:tcp://opcuaserver.com:48010")) {
       PlcBrowseRequest request = opcuaConnection.browseRequestBuilder()
               .addQuery("Folder","ns=2;s=Demo.Static")
               .build();
   
       PlcBrowseResponse response = request.execute().get();
       System.out.println(response.getValues("Folder"));
   }
   ```
   
   The above program throws the exception below:
   ```
   org.apache.plc4x.java.api.exceptions.PlcUnsupportedOperationException: The 
connection does not support browsing
        at 
org.apache.plc4x.java.spi.connection.AbstractPlcConnection.browseRequestBuilder(AbstractPlcConnection.java:159)
        at 
org.apache.plc4x.java.opcua.ManualOpcuaFolderNode.main(ManualOpcuaFolderNode.java:32)
   ```
   
   Example output of another software, that supports browsing:
   ```
   $ uabrowse -u "opc.tcp://opcuaserver.com:48010" -n "ns=2;s=Demo.Static"
   WARNING:asyncua.client.client:Requested session timeout to be 3600000ms, got 
600000ms instead
   Browsing node ns=2;s=Demo.Static at opc.tcp://opcuaserver.com:48010
   
   DisplayName                    NodeId                    BrowseName          
      Value                    
   
   LocalizedText(Locale='', Text='Arrays') ns=2;s=Demo.Static.Arrays 2:Arrays   
              
   LocalizedText(Locale='', Text='Scalar') ns=2;s=Demo.Static.Scalar 2:Scalar   
              
   LocalizedText(Locale='', Text='VariableWithNumericNodeId') ns=2;i=4294967294 
        2:VariableWithNumericNodeId, 12 
   LocalizedText(Locale='', Text='VariableWithGuidNodeId') 
ns=2;g=5ce9dbce-5d79-434c-9ac3-1cfba9a6e92c 2:VariableWithGuidNodeId , 0  
   LocalizedText(Locale='', Text='VariableWithByteStringNodeId') 
ns=2;b=0x61626364         2:VariableWithByteStringNodeId, 0  
   LocalizedText(Locale='', Text='Matrix') ns=2;s=Demo.Static.Matrix 2:Matrix
   ```
   
   [Wireshark capture of the above browsing 
request](https://github.com/apache/plc4x/files/12708323/opc-ua-browse-request.pcapng.gz)
   
   
   ### Programming Languages
   
   - [X] plc4j
   - [ ] plc4go
   - [ ] plc4c
   - [ ] plc4net
   
   ### Protocols
   
   - [ ] AB-Ethernet
   - [ ] ADS /AMS
   - [ ] BACnet/IP
   - [ ] CANopen
   - [ ] DeltaV
   - [ ] DF1
   - [ ] EtherNet/IP
   - [ ] Firmata
   - [ ] KNXnet/IP
   - [ ] Modbus
   - [X] OPC-UA
   - [ ] S7


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@plc4x.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to