2014-05-21 2 views
0

다른 사람이 쓴 Hudson/Jenkins 플러그인 작업에 대한 책임을 맡았고, 나는이 새로운 것을 익숙하게했습니다 ...hudson/jenkins jelly에서 아약스 전화를하는 방법?

config.jelly 파일 중 하나에서 이것을 시작하는 javascript 코드가 있습니다 방법 :

new Ajax.Request("../../descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters", { 

나는 아약스를 사용하여 지정된 자바 클래스의의 getParameters 메소드를 호출하려고 시도하는 것을 알고,하지만 난이 몇 가지 질문에 답변을 얻을 수 있다면 난 정말 감사하겠습니다 :
1) 어떤이있다 "../"을 사용하여 URL이 올라 가기 시작하는 상대적 현재 위치
2) 무엇이 "../../descriptorByName"의 의미는 무엇입니까? "descriptorByName"이 키워드이고 일부 폴더 위치를 참조하지 않는 것 같습니다 ...
3) "new Ajax.Request"및 해당 매개 변수에 대한 설명을 찾을 수있는 곳과 젠킨스. 젤리의 맥락?
4) 해결하려고하는 문제 : "모든"보기에서 작업에서이 아약스 호출이 트리거 될 때 (자바 클래스의 메서드에 도달), 그러나 새 Jenkins보기를 만드는 경우 이 작업이 포함되어 있고 위의 아약스 호출이 뷰에서 트리거 될 때 아약스 호출이 실패합니다. 자바 메소드는 결코 실행되지 않습니다. 나는 아래와 같은 응답을 얻는다. 내가 어떻게 모든보기에서 트리거 될 때 작동 것이다 방식으로 아약스 요청 URL "../../ DESCR ..."을 지정할 수 있습니다 (다만 "모든"보기?)


질문 (4) 위의 시험에 의해 - 난 내 문제에 대한 해결책을 찾기 위해 관리

<a href="" onclick="document.getElementById('valerr26').style.display='block';return false">ERROR</a><div id="valerr26" style="display:none"><html><body> 
<h1>404 Not Found</h1> 
<p>Stapler processed this HTTP request as follows, but couldn't find the resource to consume the request 
<pre> 
-> evaluate(&lt;[email protected]> :hudson.model.Hudson,"/view/SpecialView/descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters") 
-> evaluate(((StaplerProxy)&lt;[email protected]>).getTarget(),"/view/SpecialView/descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters") 
-> evaluate(&lt;[email protected]>.getView("SpecialView"),"/descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters") 
-> evaluate(&lt;[email protected]> :hudson.model.ListView,"/descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters") 
-> evaluate(&lt;[email protected]>.getDynamic("descriptorByName",...),"/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters") 
      [email protected]("descriptorByName",...)==null. Back tracking. 
