Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Error when using addChangeset REST API

Nathan Clement December 6, 2012

I'm trying to call the Crucible REST API to add a changeset from AJAX. I know that the URL is correct because I can goto http://qvcru101/rest-service/reviews-v1/CR-SP-586/details and get the details XML back successfully. Can you please advise what's going on here? I got the XML request format from https://answers.atlassian.com/questions/64041/adding-changeset-to-crucible-review-using-rest-api

Here is the log from Tamper Data:

{noformat}

9:33:02.715 59ms total 59ms Status: 500 Internal Server Error

POST http://qvcru101/rest-service/reviews-v1/CR-SP-586/addChangeset Load Flags LOAD_BYPASS_CACHE LOAD_BACKGROUND Content Size 12585 Mime Type application/xml

Request Headers:

Host qvcru101

User-Agent Mozilla/5.0 (Windows NT 6.1; rv:16.0) Gecko/20100101 Firefox/16.0

Accept application/xml, text/xml, */*; q=0.01

Accept-Language en-au

Accept-Encoding gzip, deflate

Connection keep-alive

Content-Type text/xml; charset=UTF-8

X-Requested-With XMLHttpRequest

Referer http://qvcru101/updateReview.html?review=CR-SP-586&changesets=ServicePortal:1990

Content-Length 190

Cookie crucibleprefs1=D%3D1354829408098%3Bhed%3DY%3Bannm%3Dmixed%3Baec%3DY%3Bslp%3Dt%3Biuh%3DN%3Brevcol%3DN%3BcsTD%3Dfalse%3Bauthcol%3DN%3Basv%3Dcru; remember=nathanc:1541:e2b5b2b5938e6dc3ab768ec72e617145; FESESSIONID=3s6ilof7o5b912v8ors7185le

Pragma no-cache

Cache-Control no-cache

Post Data:

<addchangeset>

<repository>ServicePortal</repository>

<changesets>

<changesetdata>

<id>1990</id>

</changesetdata>

</changesets>

</addchangeset>

Response Headers:

Date Thu, 06 Dec 2012 22:33:02 GMT

Server Jetty(6.1.26)

Cache-Control private

X-AUSERNAME nathanc

X-ASESSIONID tvetu

Content-Type application/xml

Content-Length 12585

Connection close

<error>WebApplication<message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true/"><stacktrace>javax.ws.rs.WebApplicationException

at com.sun.jersey.server.impl.uri.rules.TerminatingRule.accept(TerminatingRule.java:66)

at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)

at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)

at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)

at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)

at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)

at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)

at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)

at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)

at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)

at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:178)

at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:795)

at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:73)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)

at com.atlassian.plugins.rest.module.servlet.RestServletUtilsUpdaterFilter.doFilterInternal(RestServletUtilsUpdaterFilter.java:26)

at com.atlassian.plugins.rest.module.servlet.RestServletUtilsUpdaterFilter.doFilter(RestServletUtilsUpdaterFilter.java:40)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)

at com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:25)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.cenqua.fisheye.web.filters.CrucibleRestFilter.doFilter(CrucibleRestFilter.java:26)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.crucible.filters.CrucibleFilter.doFilter(CrucibleFilter.java:146)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:287)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)

at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:55)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)

at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)

at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)

at com.cenqua.fisheye.web.filters.TotalityFilter.doFilter(TotalityFilter.java:188)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)

at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:55)

at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:78)

at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:131)

at com.cenqua.fisheye.web.filters.CustomIncludableGzipFilter.doFilter(CustomIncludableGzipFilter.java:27)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.cenqua.fisheye.web.filters.ProductInfoFilter.doFilter(ProductInfoFilter.java:44)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)

at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.cenqua.fisheye.web.filters.UpfrontFilter.doFilter(UpfrontFilter.java:54)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at com.atlassian.fecru.profiling.ProfilingServletFilter.doFilter(ProfilingServletFilter.java:74)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.mortbay.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1264)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)

at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)

at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)

at org.mortbay.jetty.Server.handle(Server.java:326)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)

at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:451)

</stacktrace></error>

{noformat}

2 answers

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

Post a new question

0 votes
Answer accepted
Nathan Clement December 9, 2012

It turned out that the problem in this case was that the content type I was using was text/xml, but needed to be application/xml.

0 votes
Foong
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
December 6, 2012

Hi Nathan,

Please try the following CURL command to test if the API is working:

curl -u nathanc:&lt;password&gt; --data @cr.txt http://qvcru101/rest-service/reviews-v1/CR-SP-586/addChangeset -X POST -H "Content-Type: application/xml"

TAGS
AUG Leaders

Atlassian Community Events