Hi,
The Jenkins Plugin that I create updates a job by Job Configuration. When I
use the JobConfigHistory Plugin to view the config changes, it throws an
error as described below. Any pointers on where I am going wrong here?
404 Not Found
Stapler processed this HTTP request as follows, but couldn't find the
resource to consume the request
-> evaluate(<hudson.model.Hudson@1ca83821>
:hudson.model.Hudson,"/job/kshantaraman/jobConfigHistory")
->
evaluate(((StaplerProxy)<hudson.model.Hudson@1ca83821>).getTarget(),"/job/kshantaraman/jobConfigHistory")
->
evaluate(<hudson.model.Hudson@1ca83821>.getJob("kshantaraman"),"/jobConfigHistory")
-> evaluate(<hudson.model.FreeStyleProject@22f7b6dc[kshantaraman]>
:hudson.model.FreeStyleProject,"/jobConfigHistory")
->
evaluate(<hudson.model.FreeStyleProject@22f7b6dc[kshantaraman]>.getDynamic("jobConfigHistory",...),"")
hudson.model.FreeStyleProject@22f7b6dc[kshantaraman].getDynamic("jobConfigHistory",...)==null.
Back tracking.-> No matching rule was found on
<hudson.model.FreeStyleProject@22f7b6dc[kshantaraman]> for "/jobConfigHistory"
<hudson.model.FreeStyleProject@22f7b6dc[kshantaraman]> has the following
URL mappings, in the order of preference:
1. hudson.model.AbstractProject.doDoDelete(...) for url=/doDelete/...
2. hudson.model.AbstractProject.doWs(...) for url=/ws/...
3. hudson.model.AbstractProject.doCheckRetryCount(...) for
url=/checkRetryCount/...
4. hudson.model.AbstractProject.doBuild(...) for url=/build/...
5. hudson.model.AbstractProject.doBuild(...) for url=/build/...
6. hudson.model.AbstractProject.doBuildWithParameters(...) for
url=/buildWithParameters/...
7. hudson.model.AbstractProject.doBuildWithParameters(...) for
url=/buildWithParameters/...
8. hudson.model.AbstractProject.doPolling(...) for url=/polling/...
9. hudson.model.AbstractProject.doCancelQueue(...) for
url=/cancelQueue/...
10. hudson.model.AbstractProject.doDoWipeOutWorkspace(...) for
url=/doWipeOutWorkspace/...
11. hudson.model.AbstractProject.doDisable(...) for url=/disable/...
12. hudson.model.AbstractProject.doEnable(...) for url=/enable/...
13. hudson.model.AbstractProject.doRssChangelog(...) for
url=/rssChangelog/...
14. hudson.model.AbstractProject.doConfigSubmit(...) for
url=/configSubmit/...
15. hudson.model.Job.doRssAll(...) for url=/rssAll/...
16. hudson.model.Job.doRssFailed(...) for url=/rssFailed/...
17. hudson.model.Job.doBuildStatus(...) for url=/buildStatus/...
18. hudson.model.Job.doDescription(...) for url=/description/...
19. hudson.model.Job.doDoRename(...) for url=/doRename/...
20. hudson.model.AbstractItem.doConfigDotXml(...) for url=/config.xml/...
21. hudson.model.AbstractItem.doSubmitDescription(...) for
url=/submitDescription/...
22. hudson.model.Actionable.doContextMenu(...) for url=/contextMenu/...
23. TOKEN.groovy for url=/TOKEN
24. VIEW.jelly for url=/VIEW
25. hudson.model.FreeStyleProject.DESCRIPTOR for url=/DESCRIPTOR/...
26. hudson.model.Item.PERMISSIONS for url=/PERMISSIONS/...
27. hudson.model.Item.CREATE for url=/CREATE/...
28. hudson.model.Item.DELETE for url=/DELETE/...
29. hudson.model.Item.CONFIGURE for url=/CONFIGURE/...
30. hudson.model.Item.READ for url=/READ/...
31. hudson.model.Item.DISCOVER for url=/DISCOVER/...
32. hudson.model.Item.EXTENDED_READ for url=/EXTENDED_READ/...
33. hudson.model.Item.BUILD for url=/BUILD/...
34. hudson.model.Item.WORKSPACE for url=/WORKSPACE/...
35. hudson.model.Item.WIPEOUT for url=/WIPEOUT/...
36. hudson.model.Item.CANCEL for url=/CANCEL/...
37. hudson.model.Saveable.NOOP for url=/NOOP/...
38. hudson.model.Item.PERMISSIONS for url=/PERMISSIONS/...
39. hudson.model.Item.CREATE for url=/CREATE/...
40. hudson.model.Item.DELETE for url=/DELETE/...
41. hudson.model.Item.CONFIGURE for url=/CONFIGURE/...
42. hudson.model.Item.READ for url=/READ/...
43. hudson.model.Item.DISCOVER for url=/DISCOVER/...
44. hudson.model.Item.EXTENDED_READ for url=/EXTENDED_READ/...
45. hudson.model.Item.BUILD for url=/BUILD/...
46. hudson.model.Item.WORKSPACE for url=/WORKSPACE/...
47. hudson.model.Item.WIPEOUT for url=/WIPEOUT/...
48. hudson.model.Item.CANCEL for url=/CANCEL/...
49. hudson.model.Saveable.NOOP for url=/NOOP/...
50. hudson.model.Saveable.NOOP for url=/NOOP/...
51. hudson.model.AbstractProject.ABORT for url=/ABORT/...
52. hudson.model.AbstractProject.BUILD_NOW_TEXT for
url=/BUILD_NOW_TEXT/...
53. hudson.model.Item.PERMISSIONS for url=/PERMISSIONS/...
54. hudson.model.Item.CREATE for url=/CREATE/...
55. hudson.model.Item.DELETE for url=/DELETE/...
56. hudson.model.Item.CONFIGURE for url=/CONFIGURE/...
57. hudson.model.Item.READ for url=/READ/...
58. hudson.model.Item.DISCOVER for url=/DISCOVER/...
59. hudson.model.Item.EXTENDED_READ for url=/EXTENDED_READ/...
60. hudson.model.Item.BUILD for url=/BUILD/...
61. hudson.model.Item.WORKSPACE for url=/WORKSPACE/...
62. hudson.model.Item.WIPEOUT for url=/WIPEOUT/...
63. hudson.model.Item.CANCEL for url=/CANCEL/...
64. hudson.model.Saveable.NOOP for url=/NOOP/...
65. hudson.model.AbstractItem.PRONOUN for url=/PRONOUN/...
66. hudson.model.Item.PERMISSIONS for url=/PERMISSIONS/...
67. hudson.model.Item.CREATE for url=/CREATE/...
68. hudson.model.Item.DELETE for url=/DELETE/...
69. hudson.model.Item.CONFIGURE for url=/CONFIGURE/...
70. hudson.model.Item.READ for url=/READ/...
71. hudson.model.Item.DISCOVER for url=/DISCOVER/...
72. hudson.model.Item.EXTENDED_READ for url=/EXTENDED_READ/...
73. hudson.model.Item.BUILD for url=/BUILD/...
74. hudson.model.Item.WORKSPACE for url=/WORKSPACE/...
75. hudson.model.Item.WIPEOUT for url=/WIPEOUT/...
76. hudson.model.Item.CANCEL for url=/CANCEL/...
77. hudson.model.Saveable.NOOP for url=/NOOP/...
78. hudson.model.FreeStyleProject.getDescriptor() for url=/descriptor/...
79. hudson.model.FreeStyleProject.getDescriptor() for url=/descriptor/...
80. hudson.model.FreeStyleProject.getDescriptor() for url=/descriptor/...
81. hudson.model.Project.getBuildWrappersList() for
url=/buildWrappersList/...
82. hudson.model.Project.getPublishersList() for url=/publishersList/...
83. hudson.model.Project.getBuilders() for url=/builders/...
84. hudson.model.Project.getPublishers() for url=/publishers/...
85. hudson.model.Project.getBuildersList() for url=/buildersList/...
86. hudson.model.Project.getBuildWrappers() for url=/buildWrappers/...
87. hudson.model.AbstractProject.getActions() for url=/actions/...
88. hudson.model.AbstractProject.getUpstreamProjects() for
url=/upstreamProjects/...
89. hudson.model.AbstractProject.getTransitiveUpstreamProjects() for
url=/transitiveUpstreamProjects/...
90. hudson.model.AbstractProject.getWorkspace() for url=/workspace/...
91. hudson.model.AbstractProject.getIconColor() for url=/iconColor/...
92. hudson.model.AbstractProject.getRelevantLabels() for
url=/relevantLabels/...
93. hudson.model.AbstractProject.getRootProject() for
url=/rootProject/...
94. hudson.model.AbstractProject.getLastBuild() for url=/lastBuild/...
95. hudson.model.AbstractProject.getLastBuild() for url=/lastBuild/...
96. hudson.model.AbstractProject.getDownstreamProjects() for
url=/downstreamProjects/...
97. hudson.model.AbstractProject.getScm() for url=/scm/...
98. hudson.model.AbstractProject.getQueueItem() for url=/queueItem/...
99. hudson.model.AbstractProject.getPronoun() for url=/pronoun/...
100. hudson.model.AbstractProject.getFirstBuild() for url=/firstBuild/...
101. hudson.model.AbstractProject.getFirstBuild() for url=/firstBuild/...
102. hudson.model.AbstractProject.getAssignedLabelString() for
url=/assignedLabelString/...
103. hudson.model.AbstractProject.getBuildNowText() for
url=/buildNowText/...
104. hudson.model.AbstractProject.getSomeWorkspace() for
url=/someWorkspace/...
105. hudson.model.AbstractProject.getSomeBuildWithWorkspace() for
url=/someBuildWithWorkspace/...
106. hudson.model.AbstractProject.getModuleRoot() for url=/moduleRoot/...
107. hudson.model.AbstractProject.getModuleRoots() for
url=/moduleRoots/...
108. hudson.model.AbstractProject.getScmCheckoutStrategy() for
url=/scmCheckoutStrategy/...
109. hudson.model.AbstractProject.getHasCustomQuietPeriod() for
url=/hasCustomQuietPeriod/...
110. hudson.model.AbstractProject.getProminentActions() for
url=/prominentActions/...
111. hudson.model.AbstractProject.getAuthToken() for url=/authToken/...
112. hudson.model.AbstractProject.getLastBuiltOn() for
url=/lastBuiltOn/...
113. hudson.model.AbstractProject.getSameNodeConstraint() for
url=/sameNodeConstraint/...
114. hudson.model.AbstractProject.getOwnerTask() for url=/ownerTask/...
115. hudson.model.AbstractProject.getWhyBlocked() for url=/whyBlocked/...
116. hudson.model.AbstractProject.getCauseOfBlockage() for
url=/causeOfBlockage/...
117. hudson.model.AbstractProject.getBuildingDownstream() for
url=/buildingDownstream/...
118. hudson.model.AbstractProject.getBuildingUpstream() for
url=/buildingUpstream/...
119. hudson.model.AbstractProject.getSubTasks() for url=/subTasks/...
120. hudson.model.AbstractProject.getSubTasks() for url=/subTasks/...
121. hudson.model.AbstractProject.getWorkspaceResource() for
url=/workspaceResource/...
122. hudson.model.AbstractProject.getResourceList() for
url=/resourceList/...
123. hudson.model.AbstractProject.getTriggers() for url=/triggers/...
124. hudson.model.AbstractProject.getBuildTriggerUpstreamProjects() for
url=/buildTriggerUpstreamProjects/...
125. hudson.model.AbstractProject.getTransitiveDownstreamProjects() for
url=/transitiveDownstreamProjects/...
126. hudson.model.AbstractProject.getCustomWorkspace() for
url=/customWorkspace/...
127. hudson.model.AbstractProject.getJDK() for url=/jDK/...
128. hudson.model.AbstractProject.getQuietPeriod() for
url=/quietPeriod/...
129. hudson.model.AbstractProject.getScmCheckoutRetryCount() for
url=/scmCheckoutRetryCount/...
130. hudson.model.AbstractProject.getAssignedLabel() for
url=/assignedLabel/...
131. hudson.model.Job.getProperties() for url=/properties/...
132. hudson.model.Job.getTimeline() for url=/timeline/...
133. hudson.model.Job.getBuilds() for url=/builds/...
134. hudson.model.Job.getBuilds() for url=/builds/...
135. hudson.model.Job.getBuildStatusUrl() for url=/buildStatusUrl/...
136. hudson.model.Job.getCharacteristicEnvVars() for
url=/characteristicEnvVars/...
137. hudson.model.Job.getEstimatedDuration() for
url=/estimatedDuration/...
138. hudson.model.Job.getBuildDir() for url=/buildDir/...
139. hudson.model.Job.getAllProperties() for url=/allProperties/...
140. hudson.model.Job.getOverrides() for url=/overrides/...
141. hudson.model.Job.getNextBuildNumber() for url=/nextBuildNumber/...
142. hudson.model.Job.getBuildDiscarder() for url=/buildDiscarder/...
143. hudson.model.Job.getLogRotator() for url=/logRotator/...
144. hudson.model.Job.getNewBuilds() for url=/newBuilds/...
145. hudson.model.Job.getBuildsAsMap() for url=/buildsAsMap/...
146. hudson.model.Job.getLastSuccessfulBuild() for
url=/lastSuccessfulBuild/...
147. hudson.model.Job.getLastUnsuccessfulBuild() for
url=/lastUnsuccessfulBuild/...
148. hudson.model.Job.getLastUnstableBuild() for
url=/lastUnstableBuild/...
149. hudson.model.Job.getLastStableBuild() for url=/lastStableBuild/...
150. hudson.model.Job.getLastFailedBuild() for url=/lastFailedBuild/...
151. hudson.model.Job.getLastCompletedBuild() for
url=/lastCompletedBuild/...
152. hudson.model.Job.getPermalinks() for url=/permalinks/...
153. hudson.model.Job.getBuildHealth() for url=/buildHealth/...
154. hudson.model.Job.getBuildHealthReports() for
url=/buildHealthReports/...
155. hudson.model.Job.getBuildTimeGraph() for url=/buildTimeGraph/...
156. hudson.model.Job.getACL() for url=/aCL/...
157. hudson.model.Job.getWidgets() for url=/widgets/...
158. hudson.model.Job.getAllJobs() for url=/allJobs/...
159. hudson.model.AbstractItem.getName() for url=/name/...
160. hudson.model.AbstractItem.getParent() for url=/parent/...
161. hudson.model.AbstractItem.getParent() for url=/parent/...
162. hudson.model.AbstractItem.getDisplayName() for url=/displayName/...
163. hudson.model.AbstractItem.getDescription() for url=/description/...
164. hudson.model.AbstractItem.getUrl() for url=/url/...
165. hudson.model.AbstractItem.getDisplayNameOrNull() for
url=/displayNameOrNull/...
166. hudson.model.AbstractItem.getFullName() for url=/fullName/...
167. hudson.model.AbstractItem.getApi() for url=/api/...
168. hudson.model.AbstractItem.getFullDisplayName() for
url=/fullDisplayName/...
169. hudson.model.AbstractItem.getSearchUrl() for url=/searchUrl/...
170. hudson.model.AbstractItem.getRootDir() for url=/rootDir/...
171. hudson.model.AbstractItem.getConfigFile() for url=/configFile/...
172. hudson.model.AbstractItem.getSearchName() for url=/searchName/...
173. hudson.model.AbstractItem.getShortUrl() for url=/shortUrl/...
174. hudson.model.AbstractItem.getAbsoluteUrl() for url=/absoluteUrl/...
175. hudson.model.AbstractModelObject.getSearchIndex() for
url=/searchIndex/...
176. hudson.model.AbstractModelObject.getSearch() for url=/search/...
177. java.lang.Object.getClass() for url=/class/...
178. hudson.model.AbstractProject.getDelay(StaplerRequest) for
url=/delay/...
179. hudson.model.AbstractProject.getBuild(String) for
url=/build/TOKEN/...
180. hudson.model.AbstractProject.getBuild(String) for
url=/build/TOKEN/...
181. hudson.model.Job.getProperty(String) for url=/property/TOKEN/...
182. hudson.model.Job.getBuildForCLI(String) for
url=/buildForCLI/TOKEN/...
183. hudson.model.AbstractItem.getDescriptorByName(String) for
url=/descriptorByName/TOKEN/...
184. hudson.model.AbstractProject.getBuildByNumber(int) for
url=/buildByNumber/N/...
185. hudson.model.AbstractProject.getBuildByNumber(int) for
url=/buildByNumber/N/...
186. hudson.model.AbstractProject.getNearestBuild(int) for
url=/nearestBuild/N/...
187. hudson.model.AbstractProject.getNearestBuild(int) for
url=/nearestBuild/N/...
188. hudson.model.AbstractProject.getNearestOldBuild(int) for
url=/nearestOldBuild/N/...
189. hudson.model.AbstractProject.getNearestOldBuild(int) for
url=/nearestOldBuild/N/...
190. hudson.model.Actionable.getAction(int) for url=/action/N/...
191. hudson.model.Job.getDynamic(String,StaplerRequest,StaplerResponse)
for url=/TOKEN/...
--
You received this message because you are subscribed to the Google Groups
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.