{"record":{"id":"520c0ddcd44c910f","repo":"pentaho/pentaho-kettle","slug":"kettleexception-e-jsoninput","errorCode":null,"errorMessage":"KettleException(e)","messagePattern":"KettleException\\(e\\)","errorType":"exception","errorClass":"KettleException","httpStatus":null,"severity":"error","filePath":"plugins/json/core/src/main/java/org/pentaho/di/trans/steps/jsoninput/JsonInput.java","lineNumber":422,"sourceCode":"    // Add Extension\n    if ( meta.getExtensionField() != null && meta.getExtensionField().length() > 0 ) {\n      outputRowData[ rowIndex++ ] = data.extension;\n    }\n    // add path\n    if ( meta.getPathField() != null && meta.getPathField().length() > 0 ) {\n      outputRowData[ rowIndex++ ] = data.path;\n    }\n    // Add Size\n    if ( meta.getSizeField() != null && meta.getSizeField().length() > 0 ) {\n      outputRowData[ rowIndex++ ] = new Long( data.size );\n    }\n    // add Hidden\n    if ( meta.isHiddenField() != null && meta.isHiddenField().length() > 0 ) {\n      try {\n        outputRowData[ rowIndex++ ] = new Boolean( data.file.isHidden() );\n      } catch ( FileSystemException e ) {\n        logError( BaseMessages.getString( PKG, \"JsonInput.Log.ErrorOccurredWhileDeterminingHiddenFileProperty\" ) );\n        throw new KettleException( e );\n      }\n    }\n    // Add modification date\n    if ( meta.getLastModificationDateField() != null && meta.getLastModificationDateField().length() > 0 ) {\n      outputRowData[ rowIndex++ ] = data.lastModificationDateTime;\n    }\n    // Add Uri\n    if ( meta.getUriField() != null && meta.getUriField().length() > 0 ) {\n      outputRowData[ rowIndex++ ] = data.uriName;\n    }\n    // Add RootUri\n    if ( meta.getRootUriField() != null && meta.getRootUriField().length() > 0 ) {\n      outputRowData[ rowIndex++ ] = data.rootUriName;\n    }\n  }\n\n  @Override\n  public void setOutputDone() {","sourceCodeStart":404,"sourceCodeEnd":440,"githubUrl":"https://github.com/pentaho/pentaho-kettle/blob/f3058517a153da500bf4551f46d79b91bf8ec552/plugins/json/core/src/main/java/org/pentaho/di/trans/steps/jsoninput/JsonInput.java#L404-L440","documentation":"KettleException wrapping a FileSystemException thrown in JsonInput.addExtraFields() when the step tries to read the 'hidden' attribute of the current input file (data.file.isHidden()) for the configured Hidden-Field output column. The step logs 'ErrorOccurredWhileDeterminingHiddenFileProperty' and aborts the row.","triggerScenarios":"getOneOutputRow -> addExtraFields, only when meta.isHiddenField() is set to a non-empty field name AND the underlying VFS FileObject.isHidden() throws FileSystemException (unsupported filesystem provider, VFS error accessing file metadata).","commonSituations":"Using a filesystem provider (e.g. certain remote/VFS schemes) that does not support the hidden attribute; file deleted between listing and attribute read; VFS misconfiguration or missing provider jar.","solutions":["Clear the 'Hidden field' output column in the step's Additional Fields settings if you don't actually need it.","Check the FileSystemException cause in the log and fix file access/permissions for the underlying file.","Verify the VFS provider for your source scheme is present and supported (e.g. correct vfs jar version).","Test the same path with a local file to isolate whether the scheme's VFS provider lacks isHidden support."],"exampleFix":"// before: step XML sets\n<hiddenFieldName>isHidden</hiddenFieldName>\n// after: remove the field if the filesystem doesn't support it\n<hiddenFieldName></hiddenFieldName>","handlingStrategy":"validation","validationCode":"// confirm the filesystem supports hidden attribute before enabling the field\nFileObject f = VFS.getManager().resolveFile(path);\nboolean supported = f.getFileSystem().hasCapability(Capability.GET_LAST_MODIFIED); // probe VFS capabilities for your scheme","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Only enable the Hidden-Field output column on local-file sources.","Keep the VFS provider jars for your schemes up to date.","Test step configuration against a sample file before production runs.","Don't enable extra-field columns you don't consume downstream."],"tags":["filesystem","vfs","file-attributes","kettle"],"backgroundTag":"file-read-failed","analyzedSha":"f3058517a153da500bf4551f46d79b91bf8ec552","analyzedAt":"2026-09-13T14:04:16.340Z","contentChangedAt":"2026-09-13T14:04:16.340Z","schemaVersion":2},"datasetVersion":"2026-09-20T23:17:15.980Z"}