Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-5521

(7.0.z) wsdl diretory is not cleaned on application deploy/undeploy thereby leaving an empty folder under "/wsdl/data" directory

XMLWordPrintable

    • Hide

      Scenario 1 Reproducer:

      1) Deploy sample application(attached TestEar.ear) on a fresh instance of EAP 6.4.6 domain mode.
      2) Stop server via admin console or undeploy application via CLI.

      Check under "../data/wsdl/" directory. The wsdl content will be removed, however the empty folder still exists.

      Scenario 2 Reproducer:

      1) Deploy sample application(attached WsdlXsdExample.war) on a fresh instance of EAP 6.4.6 domain mode.
      2) Stop server via admin console or undeploy application via CLI.

      Check under "../data/wsdl/" directory. The xsd still exists whereas the wsdl file is removed.

      Show
      Scenario 1 Reproducer: 1) Deploy sample application(attached TestEar.ear) on a fresh instance of EAP 6.4.6 domain mode. 2) Stop server via admin console or undeploy application via CLI. Check under "../data/wsdl/" directory. The wsdl content will be removed, however the empty folder still exists. Scenario 2 Reproducer: 1) Deploy sample application(attached WsdlXsdExample.war) on a fresh instance of EAP 6.4.6 domain mode. 2) Stop server via admin console or undeploy application via CLI. Check under "../data/wsdl/" directory. The xsd still exists whereas the wsdl file is removed.
    • EAP 7.0.2

      Tested the issue in two different scenarios listed below :

      Scenario 1:

      When a web-service test EAR(having an EJB JAR/WAR inside it) is deployed in JBoss EAP, it creates a wsdl folder inside the data directory with the name of the deployed application. Suppose, there is an application TestEar.ear having an EJB web-service jar(MyEjb1.jar) in it. When this application is deployed in JBoss EAP, its wsdl will be published at `/data/wsdl/TestEar.ear/MyEjb1.jar/HelloService.wsdl`.

       wsdl
          └── TestEar.ear
                  └── MyEjb1.jar
                        └── HelloWebServiceBeanService.wsdl
      
      

      When the server is stopped or the application is undeployed, the wsdl content is removed from the location, however the folder is never deleted, thereby leaving an empty folder in the "/data/wsdl" directory:

      wsdl
          └── TestEar.ear
      
      

      This is not the scenario when a war/jar application is deployed, in which case the content is completely removed along with the folder.

      Scenario 2:

      In case of a war, the wsdl folder inside the application has the below structure :

      [sanaik@sanaik WEB-INF]$ tree
      .
      ├── classes
      .....
      └── wsdl
          ├── base
          │   └── as
          │       └── ServerInfoService_schema1.xsd
          ├── ServerInfoService.wsdl
          └── ServerInfoService.wsdl~
      ...
      
      

      Deploying the application creates the below structure under "/data/wsdl" directory :

      [sanaik@sanaik WsdlXsdExample.war]$ tree
      .
      ├── base
      │   └── as
      │       └── ServerInfoService_schema1.xsd
      └── ServerInfoService.wsdl
      
      

      On disabling the application via admin console, "ServerInfoService.wsdl" is cleared, however the below contents still remains :

      [sanaik@sanaik WsdlXsdExample.war]$ tree
      .
      └── base
          └── as
              └── ServerInfoService_schema1.xsd
      
      
      

      And JBoss does gives the below WARN message :

      [Server:server-one] 11:53:30,835 WARN  [org.jboss.ws.cxf.deployment] (MSC service thread 1-4) JBWS024097: Could not delete wsdl file /NotBackedUp/NEW/Cases/CASE-01604047/jboss-eap-6.4/domain/servers/server-one/data/wsdl/WsdlXsdExample.war/base
      [Server:server-one] 11:53:30,836 WARN  [org.jboss.ws.cxf.deployment] (MSC service thread 1-4) JBWS024100: Could not delete wsdl directory /NotBackedUp/NEW/Cases/CASE-01604047/jboss-eap-6.4/domain/servers/server-one/data/wsdl/WsdlXsdExample.war
      
      

      This is only the case if any xsd is placed inside a folder under the "/wsdl" directory and referenced in the wsdl.

            rhn-engineering-ema Jim Ma
            rhn-cservice-bbaranow Bartosz Baranowski
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: