Bug 998965

Summary: Cannot delete artifact from S-RAMP repository
Product: [JBoss] JBoss Fuse Service Works 6 Reporter: Stefan Bunciak <sbunciak>
Component: DT GovernanceAssignee: Kurt T Stam <kurt.stam>
Status: CLOSED CURRENTRELEASE QA Contact: Jiri Sedlacek <jsedlace>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 6.0.0 GACC: atangrin, kurt.stam, oskutka, soa-p-jira
Target Milestone: ER3   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://issues.jboss.org/browse/SRAMP-228
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Source code of JUnit test
none
Pre-built switchyard quickstart none

Description Stefan Bunciak 2013-08-20 12:43:33 UTC
Created attachment 788465 [details]
Source code of JUnit test

Description of problem:

Cannot delete some of the deployed/expanded artifacts in S-RAMP repository either via s-ramp-ui or using SrampAtomApiClient.
The attached JUnit test basically uploads switchyard demo application to S-RAMP does some assertions and tries to clean the repository by deleting previously deployed artifacts.

14:23:25,504 ERROR [org.overlord.sramp.server.atom.services.BatchResource] (http-/127.0.0.1:8080-15) Error deleting artifact: ac9f1785-5aa8-4b2f-8b6b-0d3fba6d0374: org.overlord.sramp.common.SrampServerException: javax.jcr.nodetype.NoSuchNodeTypeException: "sramp:extendedArtifactType" is not currently a mixin type for node "/s-ramp/artifacts/ac/9f/17/85-5aa8-4b2f-8b6b-0d3fba6d0374"
	at org.overlord.sramp.repository.jcr.JCRPersistence.deleteArtifact(JCRPersistence.java:409) [s-ramp-repository-jcr-0.3.0.Final.jar:0.3.0.Final]
	at org.overlord.sramp.server.atom.services.ArtifactResource.delete(ArtifactResource.java:443) [classes:]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_25]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_25]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_25]
	at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_25]
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:269) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:227) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:216) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:542) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50) [resteasy-jaxrs-2.3.6.Final-redhat-1.jar:2.3.6.Final-redhat-1]
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-1.jar:1.0.2.Final-redhat-1]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
	at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
Caused by: javax.jcr.nodetype.NoSuchNodeTypeException: "sramp:extendedArtifactType" is not currently a mixin type for node "/s-ramp/artifacts/ac/9f/17/85-5aa8-4b2f-8b6b-0d3fba6d0374"
	at org.modeshape.jcr.AbstractJcrNode.removeMixin(AbstractJcrNode.java:2479)
	at org.overlord.sramp.repository.jcr.JCRPersistence.deleteArtifact(JCRPersistence.java:388) [s-ramp-repository-jcr-0.3.0.Final.jar:0.3.0.Final]
	... 30 more

Version-Release number of selected component (if applicable):
* S-RAMP 6.0.0.ER1

How reproducible:
* Always

Steps to Reproduce:
1. Run the attached JUnit test (or similar)
2. 

Actual results:
* Fails to delete class org.switchyard.quickstarts.demo.policy.transaction.StoreService and the test stops.

Expected results:
* All artifacts can be deleted

Additional info:

Comment 1 Stefan Bunciak 2013-08-20 12:44:41 UTC
Created attachment 788466 [details]
Pre-built switchyard quickstart

Comment 2 Kurt Stam 2013-08-20 21:17:36 UTC
Yes this is bug, the issue is that an ArtifactType is not handled correctly and gets set to ExtendedArtifactType rather then ExtendedDocument. To fix this takes some testing in dev before I can check it in, so this won't make it into ER2.

Comment 3 Kurt Stam 2013-08-29 21:13:29 UTC
Pushed fix onto the 0.3.0.Final-prod-ip6.0 branch

Comment 4 Stefan Bunciak 2013-09-24 13:03:23 UTC
Cannot reproduce this issue anymore. Verified in FSW 6.0.0.ER3.