Hide Forgot
Affects: Release Notes Workaround Description: The correct class name is specified. project_key: SOA This code does not work Session session = RepositoryReferenceFactory.getRepository("test-file").login(); ValueFactory vf = session.getValueFactory(); Node root = session.getRootNode(); Node file = root.addNode("createfile.mode", "nt:file"); Node content = file.addNode("jcr:content", "nt:resource"); content.setProperty("jcr:data", vf.createBinary(new ByteArrayInputStream("Write 1".getBytes()))); session.save(); session.getNode("/createfile.mode"); It throws an exception javax.jcr.PathNotFoundException: Unable to find "{}createfile.mode"; lowest existing path is "/" at org.modeshape.jcr.JcrSession.getNode(JcrSession.java:779) at org.modeshape.jcr.JcrSession.getNode(JcrSession.java:649) at org.modeshape.jcr.JcrSession.getNode(JcrSession.java:106) at org.jboss.soa.modeshape.qa.tests.BrokenFileConnectorTest.fileCreate(BrokenFileConnectorTest.java:31) Connector configuration <mode:source jcr:name="test-file" mode:classname="org.modeshape.connector.filesystem.FileSystemSource" mode:creatingWorkspaceAllowed="true" mode:retryLimit="3" mode:defaultWorkspaceName="default" mode:filenameFilter="*.mode" mode:updatesAllowed="true" > <xsl:attribute name="mode:workspaceRootPath"> <xsl:value-of select="$repositorypath"/> </xsl:attribute> <mode:predefinedWorkspaceNames>file1</mode:predefinedWorkspaceNames> <mode:predefinedWorkspaceNames>file2</mode:predefinedWorkspaceNames> <mode:predefinedWorkspaceNames>custom-federated</mode:predefinedWorkspaceNames> </mode:source> The file is not physically created after the session.save(). Creating folders works reliably. This code was worked in ER2.
The file system connector should validate the filenamefilter to ensure its value, if present, is a valid class name.
Link: Added: This issue depends MODE-986
Candidate for SOA 5.1.0
The changes have been committed to the 2.2.x product branch and should be in the ER5 build.
It is still possible to configure FileSystemConnector like this <mode:source jcr:name="test-file" mode:classname="org.modeshape.connector.filesystem.FileSystemSource" mode:creatingWorkspaceAllowed="true" mode:retryLimit="3" mode:defaultWorkspaceName="default" mode:filenameFilter="THISISNONSENSE" mode:updatesAllowed="true" mode:workspaceRootPath="/home/jpechane/workspace/SOATests/tests/modeshape/build/test-repositories"> and it works
Release Notes Docs Status: Added: Documented as Known Issue Release Notes Text: Added: If an invalid filenamefilter is specified, a javax.jcr.PathNotFoundException will be thrown, instead of a user friendly exception explaining the configuration issue. Workaround Description: Added: The correct class name is specified.
Affects: Added: [Release Notes]
Thisissue is fixed in Modeshape 2.5.x which is contained in SOA-P 5.2, but the patch wasn't applied to 2.2.1 branch. If there will be cumulative patch releases of SOA-P 5.1 with Modeshape 2.2.x contained we should request this fix to be applied on 2.2.x branch.
Release Notes Docs Status: Removed: Documented as Known Issue Added: Documented as Resolved Issue Writer: Added: dlesage Release Notes Text: Removed: If an invalid filenamefilter is specified, a javax.jcr.PathNotFoundException will be thrown, instead of a user friendly exception explaining the configuration issue. Added: If an invalid filenamefilter was specified, a javax.jcr.PathNotFoundException was thrown, instead of a user-friendly exception explaining the configuration issue. A patch has been applied to Modeshape to rectify this issue.
Verified in ER5