<font color=red>-&gt; No matching rule was found on &lt;[email protected]&gt; for "/descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters"</font> 
</pre> 
<p>&lt;[email protected]&gt; has the following URL mappings, in the order of preference:<ol> 
<li> 
hudson.model.ListView.doAddJobToView(...) for url=/addJobToView/... 
<li> 
hudson.model.ListView.doRemoveJobFromView(...) for url=/removeJobFromView/... 
<li> 
hudson.model.ListView.doCreateItem(...) for url=/createItem/... 
<li> 
hudson.model.View.doRssAll(...) for url=/rssAll/... 
<li> 
hudson.model.View.doRssFailed(...) for url=/rssFailed/... 
<li> 
hudson.model.View.doDoDelete(...) for url=/doDelete/... 
<li> 
hudson.model.View.doConfigDotXml(...) for url=/config.xml/... 
<li> 
hudson.model.View.doConfigSubmit(...) for url=/configSubmit/... 
<li> 
hudson.model.View.doSubmitDescription(...) for url=/submitDescription/... 
<li> 
hudson.model.View.doRssLatest(...) for url=/rssLatest/... 
<li> 
TOKEN.groovy for url=/TOKEN 
<li> 
VIEW.jelly for url=/VIEW 
<li> 
hudson.model.Saveable.NOOP for url=/NOOP/... 
<li> 
hudson.model.View.LIST for url=/LIST/... 
<li> 
hudson.model.View.SORTER for url=/SORTER/... 
<li> 
hudson.model.View.PERMISSIONS for url=/PERMISSIONS/... 
<li> 
hudson.model.View.CREATE for url=/CREATE/... 
<li> 
hudson.model.View.DELETE for url=/DELETE/... 
<li> 
hudson.model.View.CONFIGURE for url=/CONFIGURE/... 
<li> 
hudson.model.View.READ for url=/READ/... 
<li> 
hudson.model.View.NEW_PRONOUN for url=/NEW_PRONOUN/... 
<li> 
hudson.model.Saveable.NOOP for url=/NOOP/... 
<li> 
hudson.model.ListView.getJobFilters() for url=/jobFilters/... 
<li> 
hudson.model.ListView.getIncludeRegex() for url=/includeRegex/... 
<li> 
hudson.model.ListView.getStatusFilter() for url=/statusFilter/... 
<li> 
hudson.model.ListView.getDefaultColumns() for url=/defaultColumns/... 
<li> 
hudson.model.ListView.getItems() for url=/items/... 
<li> 
hudson.model.ListView.getItems() for url=/items/... 
<li> 
hudson.model.ListView.getColumns() for url=/columns/... 
<li> 
hudson.model.ListView.getColumns() for url=/columns/... 
<li> 
hudson.model.View.getDescriptor() for url=/descriptor/... 
<li> 
hudson.model.View.getDescriptor() for url=/descriptor/... 
<li> 
hudson.model.View.getProperties() for url=/properties/... 
<li> 
hudson.model.View.getActions() for url=/actions/... 
<li> 
hudson.model.View.getOwner() for url=/owner/... 
<li> 
hudson.model.View.getDisplayName() for url=/displayName/... 
<li> 
hudson.model.View.getDescription() for url=/description/... 
<li> 
hudson.model.View.getUrl() for url=/url/... 
<li> 
hudson.model.View.getTimeline() for url=/timeline/... 
<li> 
hudson.model.View.getBuilds() for url=/builds/... 
<li> 
hudson.model.View.getOwnerItemGroup() for url=/ownerItemGroup/... 
<li> 
hudson.model.View.getOwnerPrimaryView() for url=/ownerPrimaryView/... 
<li> 
hudson.model.View.getOwnerViewActions() for url=/ownerViewActions/... 
<li> 
hudson.model.View.getAllProperties() for url=/allProperties/... 
<li> 
hudson.model.View.getNewPronoun() for url=/newPronoun/... 
<li> 
hudson.model.View.getQueueItems() for url=/queueItems/... 
<li> 
hudson.model.View.getPostConstructLandingPage() for url=/postConstructLandingPage/... 
<li> 
hudson.model.View.getItemCreatePermission() for url=/itemCreatePermission/... 
<li> 
hudson.model.View.getAbsoluteUrl() for url=/absoluteUrl/... 
<li> 
hudson.model.View.getAsynchPeople() for url=/asynchPeople/... 
<li> 
hudson.model.View.getPeople() for url=/people/... 
<li> 
hudson.model.View.getApi() for url=/api/... 
<li> 
hudson.model.View.getComputers() for url=/computers/... 
<li> 
hudson.model.View.getSearchUrl() for url=/searchUrl/... 
<li> 
hudson.model.View.getACL() for url=/aCL/... 
<li> 
hudson.model.View.getApplicablePropertyDescriptors() for url=/applicablePropertyDescriptors/... 
<li> 
hudson.model.View.getWidgets() for url=/widgets/... 
<li> 
hudson.model.View.getViewName() for url=/viewName/... 
<li> 
hudson.model.View.getApproximateQueueItemsQuickly() for url=/approximateQueueItemsQuickly/... 
<li> 
hudson.model.View.getViewUrl() for url=/viewUrl/... 
<li> 
hudson.model.View.getIndenter() for url=/indenter/... 
<li> 
hudson.model.AbstractModelObject.getSearchIndex() for url=/searchIndex/... 
<li> 
hudson.model.AbstractModelObject.getSearchName() for url=/searchName/... 
<li> 
hudson.model.AbstractModelObject.getSearch() for url=/search/... 
<li> 
java.lang.Object.getClass() for url=/class/... 
<li> 
hudson.model.View.getItem(String) for url=/item/TOKEN/... 
<li> 
hudson.model.View.getDynamic(String) for url=/dynamic/TOKEN/... 
<li> 
hudson.model.View.getJob(String) for url=/job/TOKEN/... 
<li> 
hudson.model.View.getDynamic(String,StaplerRequest,StaplerResponse) for url=/TOKEN/... 
</ol> 
</body></html> 
</div> 

답변

0

"SpecialView"라는 이름의보기에서 작업을 구성하는 동안 위의 아약스를 발사 할 때는 내가 받고 있어요 응답은 이것이다 오류. 에 요청 URL을 변경하여 : 그러나, 그것은 모든 뷰에서 일하고 지금

new Ajax.Request("descriptorByName/com.mycompany.jenkins.ScriptExecutionBuilder/getParameters", { 

, 난 여전히 어떻게 그리고 왜 이해하지 않는, 정말 내가

위 묻는 질문의 답변을 부탁드립니다