Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-1098

Business Central does not close the editors for the assets (process, workitem) even if their Repository is deleted

XMLWordPrintable

      Description of problem:

      • It has been observed that after opening a few assets (e.g. BPMN2 Process in Business Process Editor) if the repository has been deleted from the Business Central console, those already opened editors are not closed by the console and are left opened. It not only causes strange behaviour as explained below but also leaves a bad impression to the users about the UI. Although users can simply close those editors and windows which are not in use, but it would be good if the Business Central console itself closes those editors and windows which were related to the already deleted Repository.

      Version-Release number of selected component (if applicable):

      • Red Hat JBoss BPMS Platform 6

      How reproducible:

      • Always

      Steps to Reproduce:

      • This issue can be reproduced while using both the features to create a Repository in Business Central.

      [Authoring -> Administration -> Repositories -> New repository]
      1. Create a "New Repository" from Business Central following the link above. After that leave open the "RepositoryEditor [..]" window.
      2. Create a new Project from "Authoring -> Project Authoring -> New Item -> Project" and then create any asset (like, BPMN2 process, WorkItem etc.) for an example a simple Process under the same project. Save it and leave open both the "Project Screen" of the newly created project and the Business Process Editor.
      3. Now, go back to the view the list of repositories from "Authoring -> Administration -> Repositories -> List" .
      4. "Delete" the newly created Repository from that "Repository Editor" and click on the drop down menu at the extreme right of the window and you would see that the "RepositoryEditor [..]" window of the deleted Repository is still accessible and open as shown in "DeletedRepositoryViewStillOpen.png" and "DeletedRepositoryOpenedinRepoEditor.png". Even users can click on buttons like "Revert" although nothing would happen. The "Organizational Unit Manager" windows would not show the deleted Repository as shown "OrgManagerDoesntDisplayDeletedRepo.png".
      5. Now, go back to the "Project Authoring" view and sometimes users face an error as displayed here "AlteringtoProjectExplorer.png" . The terminal logs the following ERROR.
      ~~~
      13:58:48,369 ERROR [stderr] (http-/10.10.10.10:8080-1) org.uberfire.java.nio.file.FileSystemNotFoundException
      13:58:48,370 ERROR [stderr] (http-/10.10.10.10:8080-1) at org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider.getPath(JGitFileSystemProvider.java:638)
      13:58:48,370 ERROR [stderr] (http-/10.10.10.10:8080-1) at org.jbpm.designer.repository.vfs.VFSRepository.loadAsset(VFSRepository.java:310)
      13:58:48,371 ERROR [stderr] (http-/10.10.10.10:8080-1) at org.jbpm.designer.repository.vfs.VFSRepository$Proxy$$$_WeldClientProxy.loadAsset(VFSRepository$Proxy$$$_WeldClientProxy.java)
      13:58:48,371 ERROR [stderr] (http-/10.10.10.10:8080-1) at org.jbpm.designer.repository.servlet.AssetServiceServlet.doPost(AssetServiceServlet.java:106)
      13:58:48,371 ERROR [stderr] (http-/10.10.10.10:8080-1) at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
      ...
      13:58:48,400 ERROR [org.jbpm.designer.repository.servlet.AssetServiceServlet] (http-/10.10.10.10:8080-1) Error storing asset: null
      ~~~
      6. Now, the Business Process Editor is still left opened and it shows blank page as seen in "BusinessProcessEditorblank.png" , and the ERROR in the terminal is logged as below.
      ~~~
      14:10:52,000 ERROR [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] (http-/10.10.10.10:8080-4) null
      14:10:52,116 ERROR [stderr] (http-/10.10.10.10:8080-4) org.uberfire.java.nio.file.FileSystemNotFoundException
      14:10:52,118 ERROR [stderr] (http-/10.10.10.10:8080-4) at org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider.getPath(JGitFileSystemProvider.java:638)
      14:10:52,119 ERROR [stderr] (http-/10.10.10.10:8080-4) at org.jbpm.designer.repository.vfs.VFSRepository.loadAsset(VFSRepository.java:310)
      14:10:52,119 ERROR [stderr] (http-/10.10.10.10:8080-4) at org.jbpm.designer.repository.vfs.VFSRepository$Proxy$$$_WeldClientProxy.loadAsset(VFSRepository$Proxy$$$_WeldClientProxy.java)
      14:10:52,120 ERROR [stderr] (http-/10.10.10.10:8080-4) at org.jbpm.designer.web.repository.impl.UUIDBasedJbpmRepository.load(UUIDBasedJbpmRepository.java:32)
      14:10:52,120 ERROR [stderr] (http-/10.10.10.10:8080-4) at org.jbpm.designer.web.server.UUIDBasedRepositoryServlet.doGet(UUIDBasedRepositoryServlet.java:117)
      14:10:52,121 ERROR [stderr] (http-/10.10.10.10:8080-4) at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
      ...
      14:10:52,207 WARN [org.jboss.solder.exception.control.log] (http-/10.10.10.10:8080-4) No handlers found for exception java.lang.IllegalArgumentException: java.io.FileNotFoundException: /root/jboss-eap-6.1/standalone/deployments/business-central.war/org.kie.workbench.KIEWebapp/stencilsets/bpmn2.0jbpm/stencilset/stencilsets/bpmn2.0jbpm/bpmn2.0jbpm.json (No such file or directory)
      14:10:52,208 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/business-central].[StencilSetServiceServlet]] (http-/10.10.10.10:8080-4) JBWEB000236: Servlet.service() for servlet StencilSetServiceServlet threw exception: java.lang.IllegalArgumentException: java.io.FileNotFoundException: /root/jboss-eap-6.1/standalone/deployments/business-central.war/org.kie.workbench.KIEWebapp/stencilsets/bpmn2.0jbpm/stencilset/stencilsets/bpmn2.0jbpm/bpmn2.0jbpm.json (No such file or directory)
      at org.jbpm.designer.web.stencilset.impl.LocalStencilSetImpl.getResourceContents(LocalStencilSetImpl.java:46) [jbpm-designer-backend-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      at org.jbpm.designer.web.stencilset.impl.StencilSetServiceServlet.doGet(StencilSetServiceServlet.java:119) [jbpm-designer-backend-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:734) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-1.jar:1.0.2.Final-redhat-1]
      ...
      Caused by: java.io.FileNotFoundException: /root/jboss-eap-6.1/standalone/deployments/business-central.war/org.kie.workbench.KIEWebapp/stencilsets/bpmn2.0jbpm/stencilset/stencilsets/bpmn2.0jbpm/bpmn2.0jbpm.json (No such file or directory)
      at java.io.FileInputStream.open(Native Method) [rt.jar:1.6.0_23]
      at java.io.FileInputStream.<init>(FileInputStream.java:106) [rt.jar:1.6.0_23]
      at org.jbpm.designer.web.stencilset.impl.LocalStencilSetImpl.getResourceContents(LocalStencilSetImpl.java:44) [jbpm-designer-backend-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      ... 92 more

      14:10:54,413 INFO [org.jbpm.designer.web.server.DictionaryServlet] (http-/10.10.10.10:8080-2) Unable to find existing dictionary information.
      ~~~

      7. Even the "Project Screen" of the project is also visible which belongs to the deleted Repository. However, if users click on buttons like "Save" it doesn't work and if "Build & Deploy" is pressed then the confirmation window appears but it doesn't allow to build it. And on the terminal following ERROR is thrown.
      ~~~
      14:39:07,407 ERROR [org.guvnor.common.services.builder.BuildServiceImpl] (http-/10.10.10.10:8080-1) Parameter named 'path' should be not null!: java.lang.IllegalArgumentException: Parameter named 'path' should be not null!
      at org.uberfire.commons.validation.PortablePreconditions.checkNotNull(PortablePreconditions.java:119) [uberfire-commons-0.3.3-redhat-4.jar:0.3.3-redhat-4]
      at org.guvnor.common.services.backend.cache.LRUCache.invalidateCache(LRUCache.java:70) [guvnor-services-api-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      at org.guvnor.common.services.builder.LRUBuilderCache$Proxy$$$_WeldClientProxy.invalidateCache(LRUBuilderCache$Proxy$$$_WeldClientProxy.java) [guvnor-project-builder-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      at org.guvnor.common.services.builder.BuildServiceImpl.doBuild(BuildServiceImpl.java:144) [guvnor-project-builder-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      at org.guvnor.common.services.builder.BuildServiceImpl.buildAndDeploy(BuildServiceImpl.java:95) [guvnor-project-builder-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      at org.guvnor.common.services.builder.BuildServiceImpl$Proxy$$$_WeldClientProxy.buildAndDeploy(BuildServiceImpl$Proxy$$$_WeldClientProxy.java) [guvnor-project-builder-6.0.3-redhat-4.jar:6.0.3-redhat-4]
      ...

      ~~~

      [Authoring -> Administration -> Repositories -> New repository]
      1. Use the above links to clone a repository from an existing external Git repository and the aforementioned tests can be performed which would show the same results in terms of unclosed windows and editors.
      2. Apart from that there is an interesting experiment that was done here. After cloning the repository if users want to explore the newly cloned repository and open an asset (like, a BPMN2 process) while standing on the "Administration" window. After the process editor is opened and visible, leave it as it is and proceed.
      3. Now, visit "Repositories -> List" and delete the newly cloned repository from "RepositoryEditor" window clicking "Delete" button.
      4. Check and confirm that the repository is no longer visible in "Organizational Unit Manager" window as shown here "RepositoryDeletedFromOrgUnMgr.png" .
      5. Now, click on the drop-down list seen at the extreme right hand side of the window and the Business Process Editor which was left opened earlier, can be seen. If users click to open it the process can be seen as it is "ProcessEditorDisplayingDeletedRepo.png" . Even if users make some changes on it and try to "Save" it , that is also allowed with a success message. However, on the terminal the following exception is thrown.
      ~~~
      14:10:52,208 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/business-central].[StencilSetServiceServlet]] (http-/10.10.10.10:8080-4) JBWEB000236: Servlet.service() for servlet StencilSetServiceServlet threw exception: java.lang.IllegalArgumentException: java.io.FileNotFoundException: /root/jboss-eap-6.1/standalone/deployments/business-central.war/org.kie.workbench.KIEWebapp/stencilsets/bpmn2.0jbpm/stencilset/stencilsets/bpmn2.0jbpm/bpmn2.0jbpm.json (No such file or directory)
      ...
      ~~~

      Actual results:

      • Business Central leaves open the windows and editors belonging to the assets whose packaging Repository has been deleted.

      Expected results:

      • Ideally, Business Central should close the windows and editors belonging to the assets whose packaging Repository has been deleted.

      Additional info:

      • NA

        1. RepositoryDeletedFromOrgUnMgr.png.png
          66 kB
          Musharraf Hussain
        2. ProcessEditorDisplayingDeletedRepo.png.png
          82 kB
          Musharraf Hussain
        3. OrgManagerDoesntDisplayDeletedRepo.png.png
          73 kB
          Musharraf Hussain
        4. DeletedRepositoryViewStillOpen.png.png
          64 kB
          Musharraf Hussain
        5. DeletedRepositoryOpenedinRepoEditor.png.png
          79 kB
          Musharraf Hussain
        6. DeletedRepositoryAvailable.png.png
          77 kB
          Musharraf Hussain
        7. BusinessProcessEditorblank.png.png
          62 kB
          Musharraf Hussain
        8. AlteringtoProjectExplorer.png.png
          54 kB
          Musharraf Hussain
        9. 6.1.0 ER5: Form modeler which was deleted (the empty content of the editor).png
          56 kB
          Sona Mala
        10. 6.1.0 ER5: DRL file which was deleted.png
          81 kB
          Sona Mala

            rh-ee-pefernan Pere Fernandez Perez
            rhn-support-mhussain Musharraf Hussain
            Marian Macik Marian Macik
            Marian Macik Marian Macik
            Jiří Locker, Kris Verlaenen, Maik Heller (Inactive), Marian Macik, Michael Anstis, Rajesh Rajasekaran
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: